import { Context, ContextValue, UserConfiguration } from '@datadog/browser-core'; import { HandlerType, Logger, StatusType } from './logger'; import { startLogs } from './logs'; export interface LogsUserConfiguration extends UserConfiguration { forwardErrorsToLogs?: boolean; } export interface LoggerConfiguration { level?: StatusType; handler?: HandlerType; context?: Context; } export declare type Status = keyof typeof StatusType; export declare type LogsGlobal = ReturnType; export declare const datadogLogs: { logger: Logger; init: (userConfiguration: LogsUserConfiguration) => void; setLoggerGlobalContext: (newContext: Context) => void; addLoggerGlobalContext: (key: string, value: ContextValue) => void; removeLoggerGlobalContext: (key: string) => void; createLogger: (name: string, conf?: LoggerConfiguration) => Logger; getLogger: (name: string) => Logger | undefined; } & { onReady(callback: () => void): void; }; export declare type StartLogs = typeof startLogs; export declare function makeLogsGlobal(startLogsImpl: StartLogs): { logger: Logger; init: (userConfiguration: LogsUserConfiguration) => void; setLoggerGlobalContext: (newContext: Context) => void; addLoggerGlobalContext: (key: string, value: ContextValue) => void; removeLoggerGlobalContext: (key: string) => void; createLogger: (name: string, conf?: LoggerConfiguration) => Logger; getLogger: (name: string) => Logger | undefined; } & { onReady(callback: () => void): void; };