stokpile/src/types/logger.ts
2024-03-11 00:34:12 -05:00

53 lines
853 B
TypeScript

export enum LogLevel {
TRACE = 10,
DEBUG = 20,
INFO = 30,
WARN = 40,
FATAL = 50,
}
export enum LogLabel {
TRACE = "trace",
DEBUG = "debug",
INFO = "info",
WARN = "warn",
FATAL = "fatal",
}
export interface TampermonkeyOutputOpts {
enabled: boolean;
maxBuckets?: number;
bucketIndexKey?: string;
}
export interface ConsoleOutputOpts {
enabled: boolean;
}
export interface LogOutputs {
console?: ConsoleOutputOpts;
tampermonkey?: TampermonkeyOutputOpts;
callback: ((message: string) => any) | undefined;
}
export interface LogConfig {
outputs?: LogOutputs;
bufferCapacity?: number;
}
export interface LogContext {
level?: number;
[key: string]: any;
}
export interface LogMeta {
context: LogContext;
time: number;
}
export interface BucketInfo {
name: string;
size: number;
createdAt: number;
}