ashish-sdk
Version:
ThoughtSpot Embed SDK
16 lines (15 loc) • 601 B
TypeScript
import { EmbedEvent, MessageCallback } from '../types';
import { ViewConfig } from '../embed/ts-embed';
export declare type EmbedEventHandlers = {
[key in EmbedEvent as `on${Capitalize<key>}`]?: MessageCallback;
};
export interface EmbedProps extends ViewConfig, EmbedEventHandlers {
className?: string;
}
export interface ViewConfigAndListeners<T extends ViewConfig> {
viewConfig: T;
listeners: {
[key in EmbedEvent]?: MessageCallback;
};
}
export declare function getViewPropsAndListeners<T extends EmbedProps, U extends ViewConfig>(props: T): ViewConfigAndListeners<U>;