UNPKG

@ts-rest/nest

Version:

Nest server integration for @ts-rest

712 lines (711 loc) 33.7 kB
import { Reflector } from '@nestjs/core'; import { Observable } from 'rxjs'; import { BadRequestException, CallHandler, ExecutionContext, HttpException, HttpExceptionOptions, InternalServerErrorException, NestInterceptor } from '@nestjs/common'; import { AppRoute, AppRouter, ServerInferResponses } from '@ts-rest/core'; import { TsRestRequestShape } from './ts-rest-request.decorator'; import { z } from 'zod'; import { MaybeTsRestOptions, TsRestOptions } from './ts-rest-options'; export declare class RequestValidationError extends BadRequestException { pathParams: z.ZodError | null; headers: z.ZodError | null; query: z.ZodError | null; body: z.ZodError | null; constructor(pathParams: z.ZodError | null, headers: z.ZodError | null, query: z.ZodError | null, body: z.ZodError | null); } export declare const RequestValidationErrorSchema: z.ZodObject<{ paramsResult: z.ZodNullable<z.ZodObject<{ name: z.ZodLiteral<"ZodError">; issues: z.ZodArray<z.ZodObject<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, "strip", z.ZodAny, z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">, z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">>, "many">; }, "strip", z.ZodTypeAny, { name: "ZodError"; issues: z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; }, { name: "ZodError"; issues: z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; }>>; headersResult: z.ZodNullable<z.ZodObject<{ name: z.ZodLiteral<"ZodError">; issues: z.ZodArray<z.ZodObject<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, "strip", z.ZodAny, z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">, z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">>, "many">; }, "strip", z.ZodTypeAny, { name: "ZodError"; issues: z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; }, { name: "ZodError"; issues: z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; }>>; queryResult: z.ZodNullable<z.ZodObject<{ name: z.ZodLiteral<"ZodError">; issues: z.ZodArray<z.ZodObject<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, "strip", z.ZodAny, z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">, z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">>, "many">; }, "strip", z.ZodTypeAny, { name: "ZodError"; issues: z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; }, { name: "ZodError"; issues: z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; }>>; bodyResult: z.ZodNullable<z.ZodObject<{ name: z.ZodLiteral<"ZodError">; issues: z.ZodArray<z.ZodObject<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, "strip", z.ZodAny, z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">, z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">>, "many">; }, "strip", z.ZodTypeAny, { name: "ZodError"; issues: z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; }, { name: "ZodError"; issues: z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; }>>; }, "strip", z.ZodTypeAny, { paramsResult: { name: "ZodError"; issues: z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; } | null; headersResult: { name: "ZodError"; issues: z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; } | null; queryResult: { name: "ZodError"; issues: z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; } | null; bodyResult: { name: "ZodError"; issues: z.objectOutputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; } | null; }, { paramsResult: { name: "ZodError"; issues: z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; } | null; headersResult: { name: "ZodError"; issues: z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; } | null; queryResult: { name: "ZodError"; issues: z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; } | null; bodyResult: { name: "ZodError"; issues: z.objectInputType<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; message: z.ZodOptional<z.ZodString>; code: z.ZodNativeEnum<{ invalid_type: "invalid_type"; invalid_literal: "invalid_literal"; custom: "custom"; invalid_union: "invalid_union"; invalid_union_discriminator: "invalid_union_discriminator"; invalid_enum_value: "invalid_enum_value"; unrecognized_keys: "unrecognized_keys"; invalid_arguments: "invalid_arguments"; invalid_return_type: "invalid_return_type"; invalid_date: "invalid_date"; invalid_string: "invalid_string"; too_small: "too_small"; too_big: "too_big"; invalid_intersection_types: "invalid_intersection_types"; not_multiple_of: "not_multiple_of"; not_finite: "not_finite"; }>; }, z.ZodAny, "strip">[]; } | null; }>; export declare class ResponseValidationError extends InternalServerErrorException { appRoute: AppRoute; error: z.ZodError; constructor(appRoute: AppRoute, error: z.ZodError); } export declare const TsRestHandler: (appRouterOrRoute: AppRouter | AppRoute, options?: TsRestOptions) => MethodDecorator; type NestHandlerImplementation<T extends AppRouter | AppRoute> = T extends AppRoute ? (args: TsRestRequestShape<T>) => Promise<ServerInferResponses<T>> : { [K in keyof T]: T[K] extends AppRoute ? (args: TsRestRequestShape<T[K]>) => Promise<ServerInferResponses<T[K]>> : never; }; /** * * @param contract - The contract or route to implement * @param implementation - Implementation of the route or entire contract as an object * @returns */ export declare const tsRestHandler: <T extends AppRoute | AppRouter>(contract: T, implementation: NestHandlerImplementation<T>) => NestHandlerImplementation<T>; /** * Error you can throw to return a response from a handler */ export declare class TsRestException<T extends AppRoute> extends HttpException { constructor(route: T, response: ServerInferResponses<T>, options?: HttpExceptionOptions); } export declare class TsRestHandlerInterceptor implements NestInterceptor { private reflector; private globalOptions; constructor(reflector: Reflector, globalOptions: MaybeTsRestOptions); /** * We use metadata to store the route, and the key of the route in a router on a given method */ private getAppRouteFromContext; intercept(ctx: ExecutionContext, next: CallHandler<any>): Observable<any>; } export {};