import { Topic } from "./Topic"; export declare enum BroadcastTopicScopes { localUi = "localUi", localWorker = "localWorker", localAll = "localAll", globalUi = "globalUi", globalWorker = "globalWorker", globalAll = "globalAll" } export interface BroadcastTopic extends Topic { scope: BroadcastTopicScopes; } export interface BroadcastInvokeTopic extends Topic { scope: BroadcastTopicScopes; } export interface BroadcastMessage extends BroadcastTopic { message: TMessage; } export interface BroadcastInvokeMessage extends BroadcastInvokeTopic { messageId: string; message: TMessage; type: "request" | "response"; error?: string; response?: TReturnValue; }