import { Ref } from 'vue'; import { ApiUrls, UserFuncInfo } from 'star-horse-lowcode'; export interface CommonPageProps { currentPageClass: string; preview: boolean; compList: any[]; } export interface CommonPageOptions { props: CommonPageProps; formRef: Ref; /** 是否启用 ON_CHANGE 规则引擎(300ms 防抖 watch formData) */ enableOnChange?: boolean; /** 默认数据源 URL */ defaultDataUrl?: ApiUrls; /** 加载完成后是否自动调用 tableRef.loadByPage */ autoLoad?: boolean; tableRef?: Ref; } /** 默认按钮权限:增/改/查/删 */ export declare const DEFAULT_BTN_PERMISSIONS: { add: string; edit: string; view: string; delete: string; }; export declare const useCommonPage: (options: CommonPageOptions) => { isLoading: Ref; hasData: Ref; errorMsg: Ref; primaryKey: Ref; rules: Ref; relationTables: Ref; tableFieldList: Ref; searchFormData: Ref; dataUrl: Ref<{ pageListUrl: string; mergeUrl: string; mergeDraftUrl: string; batchMergeUrl: string; batchMergeDraftUrl: string; loadByIdUrl: string; loadByIdForViewUrl: string; deleteUrl: string; deleteByConditionUrl?: string; exportAllUrl?: string; downloadTemplateUrl?: string; listConditionUrl?: string; oneConditionUrl?: string; uploadUrl?: string; importUrl?: string; analyzeDataUrl?: string; executeUrl?: string; modifyColumnsUrl?: string; customerUrl1?: string; customerUrl2?: string; customerUrl3?: string; customerUrl4?: string; customerUrl5?: string; basePrefix?: string; permissionsUrl?: string; redirectExecutionUrl?: string; redirectPageListUrl?: string; exportSingleDataUrl?: string; appName?: string; subPrefix?: string; condition?: { propertyName?: string; operation?: string | null; value?: any; orOperList?: /*elided*/ any[]; }[]; redirect?: boolean; httpMethod?: string; dataType?: string; pageAction?: Function; mergeAction?: Function; mergeDraftAction?: Function; batchMergeAction?: Function; batchMergeDraftAction?: Function; loadByIdAction?: Function; deleteAction?: Function; deleteByConditionAction?: Function; exportDataAction?: Function; downloadTemplateAction?: Function; queryConditionAction?: Function; queryOneByConditionAction?: Function; uploadAction?: Function; importAction?: Function; analyzeAction?: Function; executeAction?: Function; modifyColumnsAction?: Function; exportSingleDataAction?: Function; }, ApiUrls | { pageListUrl: string; mergeUrl: string; mergeDraftUrl: string; batchMergeUrl: string; batchMergeDraftUrl: string; loadByIdUrl: string; loadByIdForViewUrl: string; deleteUrl: string; deleteByConditionUrl?: string; exportAllUrl?: string; downloadTemplateUrl?: string; listConditionUrl?: string; oneConditionUrl?: string; uploadUrl?: string; importUrl?: string; analyzeDataUrl?: string; executeUrl?: string; modifyColumnsUrl?: string; customerUrl1?: string; customerUrl2?: string; customerUrl3?: string; customerUrl4?: string; customerUrl5?: string; basePrefix?: string; permissionsUrl?: string; redirectExecutionUrl?: string; redirectPageListUrl?: string; exportSingleDataUrl?: string; appName?: string; subPrefix?: string; condition?: { propertyName?: string; operation?: string | null; value?: any; orOperList?: /*elided*/ any[]; }[]; redirect?: boolean; httpMethod?: string; dataType?: string; pageAction?: Function; mergeAction?: Function; mergeDraftAction?: Function; batchMergeAction?: Function; batchMergeDraftAction?: Function; loadByIdAction?: Function; deleteAction?: Function; deleteByConditionAction?: Function; exportDataAction?: Function; downloadTemplateAction?: Function; queryConditionAction?: Function; queryOneByConditionAction?: Function; uploadAction?: Function; importAction?: Function; analyzeAction?: Function; executeAction?: Function; modifyColumnsAction?: Function; exportSingleDataAction?: Function; }>; dateFields: Ref; fieldMappingList: Ref; dataSource: Ref; extBtns: Ref<{ authority?: string; funcName?: string | Function; btnName?: string; icon?: string; priority?: number; helpMsg?: string; disabled?: string; position?: "table" | "toolbar"; override?: boolean; children?: /*elided*/ any[]; }[], UserFuncInfo[] | { authority?: string; funcName?: string | Function; btnName?: string; icon?: string; priority?: number; helpMsg?: string; disabled?: string; position?: "table" | "toolbar"; override?: boolean; children?: /*elided*/ any[]; }[]>; dialogProps: { batchDialogTitle?: string; dialogTitle?: string; batchEditVisible?: boolean; editVisible?: boolean; uploadVisible?: boolean; viewVisible?: boolean; bakeVisible1?: boolean; bakeVisible2?: boolean; bakeVisible3?: boolean; ids?: any; isExpand?: boolean; expandUrl?: { pageListUrl: string; mergeUrl: string; mergeDraftUrl: string; batchMergeUrl: string; batchMergeDraftUrl: string; loadByIdUrl: string; loadByIdForViewUrl: string; deleteUrl: string; deleteByConditionUrl?: string; exportAllUrl?: string; downloadTemplateUrl?: string; listConditionUrl?: string; oneConditionUrl?: string; uploadUrl?: string; importUrl?: string; analyzeDataUrl?: string; executeUrl?: string; modifyColumnsUrl?: string; customerUrl1?: string; customerUrl2?: string; customerUrl3?: string; customerUrl4?: string; customerUrl5?: string; basePrefix?: string; permissionsUrl?: string; redirectExecutionUrl?: string; redirectPageListUrl?: string; exportSingleDataUrl?: string; appName?: string; subPrefix?: string; condition?: { propertyName?: string; operation?: string | null; value?: any; orOperList?: /*elided*/ any[]; }[]; redirect?: boolean; httpMethod?: string; dataType?: string; pageAction?: Function; mergeAction?: Function; mergeDraftAction?: Function; batchMergeAction?: Function; batchMergeDraftAction?: Function; loadByIdAction?: Function; deleteAction?: Function; deleteByConditionAction?: Function; exportDataAction?: Function; downloadTemplateAction?: Function; queryConditionAction?: Function; queryOneByConditionAction?: Function; uploadAction?: Function; importAction?: Function; analyzeAction?: Function; executeAction?: Function; modifyColumnsAction?: Function; exportSingleDataAction?: Function; }; }; ruleFormId: import('vue').ComputedRef; ruleFormData: import('vue').ComputedRef; ruleLoading: Ref; currentFormId: import('vue').ComputedRef; isEnabled: import('vue').ComputedRef; triggerOnLoad: () => Promise; triggerOnSubmit: () => Promise; triggerOnChange: () => Promise<{ success: boolean; fieldActions: import('../rule/useRuleEngine').FieldAction[]; }>; triggerOnValidate: () => Promise<{ success: boolean; fieldActions: import('../rule/useRuleEngine').FieldAction[]; }>; triggerButtonClick: (buttonKey?: string, evtName?: string) => Promise<{ success: boolean; fieldActions: import('../rule/useRuleEngine').FieldAction[]; }>; onFormDataLoaded: () => Promise; handleBeforeSubmit: ({ type, formData: fd, }: { type: string; formData: any; }) => Promise; loadFormData: () => Promise; dataFormat: (name: string, cellValue: any, row?: any) => any; dataRecall: (formData: any, _result?: any, tr?: Ref) => void; init: () => Promise; deleteVisible: Ref; deleteLoading: Ref; pendingDeleteRows: Ref; handleDelete: (rows: any | any[]) => void; confirmDelete: (deleteFn?: (rows: any[]) => Promise) => Promise; };