import type { Context, SpanOptions, Tracer } from "@opentelemetry/api"; import { OISpan } from "./OISpan"; import type { TraceConfigOptions } from "./types"; /** * A wrapper around the OpenTelemetry {@link Tracer} interface that masks sensitive information based on the passed in {@link TraceConfig}. */ export declare class OITracer implements Tracer { private readonly tracer; private readonly config; /** * @param params - The parameters for the OITracer constructor * @param params.tracer - The OpenTelemetry {@link Tracer} to wrap * @param params.traceConfig - The {@link TraceConfigOptions} to set to control the behavior of the tracer */ constructor({ tracer, traceConfig }: { tracer: Tracer; traceConfig?: TraceConfigOptions; }); startActiveSpan unknown>(name: string, fn: F): ReturnType; startActiveSpan unknown>(name: string, options: SpanOptions, fn: F): ReturnType; startActiveSpan unknown>(name: string, options: SpanOptions, context: Context, fn: F): ReturnType; startSpan(name: string, options?: SpanOptions, context?: Context): OISpan; } //# sourceMappingURL=OITracer.d.ts.map