UNPKG

web-push-notifications

Version:
45 lines (44 loc) 1.49 kB
export type TLoggerLevelSilent = 'silent'; export type TLoggerLevelFatal = 'fatal'; export type TLoggerLevelError = 'error'; export type TLoggerLevelWarn = 'warn'; export type TLoggerLevelInfo = 'info'; export type TLoggerLevelDebug = 'debug'; export type TLoggerFromSDK = 'sdk'; export type TLoggerFromCP = 'cp'; export type TLoggerApplicationType = TLoggerFromSDK | TLoggerFromCP; export type TLoggerOutputLevels = TLoggerLevelFatal | TLoggerLevelError | TLoggerLevelWarn | TLoggerLevelInfo | TLoggerLevelDebug; export type TLoggerLevels = TLoggerLevelSilent | TLoggerOutputLevels; export interface ILoggerLogOptions { handler?: TLoggerHandler; [key: string]: any; } export interface ILoggerLogParams { type: TLoggerOutputLevels; text: string; code?: string | number; options?: ILoggerLogOptions; } export type TLoggerHandler = (message: ILoggerMessage) => void | Promise<void>; export interface ILoggerSubscriber { handler: TLoggerHandler; level: TLoggerOutputLevels; } export interface ILoggerMessage { type: TLoggerOutputLevels; text: string; applicationType: TLoggerApplicationType; code?: string | number; applicationCode?: string; domain?: string; deviceInfo?: { [key: string]: any; }; [key: string]: any; } export interface ILoggerConfig { level?: TLoggerLevels; applicationType?: TLoggerApplicationType; subscribers?: ILoggerSubscriber[]; } export type TReject = (reason: Error) => void;