import { LogPublisher } from '../types';
export declare enum LogLevel {
    INFO = "info",
    WARN = "warn",
    ERROR = "error",
    DEBUG = "debug"
}
export declare type LogEntry = {
    componentId: string;
    messages: [any];
    logLevel: LogLevel;
};
export default class Logger {
    private eventEmitter;
    private subscribers;
    createLogPublisher(extensionName: string): LogPublisher;
    subscribe(extensionName: string, cb: (LogEntry: any) => void): void;
    subscribeAll(cb: (LogEntry: any) => void): void;
    unsubscribe(extensionName: string): void;
}
