next-safe-action
Version:
Type safe and validated Server Actions in your Next.js project.
38 lines (35 loc) • 1.23 kB
text/typescript
import { Schema } from "./adapters/types.mjs";
import {
d as HookSafeStateActionFn,
a as HookBaseUtils,
b as HookCallbacks,
g as UseStateActionHookReturn,
} from "./hooks.types-CuSFdF4W.mjs";
import "@sinclair/typebox";
import "valibot";
import "yup";
import "zod";
import "./index.types-Cct3QIs2.mjs";
/**
* Use the stateful action from a Client Component via hook. Used for actions defined with [`stateAction`](https://next-safe-action.dev/docs/define-actions/instance-methods#action--stateaction).
* @param safeActionFn The action function
* @param utils Optional `initResult`, `permalink`, base utils and callbacks
*
* {@link https://next-safe-action.dev/docs/execute-actions/hooks/usestateaction See docs for more information}
*/
declare const useStateAction: <
ServerError,
S extends Schema | undefined,
const BAS extends readonly Schema[],
CVE,
CBAVE,
Data,
>(
safeActionFn: HookSafeStateActionFn<ServerError, S, BAS, CVE, CBAVE, Data>,
utils?: {
initResult?: Awaited<ReturnType<typeof safeActionFn>>;
permalink?: string;
} & HookBaseUtils<S> &
HookCallbacks<ServerError, S, BAS, CVE, CBAVE, Data>
) => UseStateActionHookReturn<ServerError, S, BAS, CVE, CBAVE, Data>;
export { useStateAction };