porter-source
Version:
Messaging Library for Web Extensions
45 lines (44 loc) • 1.27 kB
TypeScript
import { Runtime } from 'webextension-polyfill';
declare function isServiceWorker(): boolean;
declare function isValidPort(port: Runtime.Port): port is Runtime.Port & {
sender: Runtime.MessageSender & {
tab: {
id: number;
};
frameId: number;
};
};
declare function isValidSender(sender: Runtime.MessageSender): sender is Runtime.MessageSender & {
tab: {
id: number;
};
frameId: number;
};
export declare enum LogLevel {
ERROR = 0,
WARN = 1,
INFO = 2,
DEBUG = 3,
TRACE = 4
}
export interface LoggerOptions {
level?: LogLevel;
enabled?: boolean;
}
export declare class Logger {
private context;
private static level;
private static enabled;
private static instances;
private static globalOptions?;
private static getLevel;
static configure(options: LoggerOptions): void;
static getLogger(context: string): Logger;
private constructor();
error(message: string, ...args: any[]): void;
warn(message: string, ...args: any[]): void;
info(message: string, ...args: any[]): void;
debug(message: string, ...args: any[]): void;
trace(message: string, ...args: any[]): void;
}
export { isValidPort, isValidSender, isServiceWorker };