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