interface RouteConfig<K extends string> {
    name: K;
    path: string;
}
declare class RouterBuilder<RouteNames extends string = never> {
    private routes;
    addRoute<K extends string>(route: RouteConfig<K>): RouterBuilder<RouteNames | K>;
    build(): RouteConfig<RouteNames>[];
    private replaceParams;
    private addQueryParams;
    getPath<K extends RouteNames>(name: K, params?: Record<string, string | number>, query?: Record<string, string | number>): string;
}

export { type RouteConfig, RouterBuilder };
