@sparklink-pro/apant
Version:
Apollo & Antd tools
62 lines • 2.54 kB
TypeScript
import React from 'react';
import { FormProps as FormAntProps, FormItemProps, FormInstance } from 'antd';
import { FormListProps } from 'antd/lib/form';
import { NamePath } from 'antd/lib/form/interface';
import { FormConfigurationType, FormContextType, FormEntryResolvedType } from '../definitions';
import { useFilterValues } from '../hooks/Form/useFilterValues';
export type FieldsContextType = {
context: FormContextType;
fields: FormEntryResolvedType[];
isList?: boolean;
listPath?: NamePath;
};
export declare const FieldsContext: React.Context<FieldsContextType>;
export declare const FormDisabledContext: React.Context<boolean>;
export declare function FormItem({ name, widgetProps, ...props }: {
widgetProps?: object;
} & FormItemProps): import("react/jsx-runtime").JSX.Element | null;
export declare function FormList({ name, children, ...props }: {
children?: FormListProps['children'];
} & Omit<FormListProps, 'children'>): import("react/jsx-runtime").JSX.Element | null;
export declare function FormItems({ names, group }: {
names?: NamePath[];
group?: string;
}): import("react/jsx-runtime").JSX.Element;
export type FormProps = {
debug?: boolean;
config: FormConfigurationType;
context: Omit<FormContextType, 'form'>;
header?: React.ReactNode;
footer?: React.ReactNode;
children?: React.ReactNode | ((props: {
fields: FormEntryResolvedType[];
form: FormInstance;
isSubmitting: boolean;
}) => React.ReactNode);
onValues?: (values: object, context: FormContextType) => Promise<object>;
onSubmitState?: (isSubmitting: boolean) => void;
formRef?: React.Ref<FormInstance>;
} & Omit<FormAntProps, 'children'>;
export type FormHandleType = {
filterValues: typeof useFilterValues;
};
/**
* Render a antd form wrapper with the list of fields.
*/
export declare const Form: React.ForwardRefExoticComponent<{
debug?: boolean;
config: FormConfigurationType;
context: Omit<FormContextType, "form">;
header?: React.ReactNode;
footer?: React.ReactNode;
children?: React.ReactNode | ((props: {
fields: FormEntryResolvedType[];
form: FormInstance;
isSubmitting: boolean;
}) => React.ReactNode);
onValues?: (values: object, context: FormContextType) => Promise<object>;
onSubmitState?: (isSubmitting: boolean) => void;
formRef?: React.Ref<FormInstance>;
} & Omit<FormAntProps<any>, "children"> & React.RefAttributes<unknown>>;
export default Form;
//# sourceMappingURL=Form.d.ts.map