import type { Rule, RuleObject, RuleRender } from 'rc-field-form/lib/interface'; import type { ListProps as KpFormListProps } from 'rc-field-form/lib/List'; import type { KpFormConfigType } from './context'; import { KpFormConfigProvider, KpFormContext, KpFormProvider } from './context'; import type { KpFormInstance, KpFormProps } from './Form'; import InternalForm, { List, useForm } from './Form'; import type { KpItemProps } from './Item'; import KpFormItem from './Item'; import createItem from './Schema/createItem'; import type { KpSchemaFormProps } from './Schema/Form'; import KpSchemaForm from './Schema/Form'; import type { KpSchemaItemProps } from './Schema/Item'; import KpSchemaItem from './Schema/Item'; import type { NamePath } from './types'; import * as utils from './util/omit'; declare type InternalFormType = typeof InternalForm; interface FormInterface extends InternalFormType { useForm: typeof useForm; Item: typeof KpFormItem; List: typeof List; SchemaForm: typeof KpSchemaForm; SchemaItem: typeof KpSchemaItem; Provider: typeof KpFormProvider; ConfigProvider: typeof KpFormConfigProvider; } declare const Form: FormInterface; export type { KpFormProps, KpItemProps, KpSchemaFormProps, KpSchemaItemProps, KpFormInstance, KpFormConfigType, Rule, RuleObject, RuleRender, KpFormListProps, NamePath, }; export { useForm, KpFormItem, createItem, KpSchemaForm, KpSchemaItem, KpFormProvider, KpFormConfigProvider, KpFormContext, utils, }; export default Form;