import type { TransportRecord, TransportTarget, TransportOptions, ITransport, ITransportManager, LogLevel } from '../types/index.js'; /** * Constructor signature for transports registered in the built-in registry. * Accepts the transport's own options type; pass-through is enforced at * registration time via TypeScript but erased at runtime. */ export type TransportConstructor = new (options?: TransportOptions) => ITransport; export declare class TransportManager implements ITransportManager { private transports; private defaultLevel; private readonly registry; constructor(defaultLevel?: LogLevel); /** * Registers a custom transport under a string name. Once registered, * `addTransport({ target: 'name', options })` instantiates it. * * @example * transportManager.register('datadog', DatadogTransport); * transportManager.add({ target: 'datadog', options: { apiKey: env('DD_KEY') } }); * */ register(name: string, ctor: TransportConstructor): void; /** * Lists all registered transport names (built-ins + custom). * */ listRegistered(): string[]; add(target: TransportTarget): string; remove(id: string): boolean; write(record: TransportRecord): Promise; flush(): Promise; close(): Promise; get count(): number; list(): string[]; } //# sourceMappingURL=TransportManager.d.ts.map