import { type TransporterBackbone } from "./transporterAdapter.ts"; export type Callee = (...args: T) => Promise; export type Proxied = Callee; export type Caller = (callee: Callee) => () => void; type TransportedEventData = { callback: string; args: T; }; type TransportedEventResultData = { callback: string; result?: T; error?: Error; }; export interface TransportController { instanceName: string; activate: () => void; deactivate: () => void; dispatchCommand: (type: NotificationType, instanceName: string) => void; } export type TransporterTuple = [Proxied, Caller, TransportController]; type NotificationType = "promoting" | "demoting" | "deactivated" | "activated" | "switching" | "activate" | "deactivate"; type NotificationData = { type: NotificationType; instanceName: string; }; type PayloadTypes = TransportedEventData | TransportedEventResultData | NotificationData; export declare function _createTransporter(emitter: TransporterBackbone>, name: string, forceTransportNo?: number): TransporterTuple; export declare const Transporters: { of(name: string): TransporterTuple; }; export declare const GlobalTransporters: { of(name: string): TransporterTuple; }; export {};