Home / Type/ ActionClient Type — astro Architecture

ActionClient Type — astro Architecture

Architecture documentation for the ActionClient type/interface in types.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  b2403c7b_1e92_7336_2d10_33f0c1bd66be["ActionClient"]
  bdc6ff27_167d_e3f3_67b4_3308b4d8fd29["types.ts"]
  b2403c7b_1e92_7336_2d10_33f0c1bd66be -->|defined in| bdc6ff27_167d_e3f3_67b4_3308b4d8fd29
  style b2403c7b_1e92_7336_2d10_33f0c1bd66be fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/actions/runtime/types.ts lines 28–52

export type ActionClient<
	TOutput,
	TAccept extends ActionAccept | undefined,
	TInputSchema extends z.$ZodType | undefined,
> = TInputSchema extends z.$ZodType
	? ((
			input: TAccept extends 'form' ? FormData : z.input<TInputSchema>,
		) => Promise<
			SafeResult<
				z.input<TInputSchema> extends ErrorInferenceObject
					? z.input<TInputSchema>
					: ErrorInferenceObject,
				Awaited<TOutput>
			>
		>) & {
			queryString: string;
			orThrow: (
				input: TAccept extends 'form' ? FormData : z.input<TInputSchema>,
			) => Promise<Awaited<TOutput>>;
		} & {
			[key in InferKey]: TInputSchema;
		}
	: ((input?: any) => Promise<SafeResult<never, Awaited<TOutput>>>) & {
			orThrow: (input?: any) => Promise<Awaited<TOutput>>;
		};

Frequently Asked Questions

What is the ActionClient type?
ActionClient is a type/interface in the astro codebase, defined in packages/astro/src/actions/runtime/types.ts.
Where is ActionClient defined?
ActionClient is defined in packages/astro/src/actions/runtime/types.ts at line 28.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free