types-kit.internaladdurlqueryvaluetoresult.md

September 4, 2023 ยท View on GitHub

Home > types-kit > InternalAddUrlQueryValueToResult

InternalAddUrlQueryValueToResult type

Signature:

type InternalAddUrlQueryValueToResult<
  Result extends object,
  K extends string,
  V extends string | undefined,
> = {
  [P in Keys<Result> | K]: P extends K
    ? P extends Keys<Result>
      ? IsEquals<V, Result[P]> extends true
        ? Result[P]
        : // avoid api-extractor compiling failed
        Result[P] extends infer CurrentValue
        ? CurrentValue extends readonly unknown[]
          ? [...CurrentValue, V]
          : [CurrentValue, V]
        : never
      : V
    : P extends Keys<Result>
    ? Result[P]
    : never
}

References: Keys, IsEquals