UNPKG

@looker/extension-sdk-react

Version:
33 lines (32 loc) 1.24 kB
import type { ReactNode } from 'react'; import type { ExtensionHostApi, ExtensionSDK, LookerHostData, RawVisualizationData, TileHostData, TileSDK, VisualizationSDK } from '@looker/extension-sdk'; export interface BaseExtensionContextData { extensionSDK: ExtensionSDK; lookerHostData?: Readonly<LookerHostData>; initializeError?: string; route: string; routeState?: any; visualizationData?: Readonly<RawVisualizationData>; visualizationSDK: VisualizationSDK; tileHostData: Readonly<TileHostData>; tileSDK: TileSDK; } export interface RouteData { route: string; routeState?: any; } export interface ExtensionProviderProps { hostTracksRoute?: boolean; onPathnameChange?: (pathname: string) => void; onRouteChange?: (route: string, routeState?: any) => void; loadingComponent?: JSX.Element; requiredLookerVersion?: string; chattyTimeout?: number; children?: ReactNode; } export interface ExtensionConnectorProps extends ExtensionProviderProps { contextData: BaseExtensionContextData; connectedCallback: (extensionSDK: ExtensionHostApi) => void; updateContextData: (contextData: Partial<BaseExtensionContextData>) => void; unloadedCallback: () => void; }