import * as React from "react"; export interface IframeControllerRenderProps { refFn: React.Ref; } interface IframeControllerOwnProps { dashboardId: string; children: (props: IframeControllerRenderProps) => React.ReactNode; events?: { [event: string]: IframeEventHandler; }; } interface IframeControllerState { listeningForDrillableItems: boolean; } interface IframeControllerStateProps { drillableItems?: string[]; drillableItemsAttributes?: string[]; } export type IframeControllerProps = IframeControllerOwnProps & IframeControllerStateProps; export type IframeEventHandler = (eventData: unknown, eventId: string) => void; export declare class _IframeController extends React.PureComponent { readonly state: IframeControllerState; private iframe; private gdEventHandlers; constructor(props: IframeControllerProps); private handle; private sendDrillableItems; private handleListeningForDrillableItems; private handleUiLink; private handleDashboardCreated; private handleDashboardSaved; private handleDrillDown; private handleDashboardDeleted; private delegateEventToOriginal; private handleIncomingMessage; componentDidMount(): void; componentWillUnmount(): void; componentDidUpdate(): Promise; ref: (r: HTMLIFrameElement | null) => void; render(): React.ReactNode; } export declare const IframeController: import("react-redux").ConnectedComponent & IframeControllerOwnProps & IframeControllerStateProps, "drillableItems" | "drillableItemsAttributes"> & IframeControllerOwnProps>; export {};