import React from 'react'; import { FormProps as AntdFormProps } from 'antd/lib/form/Form'; import { FormItemProps as AFormItemProps } from 'antd/lib/form/FormItem'; import { FormInstance } from 'rc-field-form/lib/interface'; import { InputProps } from 'antd/lib/input'; import { SwitchProps } from 'antd/lib/switch'; import { SelectProps } from './Select'; import { InputNumberProps } from './InputNumber'; import { FormItemTypes } from './util'; export declare type ExtraItemProps = { name: string; render(): React.ReactNode; }; export interface ExtendFormItemProps extends AFormItemProps { type?: keyof typeof FormItemTypes | string; options?: InputProps | SelectProps | InputNumberProps | SwitchProps; ghost?: string | boolean; } export interface FormItemProps extends Omit { required?: string | boolean; } export interface FormProps extends AntdFormProps { formItems: FormItemProps[]; groupNumber?: number; extra?: ExtraItemProps[]; } export interface FormRefProps extends FormInstance { }