import { TraceContext, ExecutionLogger, ExecutionLoggerOptions } from 'autotel-edge/logger';

interface WorkersLoggerOptions {
    /** Override derived request id (default: cf-ray header value when present). */
    requestId?: string;
    /** Optional request header allowlist to include in logger context. */
    headers?: string[];
}
/**
 * Create an execution logger pre-populated with common request context.
 * Best used from fetch handlers that already run inside autotel span context.
 */
declare function createWorkersLogger(request: Request, options?: WorkersLoggerOptions, ctx?: TraceContext): ExecutionLogger;
declare function getRequestLogger(ctx?: TraceContext, options?: ExecutionLoggerOptions): ExecutionLogger;
declare function getQueueLogger(ctx?: TraceContext, options?: ExecutionLoggerOptions): ExecutionLogger;
declare function getWorkflowLogger(ctx?: TraceContext, options?: ExecutionLoggerOptions): ExecutionLogger;
declare function getActorLogger(ctx?: TraceContext, options?: ExecutionLoggerOptions): ExecutionLogger;

export { type WorkersLoggerOptions as W, getQueueLogger as a, getRequestLogger as b, createWorkersLogger as c, getWorkflowLogger as d, getActorLogger as g };
