import type { TErrorRecord } from "../interfaces/TErrorRecord";
import type { TValidations } from "../interfaces/IValidations";
export declare const useForm: <T extends Record<keyof T, any> = {}>(options?: {
    validations?: Partial<Record<keyof T, import("../interfaces/IValidations").IValidation>> | undefined;
    initialValues?: Partial<T> | undefined;
    onSubmit?: (() => void) | undefined;
    onChange?: ((key: keyof T, value: any) => void) | undefined;
    onError?: (() => void) | undefined;
} | undefined) => {
    data: import("svelte/store").Writable<T>;
    errors: import("svelte/store").Writable<TErrorRecord<T>>;
    handleChange: <S extends unknown>(key: keyof T, sanitizeFn?: ((value: string) => S) | undefined) => (e: any) => void;
    handleChangeValue: <S_1 extends unknown>(key: keyof T, sanitizeFn?: ((value: any) => S_1) | undefined) => (e: any) => void;
    handleSubmit: (e: any) => void;
    handleClear: (e: any) => void;
};
