InstanceType<T>

TypeScript 🟡 Mid

Definition

Utility type qui extrait le type d'instance d'un constructeur de classe. Utile quand on travaille avec typeof Class.

Analogie

Comme connaitre le plat final en voyant la recette — le constructeur est la recette, l'instance est le plat.

Exemple de code

class Logger { log(msg: string) {} }
type LoggerInstance = InstanceType<typeof Logger>;
function inject(cls: typeof Logger): LoggerInstance {
  return new cls();
}

Cas d'usage

Typer des instances dans des systemes d'injection de dependances ou factories generiques.

Termes lies

#utility-types