Options
All
  • Public
  • Public/Protected
  • All
Menu

Module generics

Index

Type aliases

DoubleKey

DoubleKey<T>: {[ K in keyof T & string as `${K}${K}`]: T[K] }

Type parameters

  • T

HorribleRecursiveTypeThatShouldNotBeUsedByAnyone

HorribleRecursiveTypeThatShouldNotBeUsedByAnyone<T, R>: { 0: R; 1: HorribleRecursiveTypeThatShouldNotBeUsedByAnyone<PopFront<T>, {[ K in keyof R | keyof T[0]]: K extends keyof R ? R[K] : T[0][K] }> }[T["length"] extends 0 ? 0 : 1]

See GH#1150. Calling typeChecker.typeToString on this type will send TS into an infinite loop, which is undesirable.

Type parameters

  • T: any[]

  • R = {}

PopFront

PopFront<T>: ((...args: T) => any) extends (a: any, ...r: infer R) => any ? R : never

Conditional type with infer

Type parameters

  • T: any[]

Functions

doubleKey

  • doubleKey<T>(arg: T): {[ K in string as `${K}${K}`]: T[K] }
  • Type parameters

    • T

    Parameters

    • arg: T

    Returns {[ K in string as `${K}${K}`]: T[K] }

getGenericArray

  • getGenericArray(): string[]
  • A function returning a generic array with type parameters.

    Returns string[]

    The return value with type arguments.

testFunction

  • testFunction<T>(value: T): T
  • A generic function

    Type parameters

    • T

      The generic type parameter.

    Parameters

    • value: T

      A generic parameter.

    Returns T

    A generic return value.

Generated using TypeDoc