@mongodb-js/charts-embed-dom
Version:
JavaScript library for embedding MongoDB Charts
30 lines (29 loc) • 1.51 kB
TypeScript
import { EmbedChartEvent, EventHandler, EventHandlerPayload, EventHandlerOptions, EventSender } from '../types';
export declare function EventSource<S extends EventSender>(Sender: S): {
new (...args: any[]): {
/** @ignore */
_eventHandlers: Record<EmbedChartEvent, Record<string, {
handle: EventHandler;
options: EventHandlerOptions;
}>>;
/**
* Handle the event sent from embedded app.
*/
_handleEvent(event: EmbedChartEvent, payload: EventHandlerPayload, handlerIds: string[]): void;
/**
* Sets an event listener
* @param event - the event you are subscribing to
* @param eventHandler - the callback to be executed when the event is triggered
* @param options - optional options object, can be used to customise when handler is called
*/
addEventListener(event: EmbedChartEvent, eventHandler: EventHandler, options?: EventHandlerOptions): Promise<unknown>;
/**
* Removes an event listener
* @param event - the event you are unsubscribing from
* @param eventHandler - the event listener function you are unsubscribing from
* @param options - optional options object used when addEventListener
*/
removeEventListener(event: EmbedChartEvent, eventHandler: EventHandler, options?: EventHandlerOptions): Promise<unknown>;
_send(msgName: string, ...payload: unknown[]): Promise<[unknown]>;
};
} & S;