import { TracerInterface } from "@pristine-ts/telemetry"; import { Readable } from "stream"; import { LogHandlerInterface } from "@pristine-ts/logging"; /** * Tracer to be able to dump Pristine traces to AWS X-Ray. * * The tracer is **always constructed** when `@pristine-ts/aws-xray` is in the import * graph — that's a structural requirement of the framework's tracer registration. To * disable export without removing the package, set the `pristine.aws-xray.activated` * configuration to `false` (or `PRISTINE_AWS_XRAY_ACTIVATED=false`). When deactivated, * the stream listener early-returns and the AWS X-Ray SDK is never touched. */ export declare class XrayTracer implements TracerInterface { private readonly debug; private readonly activated; private readonly loghandler; traceEndedStream: Readable; constructor(debug: boolean, activated: boolean, loghandler: LogHandlerInterface); /** * This method is called when the trace ends. * @param trace */ private traceEnded; /** * This method captures the spans recursively and creates the root segment. * @param span * @param segment * @private */ private captureSpan; }