export interface TraceSpan { setAttribute(key: string, value: string | number | boolean): void; addEvent(name: string, attributes?: Record): void; setStatus(ok: boolean, message?: string): void; end(): void; } export interface Tracer { startSpan(name: string, attributes?: Record, parent?: TraceSpan): TraceSpan; } export declare class TraceRegistry { private tracer; private redactor; setTracer(tracer: Tracer | 'console'): void; setTraceRedactor(fn: (text: string) => string): void; getTracer(): Tracer; redactMessage(text: string): string; } export declare function setTracer(tracer: Tracer | 'console'): void; export declare function setTraceRedactor(fn: (text: string) => string): void; export declare function getTracer(): Tracer; export declare function withSpan(name: string, attributes: Record | undefined, fn: (span: TraceSpan) => Promise, parent?: TraceSpan): Promise; export declare function turnAttributes(runId: string, turn: number, model: string): Record; export declare function toolAttributes(runId: string, toolName: string, toolCallId: string): Record; export declare function llmRequestAttributes(runId: string, model: string, inputTokens: number): Record; //# sourceMappingURL=tracing.d.ts.map