/// <reference types="react" />
import { ExtensionHostApi, ExtensionSDK } from '@joeldodge/extension-sdk';
export interface BaseExtensionContextData {
    extensionSDK: ExtensionSDK;
    initializeError?: string;
    route: string;
    routeState?: any;
}
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;
}
export interface ExtensionConnectorProps extends ExtensionProviderProps {
    contextData: BaseExtensionContextData;
    connectedCallback: (extensionSDK: ExtensionHostApi) => void;
    updateContextData: (contextData: BaseExtensionContextData) => void;
    unloadedCallback: () => void;
}
