/** * SMI-739: OpenTelemetry Tracer Setup * SMI-755: Graceful fallback when OpenTelemetry unavailable * * Provides distributed tracing for Skillsmith operations. * * @see tracer-types.ts for type definitions * @see span-utils.ts for span wrapper classes */ export type { TracerConfig, SpanAttributes, SpanWrapper, Span, Tracer, SpanOptions, OTelApi, OTelNodeSDK, OTelResourceFromAttributes, } from './tracer-types.js'; import type { TracerConfig, SpanOptions, SpanWrapper } from './tracer-types.js'; /** * Skillsmith Tracer - Wrapper for OpenTelemetry tracing */ export declare class SkillsmithTracer { private tracer; private initialized; private enabled; private config; private sdkInstance; constructor(config?: TracerConfig); initialize(): Promise; isEnabled(): boolean; startSpan(name: string, options?: SpanOptions): SpanWrapper; withSpan(name: string, fn: (span: SpanWrapper) => Promise, options?: SpanOptions): Promise; withSpanSync(name: string, fn: (span: SpanWrapper) => T, options?: SpanOptions): T; getCurrentSpan(): SpanWrapper; shutdown(): Promise; } export declare function getTracer(): SkillsmithTracer; export declare function initializeTracing(config?: TracerConfig): Promise; export declare function shutdownTracing(): Promise; export declare function traced(spanName?: string): Promise>(target: unknown, propertyKey: string, descriptor: TypedPropertyDescriptor) => TypedPropertyDescriptor; //# sourceMappingURL=tracer.d.ts.map