polen
Version:
A framework for delightful GraphQL developer portals
26 lines • 1.42 kB
TypeScript
import type { ReactRouter } from '#dep/react-router/index';
/**
* Extracts unique path patterns from a React Router configuration.
* @param routes - An array of RouteObject.
* @returns An array of unique path patterns.
*/
export declare const getRouteExpressions: (routes: ReactRouter.RouteObject[]) => string[];
/**
* Recursively populates a set with path patterns from a React Router configuration.
* @param routes - An array of RouteObject.
* @param parentPath - The accumulated path from parent routes.
* @param collectedPaths - The Set to populate with unique path patterns.
*/
export declare const _getPathsRecurse: (routes: ReactRouter.RouteObject[], parentPath: string, collectedPaths: Set<string>) => void;
export type LayoutOnlyRoute = ReactRouter.NonIndexRouteObject & {
path?: undefined;
};
export type NonLayoutOnlyNonIndexRoute = ReactRouter.NonIndexRouteObject & {
path: string;
};
export declare const isIndexRoute: (route: ReactRouter.RouteObject) => route is ReactRouter.IndexRouteObject;
export declare const isLayoutOnlyRoute: (route: ReactRouter.RouteObject) => route is LayoutOnlyRoute;
export declare const isNonLayoutOnlyRoute: (route: ReactRouter.RouteObject) => route is NonLayoutOnlyNonIndexRoute;
export declare const normalizePath: (path: string) => string;
export declare const isParameterizedPath: (path: string) => boolean;
//# sourceMappingURL=get-paths-patterns.d.ts.map