| /** | |
| * @since 1.0.0 | |
| */ | |
| import * as internal from "./internal/router.js" | |
| /** | |
| * @since 1.0.0 | |
| * @category models | |
| */ | |
| export interface RouterConfig { | |
| readonly ignoreTrailingSlash: boolean | |
| readonly ignoreDuplicateSlashes: boolean | |
| readonly caseSensitive: boolean | |
| readonly maxParamLength: number | |
| } | |
| /** | |
| * @since 1.0.0 | |
| * @category models | |
| */ | |
| export type PathInput = `/${string}` | "*" | |
| /** | |
| * @since 1.0.0 | |
| * @category models | |
| */ | |
| export interface Router<A> { | |
| readonly on: ( | |
| method: string | Iterable<string>, | |
| path: PathInput, | |
| handler: A, | |
| ) => void | |
| readonly all: (path: PathInput, handler: A) => void | |
| readonly find: (method: string, url: string) => FindResult<A> | undefined | |
| readonly has: (method: string, url: string) => boolean | |
| } | |
| /** | |
| * @since 1.0.0 | |
| * @category models | |
| */ | |
| export interface FindResult<A> { | |
| readonly handler: A | |
| readonly params: Record<string, string | undefined> | |
| readonly searchParams: Record<string, string | Array<string>> | |
| } | |
| /** | |
| * @since 1.0.0 | |
| * @category constructors | |
| */ | |
| export const make: <A>(options?: Partial<RouterConfig>) => Router<A> = | |
| internal.make | |
Xet Storage Details
- Size:
- 1.12 kB
- Xet hash:
- 39737ab8aca84f67f73c97be80bef2e55942dbdcba3191c0507d378c7d940986
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.