Global Augmentation
TypeScript 🔴 SeniorDé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.