UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

26 lines (25 loc) 1.56 kB
import { IRealTimeCommunicationMessage } from "@docsvision/webclient/System/IRealTimeCommunicationMessage"; import { RealtimeServerSender } from "@docsvision/webclient/System/RealtimeServerSender"; import { RealtimeSubscriber } from "@docsvision/webclient/System/RealtimeSubscriber"; import { NotyDef } from '@docsvision/webclient/System/PopupNotification'; export interface IRealtimeCommunicationService { sendToServer<T>(message: IRealTimeCommunicationMessage<T>): void; sendBetweenTabs<T>(message: IRealTimeCommunicationMessage<T>, targetTabs?: string[], sync?: boolean): void; sendToTab<T>(tabId: string, message: IRealTimeCommunicationMessage<T>): void; sendToMasterTab<T>(message: IRealTimeCommunicationMessage<T>): void; hasSubscribers(messageType: string): boolean; subscribe<T>(messageType: string, callback: RealtimeSubscriber<T>): void; unsubscribe<T>(messageType: string, callback: RealtimeSubscriber<T>): void; setServerSender(messageType: string, processor: RealtimeServerSender<any>): void; getServerSender(messageType: string): void; initialized(): boolean; readonly isMasterTab: boolean; readonly currentTabId: string; readonly masterTabId: string | undefined; readonly sessionId: string; popupNotification?: NotyDef; } export declare type $RealtimeCommunicationService = { realtimeCommunicationService: IRealtimeCommunicationService; }; export declare const $RealtimeCommunicationService: string | ((model?: $RealtimeCommunicationService) => IRealtimeCommunicationService);