> ## Documentation Index
> Fetch the complete documentation index at: https://laminar.sh/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# TypeScript Types

## LaminarSpanContext

```typescript theme={null}
interface LaminarSpanContext {
  traceId: string; // UUID
  spanId: string;  // UUID
  isRemote: boolean;
  spanPath?: string[];
  spanIdsPath?: string[];
  userId?: string;
  sessionId?: string;
  rolloutSessionId?: string;
  metadata?: Record<string, any>;
  traceType?: TraceType;
  tracingLevel?: TracingLevel;
}
```

***

## RolloutParam

```typescript theme={null}
interface RolloutParam {
  name: string;
  type?: string;
  required?: boolean;
  nested?: RolloutParam[];
  default?: string;
}
```

***

## LanguageModelTextBlock

```typescript theme={null}
interface LanguageModelTextBlock {
  type: 'text';
  text: string;
}
```

***

## LanguageModelToolDefinitionOverride

```typescript theme={null}
interface LanguageModelToolDefinitionOverride {
  name: string;
  description?: string;
  parameters?: Record<string, any>;
}
```

***

## RolloutRunEvent

```typescript theme={null}
interface RolloutRunEvent {
  event_type: 'run';
  data: {
    trace_id?: string;
    path_to_count?: Record<string, number>;
    args: Record<string, any> | any[];
    overrides?: Record<
      string,
      {
        system?: string | LanguageModelTextBlock[];
        tools?: LanguageModelToolDefinitionOverride[];
      }
    >;
  };
}
```

***

## RolloutHandshakeEvent

```typescript theme={null}
interface RolloutHandshakeEvent {
  event_type: 'handshake';
  data: {
    session_id: string;
    project_id: string;
  };
}
```

***

## Datapoint

```typescript theme={null}
interface Datapoint<D = Record<string, any>, T = Record<string, any>> {
  data: D;
  target?: T;
  metadata?: Record<string, any>;
  id?: string;        // UUID
  createdAt?: string; // ISO timestamp
}
```

***

## HumanEvaluator

```typescript theme={null}
class HumanEvaluator {
  constructor(options?: { value: number; label: string }[]);
}
```

***

## LaminarDataset

```typescript theme={null}
class LaminarDataset<D = Record<string, any>, T = Record<string, any>> {
  constructor(name?: string, options?: { id?: string; fetchSize?: number });
}
```

***

## SessionRecordingOptions

```typescript theme={null}
interface SessionRecordingOptions {
  maskInputOptions?: MaskInputOptions;
}
```

***

## MaskInputOptions

```typescript theme={null}
interface MaskInputOptions {
  textarea?: boolean;
  text?: boolean;
  number?: boolean;
  select?: boolean;
  email?: boolean;
  tel?: boolean;
}
```

***

## Other Exports

* `ChatMessage` — Chat message type
* `NodeInput` — Node input type
* `Event` — Event type
* `Dataset` — Alias for `EvaluationDataset`
* `Span` — Re-export of OTel Span
