import { z } from 'zod';
import { type ErrorActionResult, type InvalidActionResult } from './types.js';
export declare class ActionClient {
    handleError: boolean;
    constructor(options?: {
        handleError: boolean;
    });
    action: <Schema extends z.ZodTypeAny>(schema: Schema, fn: ({ data, formData, }: {
        data: z.infer<Schema>;
        formData: FormData;
    }) => unknown) => (_prevState: unknown, data: FormData) => Promise<InvalidActionResult<Schema> | ErrorActionResult<Schema> | {
        success: true;
        formData: z.TypeOf<Schema>;
        successData: any;
        invalid: undefined;
        error: undefined;
    }>;
    actionWithParam: <Schema extends z.ZodTypeAny>(schema: Schema, fn: ({ param, data, formData, }: {
        param: string;
        data: z.infer<Schema>;
        formData: FormData;
    }) => unknown) => (param: string, _prevState: unknown, data: FormData) => Promise<InvalidActionResult<Schema> | ErrorActionResult<Schema> | {
        success: true;
        formData: z.TypeOf<Schema>;
        successData: any;
        invalid: undefined;
        error: undefined;
    }>;
}
//# sourceMappingURL=actions.d.ts.map