> ## Documentation Index
> Fetch the complete documentation index at: https://tracevell.com/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;
  metadata?: Record<string, any>;
  traceType?: TraceType;
  tracingLevel?: TracingLevel;
  debug?: DebugContext;
}
```

***

## DebugContext

Debugger coordinates carried on a `LaminarSpanContext` so a downstream service joins the same debug session and replay window.

```typescript theme={null}
type DebugContext = {
  enabled: boolean;
  sessionId?: string;
  replayTraceId?: string;
  cacheUntil?: string;
};
```

***

## SessionBlock

One block in a [debugger](https://tracevell.com/docs/debugger/introduction.md) session, as returned by `client.rolloutSessions.listBlocks(...)`.

```typescript theme={null}
type SessionBlockType = "trace" | "evaluation" | "text" | "command";

interface TraceBlockContent {
  traceId: string;
  note?: string | null;
}

interface EvaluationBlockContent {
  evaluationId: string;
  note?: string | null;
}

interface TextBlockContent {
  text: string;
}

interface CommandBlockContent {
  command: string;
  args: string[];
  exitCode: number;
  output?: string | null;
  stderr?: string | null;
  reasoning?: string | null;
}

type SessionBlockContent =
  | TraceBlockContent
  | EvaluationBlockContent
  | TextBlockContent
  | CommandBlockContent;

interface SessionBlock {
  id: string;
  createdAt: string; // ISO-8601
  type: string; // one of SessionBlockType for known blocks
  content: Record<string, unknown>; // narrow with the *BlockContent interfaces
}
```

***

## 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
}
```

***

## 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


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.