import { IMessage } from '../message'; export interface IHandleMessage { handle({ message }: CallbackOptions): void; } export interface MessageSubscription { unsubscribe(): any; } export interface IMessageHandlerContext { publish(message: V): void; } export interface CallbackOptions { message: T; context: IMessageHandlerContext; } export declare abstract class Logger { abstract error(message?: any, ...optionalParams: any[]): void; abstract log(message?: any, ...optionalParams: any[]): void; abstract warn(message?: any, ...optionalParams: any[]): void; } export interface PubsubSubscription { unsubscribe(): void; }