import { Event } from '../../../util/vs/base/common/event'; import type { OTelConfig } from './otelConfig'; import type { ICompletedSpanData, IOTelService, ISpanEventData, ISpanHandle, SpanOptions, TraceContext } from './otelService'; /** * No-op implementation of IOTelService. * All methods are zero-cost when OTel is disabled. */ export declare class NoopOTelService implements IOTelService { readonly _serviceBrand: undefined; readonly config: OTelConfig; constructor(config: OTelConfig); startSpan(_name: string, _options?: SpanOptions): ISpanHandle; startActiveSpan(_name: string, _options: SpanOptions, fn: (span: ISpanHandle) => Promise): Promise; getActiveTraceContext(): TraceContext | undefined; storeTraceContext(_key: string, _context: TraceContext): void; getStoredTraceContext(_key: string): TraceContext | undefined; runWithTraceContext(_traceContext: TraceContext, fn: () => Promise): Promise; recordMetric(_name: string, _value: number, _attributes?: Record): void; incrementCounter(_name: string, _value?: number, _attributes?: Record): void; emitLogRecord(_body: string, _attributes?: Record): void; flush(): Promise; shutdown(): Promise; injectCompletedSpan(_span: ICompletedSpanData): void; readonly onDidCompleteSpan: Event; readonly onDidEmitSpanEvent: Event; } //# sourceMappingURL=noopOtelService.d.ts.map