import React from 'react';
import { IntlShape } from 'react-intl';
import { MapStyle } from '@kepler.gl/reducers';
import { ActionHandler, mapStyleChange, loadFiles, addDataToMap, addLayer, createOrUpdateFilter, setFilter, setFilterPlot, layerSetIsValid, layerVisualChannelConfigChange } from '@kepler.gl/actions';
import { SidePanelTitleFactory } from '@kepler.gl/components';
import { VisState } from '@kepler.gl/schemas';
import { AiAssistantState } from '../index';
import { updateAiAssistantConfig, updateAiAssistantMessages, setStartScreenCapture, setScreenCaptured } from '../actions';
import AiAssistantConfigFactory from './ai-assistant-config';
import AiAssistantComponentFactory from './ai-assistant-component';
export declare type SelectedKeplerGlActions = {
    mapStyleChange: ActionHandler<typeof mapStyleChange>;
    loadFiles: ActionHandler<typeof loadFiles>;
    addDataToMap: ActionHandler<typeof addDataToMap>;
    addLayer: ActionHandler<typeof addLayer>;
    layerVisualChannelConfigChange: ActionHandler<typeof layerVisualChannelConfigChange>;
    createOrUpdateFilter: ActionHandler<typeof createOrUpdateFilter>;
    setFilter: ActionHandler<typeof setFilter>;
    setFilterPlot: ActionHandler<typeof setFilterPlot>;
    layerSetIsValid: ActionHandler<typeof layerSetIsValid>;
};
export declare type AiAssistantManagerState = {
    aiAssistantActions: {
        updateAiAssistantConfig: ActionHandler<typeof updateAiAssistantConfig>;
        updateAiAssistantMessages: ActionHandler<typeof updateAiAssistantMessages>;
        setStartScreenCapture: ActionHandler<typeof setStartScreenCapture>;
        setScreenCaptured: ActionHandler<typeof setScreenCaptured>;
    };
    keplerGlActions: SelectedKeplerGlActions;
    aiAssistant: AiAssistantState;
    mapStyle: MapStyle;
    visState: VisState;
    children: React.ReactNode;
};
export declare type AiAssistantManagerProps = AiAssistantManagerWithIntlProp & AiAssistantManagerState;
export declare type AiAssistantManagerWithIntlProp = {
    intl: IntlShape;
};
declare function AiAssistantManagerFactory(SidePanelTitle: ReturnType<typeof SidePanelTitleFactory>, AiAssistantConfig: ReturnType<typeof AiAssistantConfigFactory>, AiAssistantComponent: ReturnType<typeof AiAssistantComponentFactory>): React.FC<AiAssistantManagerProps>;
declare namespace AiAssistantManagerFactory {
    var deps: (typeof AiAssistantConfigFactory | typeof AiAssistantComponentFactory | (() => React.FC<import("@kepler.gl/components/dist/effects/side-panel-title").PanelTitleProps>))[];
}
export default AiAssistantManagerFactory;
