import { EventFired } from "../../../HandleEvent";
import { CommandInvocation } from "../../invoker/Payload";
import { AutomationContext } from "../../util/cls";
import { RegistrationConfirmation } from "../websocket/WebSocketRequestProcessor";
export interface MasterMessage {
    type: "registration" | "event" | "command";
    registration: RegistrationConfirmation;
    context: AutomationContext;
    data?: any;
}
export interface MasterManagementMessage {
    type: "gc" | "heapdump";
}
export interface WorkerMessage {
    type: "online" | "status" | "message" | "command_success" | "command_failure" | "event_success" | "event_failure";
    event?: EventFired<any> | CommandInvocation;
    context: AutomationContext;
    data?: any;
}
export declare function broadcast(message: MasterMessage | MasterManagementMessage): void;
export declare function workerSend(message: WorkerMessage): Promise<any>;
//# sourceMappingURL=messages.d.ts.map