import { SetupContext } from 'vue';
import { AttributeStatisticsProps, AttributeStatisticsEmits } from './types';
export declare const useAttributeStatistics: (props: AttributeStatisticsProps, emit: SetupContext<AttributeStatisticsEmits>['emit'], layerSelectRef: any, attributeStatisticsContainerRef: any) => {
    isFullscreen: import('@vue/reactivity').Ref<boolean, boolean>;
    statisticsFieldTableColumn: ({
        title: string;
        align: string;
        dataIndex: string;
        ellipsis: boolean;
        key: string;
        scopedSlots?: undefined;
    } | {
        title: string;
        align: string;
        dataIndex: string;
        ellipsis: boolean;
        key: string;
        scopedSlots: {
            customRender: string;
        };
    })[];
    showLayerSelect: import('@vue/reactivity').ComputedRef<boolean>;
    attributeStatisticsLayerTitlePair: import('@vue/reactivity').ComputedRef<{
        title: any;
        tip: any;
    }>;
    canStatistics: import('@vue/reactivity').ComputedRef<string>;
    showRangeNum: import('@vue/reactivity').ComputedRef<boolean>;
    showStatisticsChart: import('@vue/reactivity').ComputedRef<boolean>;
    showStatisticsDataView: import('@vue/reactivity').ComputedRef<boolean>;
    statistics: () => Promise<void>;
    clearState: () => void;
    handleLayerSelectChange: () => void;
    handleGroupFieldChange: () => void;
    handleGroupModeChange: () => void;
    handleStatisticsFieldsChange: () => void;
    handleStatisticsTypeChange: () => void;
    handleReturnStatisticsSetting: () => void;
    handleStatisticsResultShowTypeChange: (e: any) => void;
    handleExportMenuClick: ({ key }: {
        key: any;
    }) => void;
    handleToggleScreen: () => void;
    selectedLayerId: import('@vue/reactivity').Ref<string, string>;
    layerId: import('@vue/reactivity').Ref<string, string>;
    sublayerId: import('@vue/reactivity').Ref<string, string>;
    attributeStatisticsLayerLayer: import('@vue/reactivity').Ref<any, any>;
    fields: import('@vue/reactivity').Ref<any[], any[]>;
    layerTypes: import('@vue/reactivity').Ref<any[], any[]>;
    sublayerTypes: import('@vue/reactivity').Ref<any[], any[]>;
    groupField: import('@vue/reactivity').Ref<string, string>;
    statisticsFieldTableData: import('@vue/reactivity').Ref<any[], any[]>;
    groupMode: import('@vue/reactivity').Ref<string, string>;
    rangeNum: import('@vue/reactivity').Ref<number, number>;
    statisticsFields: import('@vue/reactivity').Ref<unknown[], unknown[]>;
    statisticsType: import('@vue/reactivity').Ref<string, string>;
    statisticsFieldColorRange: import('@vue/reactivity').Ref<unknown[], unknown[]>;
    showStatisticsResult: import('@vue/reactivity').Ref<boolean, boolean>;
    statisticsResultShowType: import('@vue/reactivity').Ref<string, string>;
    statisticsResultTableColumns: import('@vue/reactivity').Ref<any[], any[]>;
    statisticsResultTableData: import('@vue/reactivity').Ref<any[], any[]>;
    groupFieldOptions: import('@vue/reactivity').Ref<any[], any[]>;
    statisticsFieldOptions: import('@vue/reactivity').Ref<any[], any[]>;
    groupModeOptions: import('@vue/reactivity').Ref<{
        label: string;
        value: string;
        disabled: boolean;
    }[], {
        label: string;
        value: string;
        disabled: boolean;
    }[]>;
    statisticsTypeOptions: import('@vue/reactivity').Ref<{
        label: string;
        value: any;
        disabled: boolean;
    }[], {
        label: string;
        value: any;
        disabled: boolean;
    }[]>;
};
