UNPKG

type-route

Version:

The flexible, type safe routing library.

19 lines (15 loc) 584 B
import { ParamDefKind, ParamDefCollection } from "./types"; export function getParamDefsOfType<TParamType extends ParamDefKind>( type: TParamType, paramDefCollection: ParamDefCollection<ParamDefKind> ) { const filteredParamDefCollection: ParamDefCollection<TParamType> = {}; Object.keys(paramDefCollection).forEach((name) => { const paramDef = paramDefCollection[name]; if (paramDef["~internal"].kind === type) { filteredParamDefCollection[name] = paramDef as ParamDefCollection<TParamType>[string]; } }); return filteredParamDefCollection; }