UNPKG

@aegisai/opik

Version:

Opik TypeScript and JavaScript SDK

48 lines (45 loc) 1.51 kB
import { AttributeValue, Tracer } from '@opentelemetry/api'; import { NodeSDKConfiguration } from '@opentelemetry/sdk-node'; import { O as OpikClient, S as Span, T as Trace } from '../Client-C3O8H4SX.cjs'; import 'stream'; type SpanExporter = NodeSDKConfiguration["traceExporter"]; type ExportFunction = SpanExporter["export"]; type ReadableSpan = Parameters<ExportFunction>[0][0]; type TelemetrySettings = { isEnabled?: boolean; recordInputs?: boolean; recordOutputs?: boolean; functionId?: string; metadata?: Record<string, AttributeValue>; tracer?: Tracer; }; type OpikExporterSettings = TelemetrySettings & { name?: string; }; type OpikExporterOptions = { client?: OpikClient; tags?: string[]; metadata?: Record<string, AttributeValue>; }; declare class OpikExporter implements SpanExporter { private readonly traces; private readonly spans; private readonly client; private readonly tags; private readonly metadata; constructor({ client, tags, metadata, }?: OpikExporterOptions); private getSpanInput; private getSpanOutput; private getSpanMetadata; private getSpanUsage; processSpan: ({ otelSpan, parentSpan, trace, }: { otelSpan: ReadableSpan; parentSpan?: Span; trace: Trace; }) => Span; shutdown: () => Promise<void>; forceFlush: () => Promise<void>; export: ExportFunction; static getSettings(settings: OpikExporterSettings): TelemetrySettings; } export { OpikExporter };