import { LoggerFactory } from "./LoggerFactory"; import { Logger } from "./Logger"; export type ContextLogger = (defaultLogger?: Logger) => Logger | undefined; /** 日志代理 */ export interface LoggerProxy { readonly loggerFactory: LoggerFactory; /** 代理类上的函数,包括:静态函数、实例成员函数、实例变量函数。 */ proxyClass(clazz: T): T; /** 代理实例上的函数,包括:实例成员函数、实例变量函数。 */ proxyInstance(instance: T, category?: string): T; /** 代理指定函数,包括:函数本身和函数上的静态函数。 */ proxyFunction(func: T, category?: string): T; } declare class NoopLoggerProxy implements LoggerProxy { loggerFactory: LoggerFactory; constructor(loggerFactory: LoggerFactory); proxyClass(clazz: T): T; proxyInstance(instance: T, _category?: string): T; proxyFunction(func: T, _category?: string): T; } export declare const noopLoggerProxy: NoopLoggerProxy; export {};