import { SpanRecord, TraceExporter } from "./types.js"; //#region src/exporters/otlp-http.d.ts /** * Configuration shape for {@link createOTLPHttpExporter}. * * @stable */ interface OTLPHttpExporterOptions { /** Identifier reported via `exporter.id`. Defaults to `'otlp-http'`. */ readonly id?: string; /** OTLP collector URL (e.g. `http://localhost:4318/v1/traces`). */ readonly url: string; /** Optional headers (auth, tenant id, …). Avoid passing secrets in plain. */ readonly headers?: Readonly>; /** Service name embedded in the OTLP `Resource`. */ readonly serviceName?: string; /** Optional `fetch` override - useful for testing without the network. */ readonly fetchImpl?: typeof fetch; /** Optional timeout (ms). Defaults to 10000. */ readonly timeoutMs?: number; } /** * Build a minimal OTLP-over-HTTP trace exporter. Call * `withValidation(exporter)` before passing the result to * `createTracer({ exporters })`. * * The implementation issues one `POST` per finished span - no * batching. Operators wanting batching should wrap this exporter * with their own queue or use a sidecar collector. * * @stable */ declare function createOTLPHttpExporter(opts: OTLPHttpExporterOptions): TraceExporter; /** * Convert a finished {@link SpanRecord} into an OTLP-HTTP `resourceSpans` * envelope. Exposed so an upstream OTel SDK pipeline can adapt * Graphorin spans inside its own exporter, as the observability and migration * guides document. * * @stable */ declare function toOtlpEnvelope(record: SpanRecord, serviceName: string): unknown; //#endregion export { OTLPHttpExporterOptions, createOTLPHttpExporter, toOtlpEnvelope }; //# sourceMappingURL=otlp-http.d.ts.map