/// import type { AsyncLocalStorage } from 'async_hooks'; export declare type Writer = { write: (message: string) => void; }; export declare type MessageContext = any; export declare type RoarrGlobalState = Writer & { asyncLocalStorage?: AsyncLocalStorage; sequence: number; versions: readonly string[]; }; export declare type SprintfArgument = boolean | number | string | null; export declare type Message = { readonly context: MessageContext; readonly message: string; readonly sequence: string; readonly time: number; readonly version: string; }; export declare type TranslateMessageFunction = (message: Message) => Message; export declare type LogMethod = { (context: MessageContext, message: string, c?: SprintfArgument, d?: SprintfArgument, e?: SprintfArgument, f?: SprintfArgument, g?: SprintfArgument, h?: SprintfArgument, i?: SprintfArgument, j?: SprintfArgument): void; (message: string, b?: SprintfArgument, c?: SprintfArgument, d?: SprintfArgument, e?: SprintfArgument, f?: SprintfArgument, g?: SprintfArgument, h?: SprintfArgument, i?: SprintfArgument, j?: SprintfArgument): void; }; export declare type Logger = LogMethod & { adopt: (routine: () => Promise, context: MessageContext) => Promise; child: (context: MessageContext | TranslateMessageFunction) => Logger; debug: LogMethod; error: LogMethod; fatal: LogMethod; getContext: () => MessageContext; info: LogMethod; trace: LogMethod; warn: LogMethod; }; export declare type MessageEventHandler = (message: Message) => void;