Module: @ts-rest/next
Classes​
Type Aliases​
InitClientArgs​
Ƭ InitClientArgs: ClientArgs
& { throwOnUnknownStatus?
: boolean
}
Defined in​
libs/ts-rest/next/src/lib/next-client.ts:37
InitClientReturn​
Ƭ InitClientReturn<T
, TClientArgs
>: RecursiveProxyObj
<T
, TClientArgs
>
Type parameters​
Name | Type |
---|---|
T | extends AppRouter |
TClientArgs | extends ClientArgs |
Defined in​
libs/ts-rest/next/src/lib/next-client.ts:32
Functions​
createNextRoute​
â–¸ createNextRoute<T
>(appRouter
, implementation
): T
extends AppRouter
? RecursiveRouterObj
<T
> : T
extends AppRoute
? AppRouteImplementation
<T
> : never
Create the implementation for a given AppRouter.
Type parameters​
Name | Type |
---|---|
T | extends AppRoute | AppRouter |
Parameters​
Name | Type | Description |
---|---|---|
appRouter | T | AppRouter |
implementation | T extends AppRouter ? RecursiveRouterObj <T > : T extends AppRoute ? AppRouteImplementation <T > : never | Implementation of the AppRouter, e.g. your API controllers |
Returns​
T
extends AppRouter
? RecursiveRouterObj
<T
> : T
extends AppRoute
? AppRouteImplementation
<T
> : never
Defined in​
libs/ts-rest/next/src/lib/ts-rest-next.ts:171
createNextRouter​
â–¸ createNextRouter<T
>(routes
, obj
, options?
): (req
: NextApiRequest
, res
: NextApiResponse
) => Promise
<void
| NextApiResponse
<any
>>
Turn a completed set of Next routes into a Next.js compatible route.
Should be exported from your [...ts-rest].tsx file.
e.g.
export default createNextRouter(contract, implementation);
Type parameters​
Name | Type |
---|---|
T | extends AppRouter |
Parameters​
Name | Type |
---|---|
routes | T |
obj | RecursiveRouterObj <T > |
options? | CreateNextRouterOptions |
Returns​
fn
â–¸ (req
, res
): Promise
<void
| NextApiResponse
<any
>>
Parameters​
Name | Type |
---|---|
req | NextApiRequest |
res | NextApiResponse |
Returns​
Promise
<void
| NextApiResponse
<any
>>
Defined in​
libs/ts-rest/next/src/lib/ts-rest-next.ts:196
createSingleRouteHandler​
â–¸ createSingleRouteHandler<T
>(appRoute
, implementationHandler
, options?
): (req
: NextApiRequest
, res
: NextApiResponse
) => Promise
<void
| NextApiResponse
<any
>>
Turn a contract route and a handler into a Next.js compatible handler Should be exported from your pages/api/path/to/handler.tsx file.
e.g.
export default createNextRouter(contract, implementationHandler);
Type parameters​
Name | Type |
---|---|
T | extends AppRoute |
Parameters​
Name | Type |
---|---|
appRoute | AppRoute |
implementationHandler | AppRouteImplementation <T > |
options? | CreateNextRouterOptions |
Returns​
fn
â–¸ (req
, res
): Promise
<void
| NextApiResponse
<any
>>
Parameters​
Name | Type |
---|---|
req | NextApiRequest |
res | NextApiResponse |
Returns​
Promise
<void
| NextApiResponse
<any
>>
Defined in​
libs/ts-rest/next/src/lib/ts-rest-next.ts:237
initNextClient​
â–¸ initNextClient<T
, TClientArgs
>(router
, args
): RecursiveProxyObj
<T
, TClientArgs
>
Type parameters​
Name | Type |
---|---|
T | extends AppRouter |
TClientArgs | extends InitClientArgs |
Parameters​
Name | Type |
---|---|
router | T |
args | TClientArgs |
Returns​
RecursiveProxyObj
<T
, TClientArgs
>
Deprecated
use initClient
from @ts-rest/core
instead
Defined in​
libs/ts-rest/next/src/lib/next-client.ts:48
isAppRouteWithImplementation​
â–¸ isAppRouteWithImplementation(obj
): obj is any
Parameters​
Name | Type |
---|---|
obj | any |
Returns​
obj is any
Defined in​
libs/ts-rest/next/src/lib/ts-rest-next.ts:92