import { IFormController, IFormItemBasic, IFormItemBasicController, IFormItemBasicState } from '../../interface'; /** * 表单项基础控制器 * * @author zhanghanrui * @date 2024-04-01 14:04:08 * @export * @abstract * @class FormItemBasicController * @implements {IFormItemBasicController} */ export declare abstract class FormItemBasicController implements IFormItemBasicController { protected readonly form: IFormController; readonly model: IFormItemBasic; /** * 表单项类型 * * @author zhanghanrui * @date 2024-04-01 14:04:45 * @abstract * @type {string} */ abstract readonly type: string; /** * 表单项基础状态 * * @description 禁止直接重写new实例,如果要覆盖重写 crateItemState 方法 * @author zhanghanrui * @date 2024-04-02 22:04:07 * @type {IFormItemBasicState} */ state: IFormItemBasicState; get data(): any; /** * Creates an instance of FormItemBasicController. * * @author zhanghanrui * @date 2024-04-02 09:04:55 * @param {IFormController} form * @param {IFormItemBasic} model */ constructor(form: IFormController, model: IFormItemBasic); protected init(): void; destroy(): void; protected crateItemState(): IFormItemBasicState; } /** * 加载表单项控制器实例 * * @author zhanghanrui * @date 2024-04-02 22:04:51 * @export * @template T * @param {() => T} fn * @return {*} {T} */ export declare function useFormItemController(fn: () => T): T;