import { CorrelationId } from './CorrelationId.js'; import { ICorrelationIdAccessor } from './ICorrelationIdAccessor.js'; import { ICorrelationIdSetter } from './ICorrelationIdSetter.js'; /** * Implements both {@link ICorrelationIdAccessor} and {@link ICorrelationIdSetter}, * using {@link AsyncLocalStorage} to scope the correlation identifier to the active async call context. */ export declare class CorrelationIdManager implements ICorrelationIdAccessor, ICorrelationIdSetter { private readonly _storage; /** @inheritdoc */ get current(): CorrelationId; /** The explicitly scoped identifier, without generating an identifier when no scope exists. */ get scoped(): CorrelationId | undefined; /** Runs an async or synchronous operation with a correlation id, restoring the caller afterward. */ run(correlationId: CorrelationId, callback: () => T): T; /** Runs work without inheriting a business correlation, restoring the caller afterward. */ runWithout(callback: () => T): T; /** @inheritdoc */ setCurrent(correlationId: CorrelationId): void; /** @inheritdoc */ clear(): void; } //# sourceMappingURL=CorrelationIdManager.d.ts.map