/** * HTTP propagation helpers for Effect tracing context. * * This module converts Effect `Tracer.Span` values into outbound trace headers * and decodes inbound propagation headers into `Tracer.ExternalSpan` parents. * HTTP clients use it to continue the current span across outgoing requests, and * server middleware uses it to parent request spans from upstream services. * * @stability unstable * @since 4.0.0 */ import * as Option from "../Option.ts"; import * as Tracer from "../Tracer.ts"; import * as Headers from "./Headers.ts"; /** * Function type for decoding tracing headers into an external span. * * **Details** * * Returns `Option.none` when the headers do not contain a supported or valid trace * context. * * @stability unstable * @category models * @since 4.0.0 */ export interface FromHeaders { (headers: Headers.Headers): Option.Option; } /** * Encodes a span into HTTP trace propagation headers. * * **Details** * * The generated headers include both compact B3 (`b3`) and W3C `traceparent` * formats. * * @stability unstable * @category encoding * @since 4.0.0 */ export declare const toHeaders: (span: Tracer.Span) => Headers.Headers; /** * Decodes an external span safely from HTTP trace propagation headers. * * **Details** * * W3C `traceparent` is tried first, followed by compact B3 (`b3`) and then * multi-header B3 (`x-b3-*`). * * @stability unstable * @category decoding * @since 4.0.0 */ export declare const fromHeaders: (headers: Headers.Headers) => Option.Option; /** * Decodes an external span safely from the compact B3 `b3` header. * * **Details** * * Returns `Option.none` when the header is missing or does not contain trace and * span identifiers. * * @stability unstable * @category decoding * @since 4.0.0 */ export declare const b3: FromHeaders; /** * Decodes an external span safely from multi-header B3 propagation headers. * * **Details** * * The decoder reads `x-b3-traceid`, `x-b3-spanid`, and optional `x-b3-sampled` * and `x-b3-flags` headers. Debug flags override the sampling decision. * * @stability unstable * @category decoding * @since 4.0.0 */ export declare const xb3: FromHeaders; /** * Decodes an external span safely from the W3C `traceparent` header. * * **Details** * * Only version `00` headers with valid trace and span identifiers are accepted. * * @stability unstable * @category decoding * @since 4.0.0 */ export declare const w3c: FromHeaders; //# sourceMappingURL=HttpTraceContext.d.ts.map