/***************************************************************************
 * The contents of this file were generated with Amplify Studio.           *
 * Please refrain from making any modifications to this file.              *
 * Any changes to this file will be overwritten when running amplify pull. *
 **************************************************************************/

import * as React from "react";
import { GridProps, SwitchFieldProps, TextFieldProps } from "@aws-amplify/ui-react";
import { EscapeHatchProps } from "@aws-amplify/ui-react/internal";
import { RecipeIngredient } from "../models";
export declare type ValidationResponse = {
    hasError: boolean;
    errorMessage?: string;
};
export declare type ValidationFunction<T> = (value: T, validationResponse: ValidationResponse) => ValidationResponse | Promise<ValidationResponse>;
export declare type RecipeIngredientUpdateFormInputValues = {
    createdAt?: string;
    updatedAt?: string;
    isDeleted?: boolean;
    index?: string;
    name?: string;
    quantity?: string;
    unit?: string;
};
export declare type RecipeIngredientUpdateFormValidationValues = {
    createdAt?: ValidationFunction<string>;
    updatedAt?: ValidationFunction<string>;
    isDeleted?: ValidationFunction<boolean>;
    index?: ValidationFunction<string>;
    name?: ValidationFunction<string>;
    quantity?: ValidationFunction<string>;
    unit?: ValidationFunction<string>;
};
export declare type PrimitiveOverrideProps<T> = Partial<T> & React.DOMAttributes<HTMLDivElement>;
export declare type RecipeIngredientUpdateFormOverridesProps = {
    RecipeIngredientUpdateFormGrid?: PrimitiveOverrideProps<GridProps>;
    createdAt?: PrimitiveOverrideProps<TextFieldProps>;
    updatedAt?: PrimitiveOverrideProps<TextFieldProps>;
    isDeleted?: PrimitiveOverrideProps<SwitchFieldProps>;
    index?: PrimitiveOverrideProps<TextFieldProps>;
    name?: PrimitiveOverrideProps<TextFieldProps>;
    quantity?: PrimitiveOverrideProps<TextFieldProps>;
    unit?: PrimitiveOverrideProps<TextFieldProps>;
} & EscapeHatchProps;
export declare type RecipeIngredientUpdateFormProps = React.PropsWithChildren<{
    overrides?: RecipeIngredientUpdateFormOverridesProps | undefined | null;
} & {
    id?: string;
    recipeIngredient?: RecipeIngredient;
    onSubmit?: (fields: RecipeIngredientUpdateFormInputValues) => RecipeIngredientUpdateFormInputValues;
    onSuccess?: (fields: RecipeIngredientUpdateFormInputValues) => void;
    onError?: (fields: RecipeIngredientUpdateFormInputValues, errorMessage: string) => void;
    onChange?: (fields: RecipeIngredientUpdateFormInputValues) => RecipeIngredientUpdateFormInputValues;
    onValidate?: RecipeIngredientUpdateFormValidationValues;
} & React.CSSProperties>;
export default function RecipeIngredientUpdateForm(props: RecipeIngredientUpdateFormProps): React.ReactElement;
