import type { ReactElement, ReactNode } from "react";
import type { Control, FormState, UseFormRegister, UseFormWatch } from "react-hook-form";
import type { FormInputsByTableName, Operation, TableItemType, TableName } from "../types.js";
type Input = {
    label: string;
    Input: () => string | React.JSX.Element;
    inputLabel?: ReactNode | null;
};
type Props = {
    tableName: TableName;
    tableItem: TableItemType<TableName> | undefined | null;
    operation: Operation;
    formState: FormState<FormInputsByTableName[TableName]>;
    register: UseFormRegister<FormInputsByTableName[TableName]>;
    watch: UseFormWatch<FormInputsByTableName[TableName]>;
    control: Control<FormInputsByTableName[TableName]>;
};
export declare function useFormInputs(props: Props): {
    inputs: Input[];
    additionalInputs?: ReactElement;
};
export {};
//# sourceMappingURL=useFormInputs.d.ts.map