UNPKG

ngx-route-manager

Version:
12 lines (11 loc) 665 B
export type ExtractStaticSegments<T extends string> = T extends `${infer First}/${infer Rest}` ? First extends `:${string}` ? ExtractStaticSegments<Rest> : First | ExtractStaticSegments<Rest> : T extends `:${string}` ? never : T; export type SegmentObject<T extends string> = { [K in T]: K; }; /** * Extracts static segments from a URL pattern and returns them as a typed object * Types are automatically inferred from the URL pattern * @param url - The URL pattern to parse * @returns Object with extracted segments with automatic type inference */ export declare function urlToSegments<T extends string>(url: T): SegmentObject<ExtractStaticSegments<T>>;