declare global { namespace MdEditorLogger { type MetricsData = { component: string; event: string; duration?: number; meta?: Record; }; interface ActionData { action: string; source: string; [key: string]: any; } interface Logger { log(...data: any[]): void; info(...data: any[]): void; error(...data: any[]): void; warn(...data: any[]): void; metrics(data: MetricsData): void; action(data: ActionData): void; } interface Settings extends Partial { } } } declare class Logger implements MdEditorLogger.Logger { #private; get log(): (...data: any[]) => void; get info(): (...data: any[]) => void; get error(): (...data: any[]) => void; get warn(): (...data: any[]) => void; get metrics(): (data: MdEditorLogger.MetricsData) => void; get action(): (data: MdEditorLogger.ActionData) => void; setLogger(settings?: MdEditorLogger.Settings): void; /** * @inner * * To override the default logger, use setLogger */ createLogger(settings: MdEditorLogger.Settings): MdEditorLogger.Logger; } export declare const logger: Logger; export {};