import { Configuration } from './configuration'; import * as utils from './utils'; declare enum StatusType { info = "info", error = "error" } export interface InternalMonitoring { setExternalContextProvider: (provider: () => utils.Context) => void; } export interface MonitoringMessage extends utils.Context { message: string; status: StatusType; error?: { kind?: string; stack: string; }; } export declare function startInternalMonitoring(configuration: Configuration): InternalMonitoring; export declare function resetInternalMonitoring(): void; export declare function monitored(_: any, __: string, descriptor: PropertyDescriptor): void; export declare function monitor(fn: T): T; export declare function addMonitoringMessage(message: string, context?: utils.Context): void; export declare function setDebugMode(debugMode: boolean): void; export {};