Skip to main content
Module

x/cav/dom.ts>Client

A server framework for Deno
Go to Latest
type alias Client
import { type Client } from "https://deno.land/x/cav@0.2.0-alpha.7/dom.ts";

Client function for making RPC requests to a Cav server.

Type Parameters

optional
T extends Handler = never
definition: (T extends (req: RouterRequest<infer RS>, ...a: any[]) => any ? <P extends Paths<Expand<RS>>, E = KeyInto<Expand<RS>, P>>(x: (ClientArg & { path: P; } & (E extends (req: EndpointRequest<infer ES>, ...a: any[]) => any ? Omit<FixOptionals<ES>, "result"> : E extends string ? { socket?: false; query?: QueryRecord; body?: undefined; } : never))) => (E extends (req: EndpointRequest<infer ES>, ...a: any[]) => any ? (ES extends { socket: true; result: infer R; } ? R : ES extends { result: infer R; } ? Promise<[R, Response]> : never) : E extends string ? (P extends `${string}.txt` ? Promise<[string, Response]> : Promise<[Blob, Response]>) : never) : T extends (req: EndpointRequest<infer ES>, ...a: any[]) => any ? (x: (ClientArg & Omit<FixOptionals<ES>, "result">)) => (ES extends { socket: true; result: infer R; } ? R : ES extends { result: infer R; } ? Promise<[R, Response]> : never) : <S extends boolean = false>(x: (ClientArg & { socket?: S; })) => (S extends true ? WS<unknown, unknown> : Promise<[unknown, Response]>))