react-server-actions
Version:
A package for working with actions in React and Next.js
34 lines • 1.19 kB
TypeScript
import { z } from 'zod';
export type IdleActionResult<Schema extends z.ZodTypeAny> = {
success: false;
formData: z.infer<Schema> | undefined;
successData: undefined;
invalid: undefined;
error: undefined;
};
export type SuccessActionResult<Schema extends z.ZodTypeAny> = {
success: true;
formData: z.infer<Schema> | undefined;
successData: any;
invalid: undefined;
error: undefined;
};
export type InvalidActionResult<Schema extends z.ZodTypeAny> = {
success: false;
formData: z.infer<Schema> | undefined;
successData: undefined;
invalid: FieldErrors<Schema> | undefined;
error: undefined;
};
export type ErrorActionResult<Schema extends z.ZodTypeAny> = {
success: false;
formData: z.infer<Schema> | undefined;
successData: undefined;
invalid: undefined;
error: string;
};
export type ActionResult<Schema extends z.ZodTypeAny> = IdleActionResult<Schema> | SuccessActionResult<Schema> | InvalidActionResult<Schema> | ErrorActionResult<Schema>;
export type FieldErrors<Schema extends z.ZodTypeAny> = {
[key in keyof Partial<z.TypeOf<Schema>>]: string[] | undefined;
};
//# sourceMappingURL=types.d.ts.map