@relax.dev/router
Version:
Router for VKUI
32 lines (31 loc) • 888 B
TypeScript
/**
* @ignore
* @packageDocumentation
*/
import { RouterGenericBase } from './entities/Types';
/**
* Создание пути из шаблона
* @param pageId /user/:id
* @param params {id:5,name:Ivan}
* @return {string} /user/5?name=Ivan
* @ignore
*/
export declare function generatePath<T extends RouterGenericBase = RouterGenericBase>(pageId: T['pageId'], params?: Record<string, unknown>): string;
/**
* @ignore
*/
export interface MatchInterface {
isExact: boolean;
path: string;
url: string;
params: {
[key: string]: string;
};
}
/**
* Проверка что строка удовлетворяет шаблону
* @param location /user/5
* @param pageId /user/:id([0-9]+)
* @ignore
*/
export declare function matchPath<T extends RouterGenericBase = RouterGenericBase>(location: string, pageId: T['pageId']): null | MatchInterface;