import type { Extension, onChangePayload, onConfigurePayload, onConnectPayload, onLoadDocumentPayload, onDestroyPayload, onDisconnectPayload, onRequestPayload, onUpgradePayload } from "@hocuspocus/server"; export interface LoggerConfiguration { /** * Prepend all logging message with a string. * * @deprecated */ prefix: null | string; /** * Whether to log something for the `onLoadDocument` hook. */ onLoadDocument: boolean; /** * Whether to log something for the `onChange` hook. */ onChange: boolean; /** * Whether to log something for the `onStoreDocument` hook. */ onStoreDocument: boolean; /** * Whether to log something for the `onConnect` hook. */ onConnect: boolean; /** * Whether to log something for the `onDisconnect` hook. */ onDisconnect: boolean; /** * Whether to log something for the `onUpgrade` hook. */ onUpgrade: boolean; /** * Whether to log something for the `onRequest` hook. */ onRequest: boolean; /** * Whether to log something for the `onDestroy` hook. */ onDestroy: boolean; /** * Whether to log something for the `onConfigure` hook. */ onConfigure: boolean; /** * A log function, if none is provided output will go to console */ log: (...args: any[]) => void; } export declare class Logger implements Extension { name: string | null; configuration: LoggerConfiguration; /** * Constructor */ constructor(configuration?: Partial); onConfigure(data: onConfigurePayload): Promise; onLoadDocument(data: onLoadDocumentPayload): Promise; onChange(data: onChangePayload): Promise; onStoreDocument(data: onDisconnectPayload): Promise; onConnect(data: onConnectPayload): Promise; onDisconnect(data: onDisconnectPayload): Promise; onUpgrade(data: onUpgradePayload): Promise; onRequest(data: onRequestPayload): Promise; onDestroy(data: onDestroyPayload): Promise; private log; }