import type { DefineComponent, PropType, ComputedRef, ShallowRef, Ref, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes } from 'vue';
import type { PageData, ApiUrls, GridColumn, QueryFormItem, OptColumnListItem, ListOptionsEventParams, ListMergeDataItem, FetchDataOptions,  ButtonItem,  ObjectMap } from './list-page-layout-types';
import type { VxeGridPropTypes, SizeType, VxePagerPropTypes, VxeTableInstance } from 'vxe-table';
declare const _sfc_main: DefineComponent<{
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    extraListConfig: {
        type: PropType<ObjectMap>;
        default: () => {};
    };
    pageData: {
        type: PropType<PageData>;
        default: () => {
            optionConfig: {
                options: never[];
            };
            buttonConfig: {
                buttons: never[];
            };
            queryConfig: {
                form: never[];
                formState: {};
            };
            statusConfig: {};
            superQueryConfig: {
                queryModel: never[];
                superQuery: {};
            };
        };
    };
    apiUrls: {
        type: PropType<ApiUrls>;
        default: () => {};
    };
    beforeHandleData: {
        type: PropType<(column: GridColumn[]) => void>;
    };
    afterHandleData: {
        type: PropType<(tableData: ObjectMap[]) => void>;
    };
    handleAfterDataResponse: {
        type: PropType<(dataSource: any) => any>;
    };
    localColumnGroup: {
        type: PropType<(column: GridColumn[]) => GridColumn[]>;
    };
}, {
    ns: {
        namespace: ComputedRef<string>;
        b: (blockSuffix?: string) => string;
        e: (element?: string | undefined) => string;
        m: (modifier?: string | undefined) => string;
        be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
        em: (element?: string | undefined, modifier?: string | undefined) => string;
        bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
        bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
        is: {
            (name: string, state: boolean | undefined): string;
            (name: string): string;
        };
        cssVar: (object: Record<string, string>) => Record<string, string>;
        cssVarName: (name: string) => string;
        cssVarBlock: (object: Record<string, string>) => Record<string, string>;
        cssVarBlockName: (name: string) => string;
    };
    loading: ShallowRef<boolean>;
    gridInstance: Ref<VxeTableInstance<any> | undefined>;
    renderComponent: Ref<boolean>;
    listScopedSlots: {
        loading: boolean;
        tableColumns: any;
        tableData: ObjectMap[];
        pagerConfig: VxeGridPropTypes.PagerConfig;
        queryConfig: {
            attrs?: ObjectMap | undefined;
            extend?: ObjectMap | undefined;
            customSearch?: ((args: ObjectMap) => void) | undefined;
            customReset?: ((args: ObjectMap) => void) | undefined;
            form: {
                type: string;
                label: string;
                fieldName: string;
                placeholder?: string | undefined;
                options?: ObjectMap[] | undefined;
                attrs?: ObjectMap | undefined;
                dictCode?: string | undefined;
                change?: ((args: QueryFormItem) => void) | undefined;
            }[];
            needAdvancedQuery?: boolean | undefined;
            formState?: ObjectMap | undefined;
        } | undefined;
        statusData: {
            [key: string]: unknown;
        }[];
        listConfig: {
            apiUrls: {
                [x: string]: unknown;
                columnsCode: string;
                list: string;
                countTabsUrl: string;
                quickNav?: string | undefined;
            };
            loading: boolean;
            extraListConfig: ObjectMap;
            pageData: {
                [x: string]: any;
                onlyShowNav?: boolean | undefined;
                isAggregate?: "0" | "1" | undefined;
                isUseLocalColumns?: boolean | undefined;
                localColumns?: {
                    [x: string]: any;
                    field?: string | undefined;
                    property?: string | undefined;
                    columnId?: string | undefined;
                    sorter?: string | undefined;
                    fixType?: string | undefined;
                    hidden?: string | undefined;
                    link?: string | undefined;
                    fieldColors?: string | {
                        [x: string]: unknown;
                        fieldName?: string | undefined;
                        filterColor?: string | undefined;
                    }[] | undefined;
                }[] | undefined;
                optionConfig?: {
                    attrs?: ObjectMap | undefined;
                    extend?: ObjectMap | undefined;
                    options: {
                        type?: string | undefined;
                        title: string;
                        authorityCode?: string | undefined;
                        attrs?: ObjectMap | undefined;
                        args?: {
                            [x: string]: unknown;
                            url?: string | undefined;
                            method?: string | undefined;
                            params?: ObjectMap | (({ currentOpt, row }: {
                                currentOpt: OptColumnListItem;
                                row: ObjectMap;
                            }) => void | object) | undefined;
                        } | undefined;
                        click?: ((args: ListOptionsEventParams) => void) | undefined;
                        disabled?: boolean | (({ currentOpt, row }: {
                            currentOpt: OptColumnListItem;
                            row: ObjectMap;
                        }) => boolean | void) | undefined;
                    }[];
                } | undefined;
                buttonConfig?: {
                    attrs?: ObjectMap | undefined;
                    extend?: ObjectMap | undefined;
                    buttons: {
                        label?: string | undefined;
                        icon?: string | ObjectMap | undefined;
                        type?: string | undefined;
                        attrs?: ObjectMap | undefined;
                        args?: {
                            [x: string]: unknown;
                            url?: string | undefined;
                        } | undefined;
                        authorityCode?: string | undefined;
                        disabled?: boolean | (<T>(args: T) => boolean | void) | undefined;
                        click?: ((args: ButtonItem) => void) | undefined;
                        handleBefore?: (<T_1>(args: T_1) => void | Promise<T_1>) | undefined;
                        handleAfter?: (<T_2>(args: T_2) => void | Promise<T_2>) | undefined;
                    }[];
                } | undefined;
                toolsConfig?: {
                    attrs?: ObjectMap | undefined;
                    extend?: ObjectMap | undefined;
                    buttons: {
                        toggleIcon?: ObjectMap | undefined;
                        label?: string | undefined;
                        icon?: string | ObjectMap | undefined;
                        type?: string | undefined;
                        attrs?: ObjectMap | undefined;
                        args?: {
                            [x: string]: unknown;
                            url?: string | undefined;
                        } | undefined;
                        authorityCode?: string | undefined;
                        disabled?: boolean | (<T>(args: T) => boolean | void) | undefined;
                        click?: ((args: ButtonItem) => void) | undefined;
                        handleBefore?: (<T_1>(args: T_1) => void | Promise<T_1>) | undefined;
                        handleAfter?: (<T_2>(args: T_2) => void | Promise<T_2>) | undefined;
                    }[];
                } | undefined;
                queryConfig?: {
                    attrs?: ObjectMap | undefined;
                    extend?: ObjectMap | undefined;
                    customSearch?: ((args: ObjectMap) => void) | undefined;
                    customReset?: ((args: ObjectMap) => void) | undefined;
                    form: {
                        type: string;
                        label: string;
                        fieldName: string;
                        placeholder?: string | undefined;
                        options?: ObjectMap[] | undefined;
                        attrs?: ObjectMap | undefined;
                        dictCode?: string | undefined;
                        change?: ((args: QueryFormItem) => void) | undefined;
                    }[];
                    needAdvancedQuery?: boolean | undefined;
                    formState?: ObjectMap | undefined;
                } | undefined;
                statusConfig?: {
                    show?: boolean | (() => boolean | void) | undefined;
                    filter?: ObjectMap | undefined;
                    currentValue?: {
                        [x: string]: any;
                        proName: string;
                        rejectReason: string;
                        title: string;
                        total: string | number;
                        flag?: string | undefined;
                    } | undefined;
                    activeKey?: unknown;
                } | undefined;
                filterConfig?: {
                    show?: boolean | (() => boolean | void) | undefined;
                    filter?: ObjectMap | undefined;
                } | undefined;
                navConfig?: {
                    show?: boolean | (() => boolean | void) | undefined;
                } | undefined;
                listMergeConfig?: {
                    show?: boolean | (() => boolean | void) | undefined;
                    options: {
                        title: string;
                        key: string | number;
                    }[];
                    currentValue: string | number;
                    change: (event: Event, value?: string | number | undefined, options?: ListMergeDataItem[] | undefined) => void;
                } | undefined;
                pagerConfig?: {
                    enabled?: boolean | undefined;
                    slots?: any;
                    size?: SizeType | undefined;
                    layouts?: ("Number" | "PrevJump" | "PrevPage" | "JumpNumber" | "NextPage" | "NextJump" | "Sizes" | "FullJump" | "PageCount" | "Total" | "Jump")[] | undefined;
                    currentPage?: number | undefined;
                    loading?: boolean | undefined;
                    pageSize?: number | undefined;
                    total?: number | undefined;
                    pagerCount?: number | undefined;
                    pageSizes?: (number | {
                        label?: string | number | undefined;
                        value?: string | number | undefined;
                    })[] | undefined;
                    align?: string | undefined;
                    border?: boolean | undefined;
                    background?: boolean | undefined;
                    perfect?: boolean | undefined;
                    autoHidden?: boolean | undefined;
                    transfer?: boolean | undefined;
                    className?: VxePagerPropTypes.ClassName | undefined;
                    iconPrevPage?: string | undefined;
                    iconJumpPrev?: string | undefined;
                    iconJumpNext?: string | undefined;
                    iconNextPage?: string | undefined;
                    iconJumpMore?: string | undefined;
                } | undefined;
                isOrder?: ObjectMap | undefined;
                superQueryConfig?: {
                    queryModel: {
                        [x: string]: unknown;
                        logicSymbol?: string | undefined;
                        fieldCode?: string | undefined;
                        dictCode?: string | undefined;
                        fieldType?: string | undefined;
                        fieldValue?: unknown;
                        showValue?: string | number | undefined;
                        joiner?: string | number | undefined;
                        dictTable?: string | number | undefined;
                        customReturnField?: string | number | undefined;
                        queryItemId?: string | number | undefined;
                        extendLink?: string | undefined;
                        extend?: {
                            [x: string]: unknown;
                            bindFunction?: (<T_3>(discard: null, args: T_3) => void) | undefined;
                        } | undefined;
                    }[];
                    superQuery: ObjectMap;
                } | undefined;
                chatBiBusinessType?: string | undefined;
            };
            beforeHandleData?: ((column: GridColumn[]) => void) | undefined;
            afterHandleData?: ((tableData: ObjectMap[]) => void) | undefined;
            handleAfterDataResponse?: ((dataSource: any) => any) | undefined;
            localColumnGroup?: ((column: GridColumn[]) => GridColumn[]) | undefined;
        };
    };
    selectTplVisible: Ref<boolean>;
    selectTplOpen: Ref<boolean>;
    selectTemplateProps: {
        url: string;
        businessType: string;
        elsAccount: string;
    };
    fetchListData: (params?: FetchDataOptions) => void;
    addButtonClick: (params: ButtonItem) => void;
    editNavSuccess: () => void;
    columnSettingOK: () => void;
    importSuccess: () => void;
    columnSettingRef: Ref<any>;
    helpTextModalRef: Ref<any>;
    chatBiModalRef: Ref<any>;
    addModalRef: Ref<any>;
    recordModalRef: Ref<any>;
    editNavModalRef: Ref<any>;
    importModalRef: Ref<any>;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("tagCheckChange" | "link-click" | "add-button-click" | "getGridInstance" | "cell-click" | "sort-change" | "filter-change" | "resizable-change")[], "tagCheckChange" | "link-click" | "add-button-click" | "getGridInstance" | "cell-click" | "sort-change" | "filter-change" | "resizable-change", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    extraListConfig: {
        type: PropType<ObjectMap>;
        default: () => {};
    };
    pageData: {
        type: PropType<PageData>;
        default: () => {
            optionConfig: {
                options: never[];
            };
            buttonConfig: {
                buttons: never[];
            };
            queryConfig: {
                form: never[];
                formState: {};
            };
            statusConfig: {};
            superQueryConfig: {
                queryModel: never[];
                superQuery: {};
            };
        };
    };
    apiUrls: {
        type: PropType<ApiUrls>;
        default: () => {};
    };
    beforeHandleData: {
        type: PropType<(column: GridColumn[]) => void>;
    };
    afterHandleData: {
        type: PropType<(tableData: ObjectMap[]) => void>;
    };
    handleAfterDataResponse: {
        type: PropType<(dataSource: any) => any>;
    };
    localColumnGroup: {
        type: PropType<(column: GridColumn[]) => GridColumn[]>;
    };
}>> & {
    onTagCheckChange?: ((...args: any[]) => any) | undefined;
    "onLink-click"?: ((...args: any[]) => any) | undefined;
    "onAdd-button-click"?: ((...args: any[]) => any) | undefined;
    onGetGridInstance?: ((...args: any[]) => any) | undefined;
    "onCell-click"?: ((...args: any[]) => any) | undefined;
    "onSort-change"?: ((...args: any[]) => any) | undefined;
    "onFilter-change"?: ((...args: any[]) => any) | undefined;
    "onResizable-change"?: ((...args: any[]) => any) | undefined;
}, {
    apiUrls: ApiUrls;
    loading: boolean;
    extraListConfig: ObjectMap;
    pageData: PageData;
}, {}>;
export default _sfc_main;
