import { type Attributes, type Span, type SpanContext, type Tracer } from '@opentelemetry/api'; import type { PrometheusExporter } from '@opentelemetry/exporter-prometheus'; import type { registerInstrumentations } from '@opentelemetry/instrumentation'; import type { MeterProvider } from '@opentelemetry/sdk-metrics'; import type { NodeTracerProvider } from '@opentelemetry/sdk-trace-node'; type MaybePromise = T | Promise; export declare const OtelState: { initialized: boolean; tracer: Tracer | undefined; tracerProvider: NodeTracerProvider | undefined; meterProvider: MeterProvider | undefined; prometheusExporter: PrometheusExporter | undefined; pyroscope: { stop(): Promise; } | undefined; unregisterInstrumentations: ReturnType | undefined; metricsEndpointEnabled: boolean; metricsEndpointPreference: boolean | undefined; readonly installed: boolean; }; export declare function isTelemetryInitialized(): boolean; export declare function isTracingInstalled(): boolean; export declare function getTracer(): Tracer | undefined; export declare function getActiveSpan(): Span | undefined; export declare function getTraceContext(): SpanContext | undefined; export declare function disableActiveTrace(): void; export type SpanInfo = { traceId: string; spanId: string; traceFlags?: number; } | { traceparent: string; } | undefined; export declare function withRemoteSpan(name: string, spanInfo: SpanInfo, attrs: Attributes | undefined, fn: () => MaybePromise): Promise; export declare function withSpan(name: string, fn: () => MaybePromise): Promise; export declare function withSpan(name: string, attrs: Attributes | undefined, fn: () => MaybePromise): Promise; export declare function withRootSpan(name: string, fn: () => MaybePromise): Promise; export declare function withRootSpan(name: string, attrs: Attributes | undefined, fn: () => MaybePromise): Promise; export type SpanLinkRef = { traceId: string; spanId: string; traceFlags?: number; attributes?: Attributes; }; export declare function withLinkedRootSpan(name: string, links: SpanLinkRef[], attrs: Attributes | undefined, fn: () => MaybePromise): Promise; export declare function setSpanAttributes(attributes: Attributes): void; export {}; //# sourceMappingURL=helpers.d.ts.map