import { SetupContext } from 'vue';
import { AttributeTableProps, AttributeTableEmits } from './types';
export declare const useAttributeTable: (props: AttributeTableProps, emit: SetupContext<AttributeTableEmits>['emit'], attributeTableContainerRef: any, attributeTableRef: any) => {
    isFullscreen: import('@vue/reactivity').Ref<boolean, boolean>;
    hightlightable: import('@vue/reactivity').ComputedRef<boolean>;
    visibleColumns: import('@vue/reactivity').ComputedRef<any[]>;
    selectedRowKeys: import('@vue/reactivity').ComputedRef<any[]>;
    columnSelectIndeterminate: import('@vue/reactivity').ComputedRef<boolean>;
    isColumnAllSelected: import('@vue/reactivity').ComputedRef<boolean>;
    selectedDescription: import('@vue/reactivity').ComputedRef<string>;
    filterAttributes: (filterExpression: any) => void;
    showPaginationTotal: (total: any, range: any) => string;
    handlePaginationShowSizeChange: (current: any, size: any) => void;
    handlePaginationChange: (page: any) => void;
    handleSelectChange: (_selectedRowKeys: any, selectedRows: any) => void;
    handleRowClick: (row: any) => void;
    handleRowDbClick: (row: any) => void;
    handleShowModeClick: ({ key }: {
        key: any;
    }) => Promise<void>;
    handleExportMenuClick: ({ key }: {
        key: any;
    }) => void;
    handleRefreshClick: () => void;
    handleColumnAllSelectChange: () => void;
    handleResetColumns: () => void;
    handleFilterWithMapChange: (checked: any) => void;
    handleHightlightSelectionChange: (checked: any) => void;
    handleZoomTo: () => void;
    handleClearSelection: () => void;
    handleToggleScreen: () => void;
    handleClose: () => void;
    handleFilterSubmit: (filterExpression: any, featureIds: any) => void;
    handleFilterReset: () => void;
    loading: import('@vue/reactivity').Ref<boolean, boolean>;
    tableColumns: import('@vue/reactivity').Ref<any[], any[]>;
    tableColumnsCache: import('@vue/reactivity').Ref<any[], any[]>;
    attributeTableData: import('@vue/reactivity').Ref<any[], any[]>;
    pagination: import('@vue/reactivity').Ref<{
        current: number;
        pageSize: number;
        total: number;
        pageSizeOptions: string[];
    }, {
        current: number;
        pageSize: number;
        total: number;
        pageSizeOptions: string[];
    }>;
    useScrollX: import('@vue/reactivity').Ref<boolean, boolean>;
    scrollY: import('@vue/reactivity').Ref<number, number>;
    filterWithMap: import('@vue/reactivity').Ref<boolean, boolean>;
    hightlightSelection: import('@vue/reactivity').Ref<boolean, boolean>;
    selection: import('@vue/reactivity').Ref<any[], any[]>;
    queryShowStyle: import('@vue/reactivity').Ref<any, any>;
    selectedShowMode: import('@vue/reactivity').Ref<any[], any[]>;
    filterVisible: import('@vue/reactivity').Ref<boolean, boolean>;
    filterExpression: import('@vue/reactivity').Ref<string, string>;
    featureIds: import('@vue/reactivity').Ref<any[], any[]>;
    layerQueryOptions: import('@vue/reactivity').Ref<any, any>;
    statisticsVisible: import('@vue/reactivity').Ref<boolean, boolean>;
};
