import type MatchedRoute from "#router/MatchedRoute"; import type NodeConfig from "#router/NodeConfig"; import type NodePredicate from "#router/NodePredicate"; import type { Dict } from "@rcompat/type"; type Match = MatchedRoute | undefined; type Params = Dict; type Specials = Dict; export default class Node { #private; static set config(config: NodeConfig); static get config(): NodeConfig; constructor(parent: Node | null, segment: string, path?: string); get parent(): Node | null; get segment(): string; get path(): string | undefined; get type(): symbol; get dynamic(): boolean; get catch(): boolean; get rest(): boolean; get optional(): boolean; get leaf(): boolean; get has_path(): boolean; check(predicate: NodePredicate): void; statics(): Node[]; optionals(): Node[]; dynamics(): Node[]; specials(): Node[]; max(predicate: NodePredicate, depth?: number): number; collect(collected?: Specials, recursed?: Set): Specials; filed(segment: string, path: string): void; interim(segment: string): Node; next(parts: string[], params: Params): Match; return(parts: string[], params: Params, path?: string | undefined): Match; match(parts: string[], params?: Params): Match; flatten(): { path: string | undefined; segment: string; type: symbol; }[]; print(i?: number): void; unique(): void; } export {}; //# sourceMappingURL=Node.d.ts.map