Skip to content

Cerces


Cerces / core / Router

Class: Router<PsBase, PsThis>

Defined in: src/core.ts:84

Extended by

Type Parameters

PsBase

PsBase extends GenericRouteParameters<PsBase> = { }

PsThis

PsThis extends GenericRouteParameters<PsThis> = { }

Constructors

Constructor

new Router<PsBase, PsThis>(init): Router<PsBase, PsThis>

Defined in: src/core.ts:100

Parameters

init
base

PsBase

tags?

string[]

deprecated?

boolean

includeInSchema?

boolean

security?

SecurityRequirementObject[]

responses?

Record<number, ResponseConfig>

defaultResponseClass?

ResponseClass

middleware?

Middleware[]

parameters?

PsThis & DisallowDependencyParameters<ImplicitParameters<PsThis>> & DisallowBaseDependencyParameters<ImplicitParameters<PsBase>> & DisallowBaseParameters<PsBase> & DisallowRuntimeParameters<PsThis>

Returns

Router<PsBase, PsThis>

Properties

rootPath

readonly rootPath: string = "/"

Defined in: src/core.ts:89


tags

tags: string[]

Defined in: src/core.ts:90


deprecated

deprecated: boolean

Defined in: src/core.ts:91


includeInSchema

includeInSchema: boolean

Defined in: src/core.ts:92


responses

responses: Record<number, ResponseConfig>

Defined in: src/core.ts:93


security?

optional security: SecurityRequirementObject[]

Defined in: src/core.ts:94


defaultResponseClass

defaultResponseClass: ResponseClass

Defined in: src/core.ts:95


parameters

parameters: PsThis

Defined in: src/core.ts:96


middleware

middleware: Middleware[]

Defined in: src/core.ts:97


routeMatcher

routeMatcher: RouteMatcher

Defined in: src/core.ts:98

Methods

get()

get<Ps, R>(path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:140

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


post()

post<Ps, R>(path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:146

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


put()

put<Ps, R>(path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:152

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


delete()

delete<Ps, R>(path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:158

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


patch()

patch<Ps, R>(path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:164

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


head<Ps, R>(path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:170

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


trace()

trace<Ps, R>(path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:176

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


options()

options<Ps, R>(path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:182

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


route()

route<Ps, R>(method, path, unboundRoute): Route<PsThis & PsBase, Ps, R>

Defined in: src/core.ts:189

Type Parameters

Ps

Ps extends RouteParameters = { }

R

R = unknown

Parameters

method

HTTPMethod

path

PathStringOf<Omit<FlattenParameters<Ps>, keyof FlattenParameters<PsThis & PsBase>>>

unboundRoute

UnboundRoute<PsThis & PsBase, Ps, R>

Returns

Route<PsThis & PsBase, Ps, R>


include()

include<Ps>(prefix, router): void

Defined in: src/core.ts:216

Type Parameters

Ps

Ps extends RouteParameters

Parameters

prefix

PathString<keyof { [K in string | number | symbol as Omit<UnionToIntersection<{ [K in string | number | symbol]: (...)[(...)] extends DependsParameter<(...), (...)> ? (...) & (...) : { [P in (...)]: (...) } }[keyof Ps]>, keyof UnionToIntersection<{ [K in (...) | (...) | (...)]: (...) extends (...) ? (...) : (...) }[keyof (...) | keyof (...)]>>[K] extends PathParameter<Schema> ? Schema extends ZodOptional<ZodType<unknown, unknown, $ZodTypeInternals<unknown, unknown>>> ? never : K : never]: Omit<UnionToIntersection<{ [K in string | number | symbol]: Ps[K] extends DependsParameter<any, PsDepend> ? UnionToIntersection<(...)> & { [P in (...)]: (...) } : { [P in (...) | (...) | (...)]: (...)[(...)] } }[keyof Ps]>, keyof UnionToIntersection<{ [K in string | number | symbol]: (...)[(...)] extends DependsParameter<(...), (...)> ? (...) & (...) : { [P in (...)]: (...) } }[keyof PsThis | keyof PsBase]>>[K] }>

router

Router<PsThis & PsBase, Ps>

Returns

void