Global Augmentation

TypeScript 🔴 Senior

Définition

Technique pour ajouter des déclarations au scope global via déclaré global dans un module. Permet d'étendre Window, globalThis ou les prototypes.

Analogie

Comme un décret national qui ajoute une loi applicable partout — la modification est globale.

Exemple de code

export {};
declare global {
  interface Window {
    analytics: { track(e: string): void };
  }
}

Cas d'usage

Déclarer des variables globales injectées (analytics, config, feature flags) avec un typage correct.

Anti-pattern

Polluer le scope global au lieu d'utiliser des imports — retour aux problèmes pre-modules.
#advanced#tooling

← → au clavier pour passer d'une fiche à l'autre