export default interface IBroadcastChannel { postMessage(message: any, targetOrigin?: any, ...transfer: any[]): void; addEventListener(type: K, listener: (this: IBroadcastChannel, ev: BroadcastChannelEventMap[K]) => any, options?: any): void; addEventListener(type: string, listener: any, options?: any): void; removeEventListener(type: K, listener: (this: IBroadcastChannel, ev: BroadcastChannelEventMap[K]) => any, options?: any): void; removeEventListener(type: string, listener: any, options?: any): void; /** * Closes the BroadcastChannel object, opening it up to garbage collection. */ close(): void; } export declare type ChannelEventType = "message" | "close" | "ready" | "error"; export interface BroadcastChannelEventMap { "message": MessageEvent; "messageerror": MessageEvent; } export interface MessageEvent { /** * Returns the data of the message. */ readonly data: any; /** * Returns the last event ID string, for server-sent events. */ readonly lastEventId: string; /** * Returns the origin of the message, for server-sent events and cross-document messaging. */ readonly origin: string; } export declare enum BroadcastChannelType { /** * postMessage signature : postMessage(message: any, targetOrigin?: any): void; */ socketLike = 0, /** * postMessage signature : postMessage(message: any, targetOrigin?: any, ...transfer: string[]): void; */ webviewLike = 1, /** * postMessage signature : postMessage(message: any, ...transfer: string[]): void; * https://developer.mozilla.org/en-US/docs/Web/API/DedicatedWorkerGlobalScope/postMessage */ workerLike = 2 }