import { type Match } from './Match'; import { type Directives, type DirectivesFactory } from './Directives'; import { type Endpoint, type EndpointsFactory } from './Endpoint'; import type * as syntax from './syntax'; export declare class Tree = any, TDirectives extends Directives = any> { private readonly root; private readonly trunk; private readonly endpoints; private readonly directives; constructor(node: syntax.Node, endpoints: EndpointsFactory, directives: DirectivesFactory); match(path: string): Match | null; merge(node: syntax.Node, extension: any): void; private createNode; }