/** * Severity levels of {@link CollectedLogs} * @public */ export type LogFuncs = 'log' | 'warn' | 'error'; /** * AsyncLogCollector type used in {@link (withLogCollector:1)} callback function. * @public */ export type AsyncLogCollector = () => Promise; /** * SyncLogCollector type used in {@link (withLogCollector:2)} callback function. * @public */ export type SyncLogCollector = () => void; /** * Union type used in {@link (withLogCollector:3)} callback function. * @public */ export type LogCollector = AsyncLogCollector | SyncLogCollector; /** * Map of severity level and corresponding log lines. * @public */ export type CollectedLogs = { [key in T]: string[]; }; /** * Asynchronous log collector with that collects all categories * @public */ export declare function withLogCollector(callback: AsyncLogCollector): Promise>; /** * Synchronous log collector with that collects all categories * @public */ export declare function withLogCollector(callback: SyncLogCollector): CollectedLogs; /** * Asynchronous log collector with that only collects selected categories * @public */ export declare function withLogCollector(logsToCollect: T[], callback: AsyncLogCollector): Promise>; /** * Synchronous log collector with that only collects selected categories * @public */ export declare function withLogCollector(logsToCollect: T[], callback: SyncLogCollector): CollectedLogs;