import type { ICrudOption } from './crud'; declare function __VLS_template(): { attrs: Partial<{}>; slots: Partial any>> & Partial any>> & Partial any>> & { addBtn?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; }): any; topLeft?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; }): any; topRight?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; }): any; editBtn?(_: any): any; delBtn?(_: any): any; menu?(_: any): any; allTop?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; formTop?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; addTop?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; editTop?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; viewTop?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; allBottom?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; formBottom?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; addBottom?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; editBottom?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; viewBottom?(_: { size: import("m-eleplus-crud/es/utils").EpPropMergeType | undefined; loading: any; }): any; }; refs: { searchRef: unknown; tableRef: unknown; formRef: unknown; }; rootEl: HTMLDivElement; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import("vue").DefineComponent>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly loading: import("m-eleplus-crud/es/utils").EpPropFinalized; readonly data: { readonly type: import("vue").PropType; readonly required: true; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly search: import("m-eleplus-crud/es/utils").EpPropFinalized {}, boolean>; readonly total: import("m-eleplus-crud/es/utils").EpPropFinalized; readonly modelValue: { readonly type: import("vue").PropType>; readonly required: true; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly permission: import("m-eleplus-crud/es/utils").EpPropFinalized { addBtn: boolean; editBtn: boolean; delBtn: boolean; }, boolean>; readonly select: import("m-eleplus-crud/es/utils").EpPropFinalized never[], boolean>; readonly beforeEnter: { readonly type: import("vue").PropType; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly option: { readonly type: import("vue").PropType; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; }>, { /** * @description 新增 */ rowAdd: () => void; /** * @description 编辑 */ rowEdit: (row: any, index: number) => void; /** * @description 查看 */ rowView: (row: any, index: number) => void; /** * @description 删除 */ rowDel: (row: any, index: number) => void; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { search: (form: any) => void; reset: () => void; "update:select": (arr: any[]) => void; sortChange: (data: { column: any; prop: string; order: any; }) => void; "update:modelValue": (value: any) => void; rowSave: (form: any, done: () => void, loading: () => void) => void; rowEdit: (form: any, done: () => void, loading: () => void) => void; rowCancel: (form: any, index: number, type: "view" | "add" | "edit") => void; rowDel: (row: any, index: number) => void; }, string, import("vue").PublicProps, Readonly>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly loading: import("m-eleplus-crud/es/utils").EpPropFinalized; readonly data: { readonly type: import("vue").PropType; readonly required: true; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly search: import("m-eleplus-crud/es/utils").EpPropFinalized {}, boolean>; readonly total: import("m-eleplus-crud/es/utils").EpPropFinalized; readonly modelValue: { readonly type: import("vue").PropType>; readonly required: true; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly permission: import("m-eleplus-crud/es/utils").EpPropFinalized { addBtn: boolean; editBtn: boolean; delBtn: boolean; }, boolean>; readonly select: import("m-eleplus-crud/es/utils").EpPropFinalized never[], boolean>; readonly beforeEnter: { readonly type: import("vue").PropType; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly option: { readonly type: import("vue").PropType; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; }>> & Readonly<{ onSearch?: ((form: any) => any) | undefined; onReset?: (() => any) | undefined; "onUpdate:select"?: ((arr: any[]) => any) | undefined; onSortChange?: ((data: { column: any; prop: string; order: any; }) => any) | undefined; "onUpdate:modelValue"?: ((value: any) => any) | undefined; onRowSave?: ((form: any, done: () => void, loading: () => void) => any) | undefined; onRowEdit?: ((form: any, done: () => void, loading: () => void) => any) | undefined; onRowCancel?: ((form: any, index: number, type: "view" | "add" | "edit") => any) | undefined; onRowDel?: ((row: any, index: number) => any) | undefined; }>, { readonly search: Record; readonly select: unknown[]; readonly loading: import("m-eleplus-crud/es/utils").EpPropMergeType; readonly permission: Record; readonly total: number; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, { searchRef: unknown; tableRef: unknown; formRef: unknown; }, HTMLDivElement>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };