UNPKG

@signiant/media-shuttle-sdk-base

Version:

The base parent sdk behind other media shuttle sdks (e.g. media-shuttle-sdk)

31 lines 1.65 kB
import { ParamsBase, ProviderInfoBase } from './MessagingConfig'; /** * MessageChannel is the top level class for external messaging. Most of the implementation comes from the * [[MessageChannelProvider]] class but the MessageChannel is still valuable because the sdk * uses [[MessageChannelDecorator]]s liberally which delegate their function calls to the [[MessageChannelProvider]] * they are decorating rather then provide their own implementation. */ declare abstract class MessageChannel<CP extends ParamsBase<ProviderInfoBase>> { protected _clientInfo: any; abstract initialize(callback?: Function): void; abstract setEventHandler(originatorId: string, event: string | RegExp, handler: Function): void; abstract setSessionActiveEventHandler(handler: Function): void; abstract setErrorCallback(callback: Function): void; abstract removeEventHandlers(originatorId: string): boolean; abstract removeEventHandler(originatorId: string, event: string | RegExp): boolean; abstract onMessage(message: object): void; abstract notifyMessage(message: object): void; abstract publish(message: object): void; abstract reset(): void; abstract getProviderInfo(): string; abstract unsubscribeFromChannels(): void; abstract getChannelParams(): CP; abstract updateSettings(settings: object): void; sendMessageRequest(originator: string, requestName: string, requestCallback: Function, content: object): void; /** * Should return information about the client device */ abstract get clientInfo(): any; } export default MessageChannel; //# sourceMappingURL=MessageChannel.d.ts.map