/** * Strongly typed route patterns (pathnames, params, query definitions). */ /** * Route path definitions */ export declare const routes: { readonly home: "/"; readonly login: "/login"; readonly logout: "/logout"; readonly register: "/register"; readonly forgotPassword: "/forgot-password"; readonly resetPassword: "/reset-password"; readonly dashboard: "/dashboard"; readonly dashboardOverview: "/dashboard/overview"; readonly dashboardAnalytics: "/dashboard/analytics"; readonly dashboardSettings: "/dashboard/settings"; readonly reports: "/reports"; readonly reportsList: "/reports/list"; readonly reportDetail: "/reports/:id"; readonly reportCreate: "/reports/create"; readonly reportEdit: "/reports/:id/edit"; readonly users: "/users"; readonly usersList: "/users/list"; readonly userDetail: "/users/:id"; readonly userCreate: "/users/create"; readonly userEdit: "/users/:id/edit"; readonly userProfile: "/users/profile"; readonly settings: "/settings"; readonly settingsGeneral: "/settings/general"; readonly settingsNotifications: "/settings/notifications"; readonly settingsSecurity: "/settings/security"; readonly admin: "/admin"; readonly adminUsers: "/admin/users"; readonly adminRoles: "/admin/roles"; readonly adminLogs: "/admin/logs"; readonly notFound: "/404"; readonly error: "/error"; }; export type RoutePath = (typeof routes)[keyof typeof routes]; /** * Route parameter types */ export interface RouteParams { '/reports/:id': { id: string; }; '/reports/:id/edit': { id: string; }; '/users/:id': { id: string; }; '/users/:id/edit': { id: string; }; } /** * Route query parameter types */ export interface RouteQuery { '/reports/list': { page?: string; limit?: string; search?: string; status?: string; }; '/users/list': { page?: string; limit?: string; search?: string; role?: string; }; '/dashboard/analytics': { from?: string; to?: string; metric?: string; }; } /** * Build a route path with parameters * * @deprecated Use `buildRoutePath` from `./route-builder` instead. * This function is maintained for backward compatibility only. * * @example * ```typescript * // Instead of: * import { buildPath } from './routes'; * buildPath('/users/:id', { id: '123' }); * * // Use: * import { buildRoutePath } from './route-builder'; * buildRoutePath('/users/:id', { id: '123' }); * ``` */ export declare function buildPath(path: T, params: RouteParams[T]): string; /** * Build a route path with query parameters */ export declare function buildPathWithQuery(path: T, query?: Partial): string; /** * Parse query parameters from a URL */ export declare function parseQuery(search: string): Partial;