import type { UploadOutlinedIconType } from '@ant-design/icons-vue/lib/icons/UploadOutlined';
import type { VxeTableProps, VxeTableDataRow, VxeGridInstance } from 'vxe-table';
import type { RequestMethod, ModalConfig, ModalType, OpenFuncType, TablePage } from './component/field-select-modal-types';
import type { UserOutlinedIconType } from '@ant-design/icons-vue/lib/icons/UserOutlined';
import type { RuleObject } from 'ant-design-vue/es/form';
import type { RecordString } from '../../select-modal';
import type { SrmI18n } from '../../../utils/type';
import type { Form } from './audit-modal-type';
import type { DefineComponent, PropType, Ref, ComputedRef, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes } from 'vue';
import { ObjectMap } from '../../list-page-layout/src/list-page-layout-types';
import qqtApi from '@qqt-product/api';
declare const _sfc_main: DefineComponent<{
    visible: {
        type: BooleanConstructor;
        default: boolean;
    };
    currentRow: {
        type: PropType<any>;
        default(): {};
    };
    title: {
        type: StringConstructor;
        default: string;
    };
    businessType: {
        type: StringConstructor;
        default: string;
    };
    token: {
        type: StringConstructor;
        default: string;
    };
    busAccount: {
        type: StringConstructor;
        default: string;
    };
    form: {
        type: PropType<Form[]>;
        default: () => never[];
    };
    width: {
        type: StringConstructor;
        default: string;
    };
    taskAction: {
        type: StringConstructor;
        default: string;
    };
    needFlow: {
        type: StringConstructor;
        default: string;
    };
    flowIframeUrl: {
        type: StringConstructor;
        default: string;
    };
    customParams: {
        type: ObjectConstructor;
        default: {};
    };
    'onUpdate:visible': {
        type: PropType<((value: string) => void) | ((value: string) => void)[]>;
        default: unknown;
    };
}, {
    props: any;
    emit: (event: "cancel" | "update:visible" | "ok", ...args: any[]) => void;
    title: Ref<string>;
    visible: Ref<boolean>;
    form: Ref<Form[]>;
    busAccount: Ref<string>;
    currentRow: Ref<any>;
    businessType: Ref<string>;
    token: Ref<string>;
    taskAction: Ref<string>;
    needFlow: Ref<string>;
    flowIframeUrl: Ref<string>;
    customParams: Ref<Record<string, any>>;
    handleCancel: () => void;
    formRef: Ref<any>;
    confirmLoading: Ref<boolean>;
    submit: () => void;
    srmI18n: SrmI18n;
    Request: qqtApi.Request;
    formState: ObjectMap;
    fieldSelectModal: Ref<any>;
    tagSelectOk: Ref<(data: RecordString[]) => void>;
    selectUsers: Ref<((btn: Form) => void) | null>;
    delnextNodeUsers: (options: any[], index: number, userIndex: number) => void;
    selectnextNodeUsers: (index: number) => void;
    delUsers: (index: number) => void;
    getNextNode: () => void;
    rules: ComputedRef<Record<string, RuleObject[]>>;
    uploadDefaultValue: {
        action: string;
        headers: {
            'X-Access-Token': string;
        };
        accept: string;
    };
    initFormDefaultValue: () => void;
    readonly UserOutlined: UserOutlinedIconType;
    qFieldSelectModal: DefineComponent<{
        modalTitle: {
            type: StringConstructor;
            default: string;
        };
        apiUrls: {
            type: StringConstructor;
            default: string;
        };
        requestMethod: {
            type: PropType<RequestMethod>;
            default: string;
        };
        tableData: {
            type: PropType<Record<string, unknown>[]>;
            default: () => null;
        };
        modalConfig: {
            type: PropType<ModalConfig>;
            default: () => {};
        };
        handleListData: {
            type: FunctionConstructor;
        };
        tableConfig: {
            type: PropType<VxeTableProps<VxeTableDataRow>>;
            default: () => {
                height: number;
                isTree: boolean;
                radioConfig: {};
                checkedConfig: {
                    highlight: boolean;
                    reserve: boolean;
                    trigger: string;
                };
                pagerConfig: {};
                treeConfig: {};
            };
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        selectModal: {
            type: PropType<ModalType>;
            default: string;
        };
    }, {
        classes: ComputedRef<{
            [x: string]: boolean;
        }>;
        selectGrid: Ref<VxeGridInstance<any> | null>;
        data: {
            url: string;
            params: {
                [x: string]: any;
                pageNo: number;
                pageSize: number;
                keyWord?: string | undefined;
                total?: number | undefined;
                align?: string | undefined;
                pageSizes?: number[] | undefined;
                layouts?: string[] | undefined;
                perfect?: boolean | undefined;
            };
            modalLoading: boolean;
            loading: boolean;
        };
        modalShow: Ref<boolean>;
        modalConfigComputed: ComputedRef<any>;
        tableConfigComputed: ComputedRef<any>;
        tablePage: {
            currentPage: number;
            pageSize: number;
            total?: number | undefined;
            align?: string | undefined;
            pageSizes?: number[] | undefined;
            layouts?: string[] | undefined;
            perfect?: boolean | undefined;
        };
        tableData: Ref<Record<string, unknown>[]>;
        columns: Ref<{
            type?: string | undefined;
            field?: string | undefined;
            title?: string | undefined;
            align?: string | undefined;
            fieldLabelI18nKey?: string | undefined;
            width?: number | undefined;
        }[]>;
        form: Record<string, unknown>;
        selectModal: Ref<ModalType>;
        getPagerConfig: ComputedRef<any>;
        modalTitle: Ref<string>;
        placeholder: Ref<string>;
        open: ({ url, params, columns: col, selectModal: sm, requestMethod: rm }: OpenFuncType) => void;
        close: () => void;
        onSearch: () => void;
        handlePageChange: ({ currentPage, pageSize }: TablePage) => void;
        selectedOk: () => void;
        loadData: (extend?: {
            action: string;
        } | undefined) => void;
    }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
        modalTitle: {
            type: StringConstructor;
            default: string;
        };
        apiUrls: {
            type: StringConstructor;
            default: string;
        };
        requestMethod: {
            type: PropType<RequestMethod>;
            default: string;
        };
        tableData: {
            type: PropType<Record<string, unknown>[]>;
            default: () => null;
        };
        modalConfig: {
            type: PropType<ModalConfig>;
            default: () => {};
        };
        handleListData: {
            type: FunctionConstructor;
        };
        tableConfig: {
            type: PropType<VxeTableProps<VxeTableDataRow>>;
            default: () => {
                height: number;
                isTree: boolean;
                radioConfig: {};
                checkedConfig: {
                    highlight: boolean;
                    reserve: boolean;
                    trigger: string;
                };
                pagerConfig: {};
                treeConfig: {};
            };
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        selectModal: {
            type: PropType<ModalType>;
            default: string;
        };
    }>>, {
        modalTitle: string;
        apiUrls: string;
        requestMethod: RequestMethod;
        tableData: Record<string, unknown>[];
        modalConfig: ModalConfig;
        tableConfig: VxeTableProps<VxeTableDataRow>;
        placeholder: string;
        selectModal: ModalType;
    }, {}>;
    readonly UploadOutlined: UploadOutlinedIconType;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("cancel" | "update:visible" | "ok")[], "cancel" | "update:visible" | "ok", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
    visible: {
        type: BooleanConstructor;
        default: boolean;
    };
    currentRow: {
        type: PropType<any>;
        default(): {};
    };
    title: {
        type: StringConstructor;
        default: string;
    };
    businessType: {
        type: StringConstructor;
        default: string;
    };
    token: {
        type: StringConstructor;
        default: string;
    };
    busAccount: {
        type: StringConstructor;
        default: string;
    };
    form: {
        type: PropType<Form[]>;
        default: () => never[];
    };
    width: {
        type: StringConstructor;
        default: string;
    };
    taskAction: {
        type: StringConstructor;
        default: string;
    };
    needFlow: {
        type: StringConstructor;
        default: string;
    };
    flowIframeUrl: {
        type: StringConstructor;
        default: string;
    };
    customParams: {
        type: ObjectConstructor;
        default: {};
    };
    'onUpdate:visible': {
        type: PropType<((value: string) => void) | ((value: string) => void)[]>;
        default: unknown;
    };
}>> & {
    onCancel?: ((...args: any[]) => any) | undefined;
    "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
    onOk?: ((...args: any[]) => any) | undefined;
}, {
    width: string;
    form: Form[];
    title: string;
    'onUpdate:visible': ((value: string) => void) | ((value: string) => void)[];
    visible: boolean;
    currentRow: any;
    businessType: string;
    token: string;
    busAccount: string;
    taskAction: string;
    needFlow: string;
    flowIframeUrl: string;
    customParams: Record<string, any>;
}, {}>;
export default _sfc_main;
