@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
44 lines (43 loc) • 2.22 kB
TypeScript
import { $CurrentEmployeeId } from "@docsvision/webclient/StandardServices";
import { $LocalStorage } from "@docsvision/webclient/System/$LocalStorage";
import { IRealTimeCommunicationMessage } from "@docsvision/webclient/System/IRealTimeCommunicationMessage";
import { RealtimeSubscriber } from "@docsvision/webclient/System/RealtimeSubscriber";
/** @internal */
export declare class IncomingLocalStorageCommunicationChannel {
private services;
protected localStorageKey: string;
protected channelType: string;
protected channelId: string;
protected receivedMessages: IRealTimeCommunicationMessage<any>[];
protected _tabId: string;
protected subscribers: {
[messageType: string]: RealtimeSubscriber<any>[];
};
protected subscribersToAll: RealtimeSubscriber<any>[];
protected serverMessageSubscribers: {
[messageType: string]: RealtimeSubscriber<any>[];
};
protected lastMessage: Date;
constructor(type: string, id: string, tabId: string, services: $LocalStorage & $CurrentEmployeeId);
get tabId(): string;
enableStorageMonitoring(): void;
disableStorageMonitoring(): void;
get type(): string;
get id(): string;
subscribe<T>(messageType: string, callback: RealtimeSubscriber<T>): void;
hasSubscribers(messageType: string): boolean;
unsubscribe<T>(messageType: string, callback: RealtimeSubscriber<T>): void;
subscribeToAll<T>(callback: RealtimeSubscriber<T>): void;
unsubscribeFromAll<T>(callback: RealtimeSubscriber<T>): void;
subscribeToServerMessages<T>(messageType: string, callback: RealtimeSubscriber<T>): void;
unsubscribeFromServerMessages<T>(messageType: string, callback: RealtimeSubscriber<T>): void;
processMessage<T>(item: IRealTimeCommunicationMessage<T>): void;
get lastActivity(): Date;
set lastActivity(time: Date);
dispose(): void;
removeStorageItem(): void;
protected onStorageChanged: () => void;
protected processIncomingMessage<T>(received: IRealTimeCommunicationMessage<T>): void;
protected onReceivedMessage<T>(item: IRealTimeCommunicationMessage<T>, forServer?: boolean): void;
protected getQueue(): IRealTimeCommunicationMessage<any>[];
}