function propOrimport { propOr } from "https://deno.land/x/rambda@v9.1.0/rambda.js"; propOr<T, P extends string>(defaultValue: T,property: P,obj: Partial<Record<P, T>> | undefined,): TIt returns either defaultValue or the value of property in obj. propOr<T, P extends string>(defaultValue: T, property: P): (obj: Partial<Record<P, T>> | undefined) => TpropOr<T>(defaultValue: T): { <P extends string>(property: P, obj: Partial<Record<P, T>> | undefined): T; <P extends string>(property: P): (obj: Partial<Record<P, T>> | undefined) => T; }It returns either defaultValue or the value of property in obj. Type ParametersTP extends stringParametersdefaultValue: Tproperty: Pobj: Partial<Record<P, T>> | undefinedReturnsTType ParametersTP extends stringParametersdefaultValue: Tproperty: PReturns(obj: Partial<Record<P, T>> | undefined) => TType ParametersTParametersdefaultValue: TReturns{ <P extends string>(property: P, obj: Partial<Record<P, T>> | undefined): T; <P extends string>(property: P): (obj: Partial<Record<P, T>> | undefined) => T; }