import type { AttributeValue, Meter, Span, Tracer } from "@opentelemetry/api"; import { Effect } from "effect"; import type { OtelConfig, SpanOptions, SpanStatus } from "./types.js"; declare const OtelService_base: Effect.Service.Class Effect.Effect; shutdown: () => Effect.Effect; startSpan: (name: string, options?: SpanOptions) => Effect.Effect; endSpan: (span: Span, status?: SpanStatus) => Effect.Effect; addEvent: (span: Span, name: string, attributes?: Record) => Effect.Effect; recordException: (span: Span, exception: Error, attributes?: Record) => Effect.Effect; recordCounter: (name: string, value: number, attributes?: Record) => Effect.Effect; recordHistogram: (name: string, value: number, attributes?: Record) => Effect.Effect; recordGauge: (name: string, value: number, attributes?: Record) => Effect.Effect; traceSpan: (name: string, fn: () => Promise, options?: SpanOptions) => Effect.Effect; traceSpanSync: (name: string, fn: () => A, options?: SpanOptions) => Effect.Effect; getTracer: () => Tracer; getMeter: () => Meter; getLogger: () => typeof console; }, never, never>; }>; export declare class OtelService extends OtelService_base { } export {}; //# sourceMappingURL=service.d.ts.map