import { type BaseRecord, type HttpError } from "@refinedev/core";
import type { UseFormReturnType } from "@refinedev/react-hook-form";
import type { DetailedHTMLProps, FormHTMLAttributes, PropsWithChildren } from "react";
import { type FieldValues } from "react-hook-form";
type NativeFormProps = Omit<DetailedHTMLProps<FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>, "onSubmit">;
type FormProps<TQueryFnData extends BaseRecord = BaseRecord, TError extends HttpError = HttpError, TVariables extends FieldValues = FieldValues, TContext extends object = {}, TData extends BaseRecord = TQueryFnData, TResponse extends BaseRecord = TData, TResponseError extends HttpError = TError> = PropsWithChildren & UseFormReturnType<TQueryFnData, TError, TVariables, TContext, TData, TResponse, TResponseError> & {
    formProps?: NativeFormProps;
};
export declare const Form: {
    <TQueryFnData extends BaseRecord = BaseRecord, TError extends HttpError = HttpError, TVariables extends FieldValues = FieldValues, TContext extends object = {}, TData extends BaseRecord = TQueryFnData, TResponse extends BaseRecord = TData, TResponseError extends HttpError = TError>({ formProps, saveButtonProps, ...props }: FormProps<TQueryFnData, TError, TVariables, TContext, TData, TResponse, TResponseError>): import("react/jsx-runtime").JSX.Element;
    Field: (props: import("react-hook-form").UseControllerProps<FieldValues, string> & {
        label?: string | undefined;
        description?: string | undefined;
        className?: string | undefined;
        children: import("react").ReactElement<{
            field: import("react-hook-form").ControllerRenderProps<FieldValues, string>;
        }, string | import("react").JSXElementConstructor<any>>;
    }) => import("react/jsx-runtime").JSX.Element;
    Combobox: import("react").ForwardRefExoticComponent<Omit<Omit<Omit<{
        children?: import("react").ReactNode;
    } & import("react").HTMLAttributes<HTMLDivElement> & {
        label?: string | undefined;
        shouldFilter?: boolean | undefined;
        filter?: ((value: string, search: string) => number) | undefined;
        value?: string | undefined;
        onValueChange?: ((value: string) => void) | undefined;
        loop?: boolean | undefined;
    } & import("react").RefAttributes<HTMLDivElement>, "ref">, "onChange|onValueChange|value"> & {
        queryResult: import("@tanstack/query-core").QueryObserverResult<import("@refinedev/core").GetListResponse<import("@refinedev/core").BaseOption>, any>;
        defaultValueQueryResult: import("@tanstack/query-core").QueryObserverResult<import("@refinedev/core").GetManyResponse<import("@refinedev/core").BaseOption>>;
        onSearch: (value: string) => void;
        options: import("@refinedev/core").BaseOption[];
    } & import("@refinedev/core").UseLoadingOvertimeReturnType & {
        placeholder?: string | undefined;
        emptyMessage?: string | undefined;
        onChange?: ((value: string | number) => void) | undefined;
        value?: string | number | BaseRecord | undefined;
    }, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
    Select: import("react").ForwardRefExoticComponent<import("@radix-ui/react-select").SelectProps & {
        placeholder?: string | undefined;
        emptyMessage?: string | undefined;
        onChange?: ((value: string) => void) | undefined;
        options?: import("@refinedev/core").BaseOption[] | undefined;
    } & import("react").RefAttributes<HTMLDivElement>>;
};
export {};
//# sourceMappingURL=index.d.ts.map