UNPKG

mvdom

Version:

deprecated - Moved to dom-native package

34 lines (33 loc) 1.35 kB
interface NsObject { ns: string; } interface HubOptions { ns?: string; ctx?: any; } export declare type HubListener = (data: any, info: HubEventInfo) => void; export declare type HubListenerByFullSelector = { [selector: string]: HubListener; }; export declare type HubListenerByHubNameBySelector = { [hubName: string]: { [selector: string]: HubListener; }; }; export declare type HubBindings = HubListenerByFullSelector | HubListenerByHubNameBySelector | (HubListenerByFullSelector | HubListenerByHubNameBySelector)[]; export interface HubEventInfo { topic: string; label: string; } export interface Hub { sub(topics: string, handler: HubListener, opts?: HubOptions): void; sub(topics: string, labels: string | undefined | null, handler: HubListener, opts?: HubOptions): void; pub(topic: string, message: any): void; pub(topic: string, label: string, message: any): void; unsub(ns: NsObject): void; } export declare function addHubEvents(target: HubBindings | undefined, source: HubBindings): (HubListenerByFullSelector | HubListenerByHubNameBySelector)[]; export declare function bindHubEvents(bindings: HubBindings, opts?: HubOptions): void; export declare function unbindHubEvents(bindings: HubBindings, nsObject: NsObject): void; export declare function hub(name: string): Hub; export {};