UNPKG

1.27 kBTypeScriptView Raw
1import * as React from 'react';
2import { List } from 'rc-field-form';
3import { FormProps as RcFormProps } from 'rc-field-form/lib/Form';
4import { Options } from 'scroll-into-view-if-needed';
5import { ColProps } from '../grid/col';
6import { FormLabelAlign } from './interface';
7import useForm, { FormInstance } from './hooks/useForm';
8import { SizeType } from '../config-provider/SizeContext';
9export declare type RequiredMark = boolean | 'optional';
10export declare type FormLayout = 'horizontal' | 'inline' | 'vertical';
11export interface FormProps<Values = any> extends Omit<RcFormProps<Values>, 'form'> {
12 prefixCls?: string;
13 colon?: boolean;
14 name?: string;
15 layout?: FormLayout;
16 labelAlign?: FormLabelAlign;
17 labelCol?: ColProps;
18 wrapperCol?: ColProps;
19 form?: FormInstance<Values>;
20 size?: SizeType;
21 scrollToFirstError?: Options | boolean;
22 requiredMark?: RequiredMark;
23 /** @deprecated Will warning in future branch. Pls use `requiredMark` instead. */
24 hideRequiredMark?: boolean;
25}
26declare const Form: <Values = any>(props: FormProps<Values> & {
27 children?: React.ReactNode;
28} & {
29 ref?: React.Ref<FormInstance<Values>> | undefined;
30}) => React.ReactElement;
31export { useForm, List, FormInstance };
32export default Form;