@thoughtspot/visual-embed-sdk
Version:
ThoughtSpot Embed SDK
25 lines • 1.81 kB
TypeScript
import { HostEvent } from '../../types';
import { UIPassthroughArrayResponse, UIPassthroughEvent, HostEventRequest, HostEventResponse, UIPassthroughRequest, UIPassthroughResponse, TriggerPayload, TriggerResponse } from './contracts';
export declare class HostEventClient {
iFrame: HTMLIFrameElement;
constructor(iFrame?: HTMLIFrameElement);
/**
* A wrapper over process trigger to
* @param {HostEvent} message Host event to send
* @param {any} data Data to send with the host event
* @returns {Promise<any>} - the response from the process trigger
*/
protected processTrigger(message: HostEvent, data: any): Promise<any>;
handleHostEventWithParam<UIPassthroughEventT extends UIPassthroughEvent>(apiName: UIPassthroughEventT, parameters: UIPassthroughRequest<UIPassthroughEventT>): Promise<UIPassthroughResponse<UIPassthroughEventT>>;
hostEventFallback(hostEvent: HostEvent, data: any): Promise<any>;
/**
* Setter for the iframe element used for host events
* @param {HTMLIFrameElement} iFrame - the iframe element to set
*/
setIframeElement(iFrame: HTMLIFrameElement): void;
triggerUIPassthroughApi<UIPassthroughEventT extends UIPassthroughEvent>(apiName: UIPassthroughEventT, parameters: UIPassthroughRequest<UIPassthroughEventT>): Promise<UIPassthroughArrayResponse<UIPassthroughEventT>>;
protected handlePinEvent(payload: HostEventRequest<HostEvent.Pin>): Promise<HostEventResponse<HostEvent.Pin>>;
protected handleSaveAnswerEvent(payload: HostEventRequest<HostEvent.SaveAnswer>): Promise<any>;
triggerHostEvent<HostEventT extends HostEvent, PayloadT>(hostEvent: HostEventT, payload?: TriggerPayload<PayloadT, HostEventT>): Promise<TriggerResponse<PayloadT, HostEventT>>;
}
//# sourceMappingURL=host-event-client.d.ts.map