export type RouterParamKeys = T extends `${infer A}${S}${infer B}` ? ( A extends `${M}${infer R}` ? (R | RouterParamKeys) : RouterParamKeys ) : (T extends `${M}${infer R}` ? R : never) export type RouterParam = RouterParamKeys extends never ? never : { [k in RouterParamKeys]: string }