tsvesync
Version:
A TypeScript library for interacting with VeSync smart home devices
43 lines (42 loc) • 1.21 kB
TypeScript
/**
* Logger module for VeSync library
*/
export declare enum LogLevel {
DEBUG = 0,
INFO = 1,
WARN = 2,
ERROR = 3,
NONE = 4
}
export interface Logger {
debug: (message: string, ...args: any[]) => void;
info: (message: string, ...args: any[]) => void;
warn: (message: string, ...args: any[]) => void;
error: (message: string, ...args: any[]) => void;
setLevel?: (level: LogLevel) => void;
getLevel?: () => LogLevel | undefined;
}
/**
* Set a custom logger implementation
* @param customLogger - Custom logger implementation
*/
export declare function setLogger(customLogger: Logger): void;
/**
* Reset to default logger
*/
export declare function resetLogger(): void;
/**
* Get the current logger instance
*/
export declare function getLogger(): Logger;
/**
* Set the log level (only works with default logger)
* @param level - The log level to set
*/
export declare function setLogLevel(level: LogLevel): void;
/**
* Get the current log level (only works with default logger)
* @returns The current log level or undefined if using custom logger
*/
export declare function getLogLevel(): LogLevel | undefined;
export declare const logger: Logger;