UNPKG

1.32 kBTypeScriptView Raw
1import { LogLevel } from './LogLevel';
2interface BindTarget {
3 [key: string]: Function;
4}
5export interface UnknownFactoryLevels extends Record<Uppercase<string>, number> {
6 SILENT: number;
7}
8export interface Factory {
9 [key: string]: any;
10 bindMethod: (obj: BindTarget, methodName: string) => any;
11 distillLevel: (level: number | string) => any;
12 levelValid: (level: number | string) => boolean;
13 levels: UnknownFactoryLevels;
14 logger: LogLevel;
15 make: (methodName: string) => Function;
16 methods?: string[];
17 replaceMethods: (logLevel: number | string) => void;
18}
19declare const BaseLevels: {
20 TRACE: number;
21 DEBUG: number;
22 INFO: number;
23 WARN: number;
24 ERROR: number;
25 SILENT: number;
26};
27export declare type MethodFactoryLevels = Lowercase<keyof typeof BaseLevels>;
28export declare class MethodFactory implements Factory {
29 constructor(logger?: LogLevel);
30 get levels(): typeof BaseLevels;
31 get logger(): LogLevel;
32 set logger(logger: LogLevel);
33 get methods(): string[];
34 bindMethod(obj: BindTarget, methodName: string): any;
35 distillLevel(level: number | string): string | number | null;
36 levelValid(level: number | string): boolean;
37 make(methodName: string): Function;
38 replaceMethods(logLevel: number | string): void;
39}
40export {};