import { ZodFormClassed } from "zod-helper";
import type { AutoFormProps, ZodSchema } from "../../types/auto-form-type";
type VisibilityState = {
    hidden: boolean;
    disabled: boolean;
};
export default function useFormData<T extends ZodSchema>({ schema, changePositionOfFields, fieldTypeOverrides, groupByZodKeys, visibilityRules, defaultValues, onSubmit, onSubmitError, onValuesChange, isRemoveNullValues, }: AutoFormProps<T> & {
    onValuesChange?: (values: Record<string, unknown>) => void;
}): {
    zodFormData: ZodFormClassed<T>;
    formVersion: number;
    setFormVersion: import("react").Dispatch<import("react").SetStateAction<number>>;
    mergedDefaultValues: Record<string, unknown>;
    formSubmittedRef: import("react").RefObject<boolean>;
    handleSubmit: (props: {
        value: unknown;
    }) => any;
    appForm: import("@tanstack/form-core").FormApi<Record<string, unknown>, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, T, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, unknown> & import("@tanstack/react-form").ReactFormApi<Record<string, unknown>, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, T, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, unknown> & {
        AppField: import("@tanstack/react-form").FieldComponent<Record<string, unknown>, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, T, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<Record<string, unknown>> | undefined, unknown, NoInfer<{
            FieldComponent: typeof import("../../base-components/GenericFormField").default;
            ArrayField: typeof import("../../base-components/ArrayField").ArrayFieldForArrayOfObjects;
            ArrayFieldForArrayOfStrings: typeof import("../../base-components/ArrayField").ArrayFieldForArrayOfStrings;
            ObjectWrapper: typeof import("../../base-components/ObjectWrapper").default;
            ArrayWrapper: typeof import("../../base-components/ArrayWrapper").default;
            GroupedFieldsWrapper: typeof import("../../base-components/GroupedFieldsWrapper").default;
            ArrayInputFieldWrapper: typeof import("../../base-components/ArrayInputFieldWrapper").default;
        }>>;
        AppForm: import("react").ComponentType<import("react").PropsWithChildren>;
    };
    getFieldVisibilityState: (fieldPath: string, formValues: Record<string, unknown>) => VisibilityState;
    isLoading: boolean;
    all_errors: {
        form: {
            errors: (import("@tanstack/form-core").UnwrapFormValidateOrFn<T> | undefined)[];
            errorMap: import("@tanstack/form-core").FormValidationErrorMap<undefined, undefined, undefined, undefined, undefined, import("@tanstack/form-core").UnwrapFormValidateOrFn<T>, undefined, undefined>;
        };
        fields: Record<string, {
            errors: import("@tanstack/form-core").ValidationError[];
            errorMap: import("@tanstack/form-core").ValidationErrorMap;
        }>;
    };
};
export {};
