import { Token, ObjectMap } from '../types'; import { ILoggerManger } from './ILoggerManger'; import { ILogger } from './ILogger'; import { Joinpoint } from '../aop/index'; /** * log configure. * * @export * @interface LogConfigure */ export interface LogConfigure { /** * log adapter * * @type {Token)} * @memberof LogConfigure */ adapter: Token; /** * logger config options. * * @type {ObjectMap} * @memberof LogConfigure */ config?: ObjectMap; /** * format * * @memberof LogConfigure */ format?(joinPoint?: Joinpoint, logger?: ILogger): string; /** * format args. * * @param {Joinpoint} [joinPoint] * @param {ILogger} [logger] * @returns {any[]} * @memberof LogConfigure */ formatArgs?(joinPoint?: Joinpoint, logger?: ILogger): any[]; /** * custom format log message. * * @param {Joinpoint} joinPoint * @param {ILogger} logger * @memberof LogConfigure */ customFormat?(joinPoint: Joinpoint, logger: ILogger): any; }