import type winston from 'winston'; /** * 等待 Winston 及底层文件流完成刷新,使应用退出时已接收的日志不会静默丢失。 * * 详细设计: * 1. 启动时收集仍打开的底层文件流,因为 Winston 的 finish 事件可能早于轮转流真正 close。 * 2. 同时监听日志器、传输和文件流的完成或错误信号,并以 loggerFinished 与 pendingStreams 作为联合完成条件。 * 3. 所有成功、错误和超时路径都经过单次 settle,先清理计时器与监听器再结算 Promise,避免竞态重复回调和资源泄漏。 * * @param logger 待关闭的 Winston 日志器。 * @param transports 需要同步观察错误和文件流状态的传输列表。 * @param timeout 允许刷新和关闭的最长毫秒数。 * @returns 日志器和底层流均完成关闭后的 Promise。 * @throws 返回的 Promise 会在超时、日志器错误、传输错误或同步关闭失败时拒绝。 */ export declare function shutdownWinstonLogger(logger: winston.Logger, transports: readonly winston.transport[], timeout: number): Promise; //# sourceMappingURL=shutdown.d.ts.map