Module Augmentation
TypeScript 🔴 SeniorDéfinition
Technique pour ajouter des déclarations a un module existant via déclaré module. Permet d'étendre les types d'une lib tierce.
Analogie
Comme ajouter une extension a une maison existante — la structure originale reste intacte mais gagne de nouvelles pièces.
Exemple de code
// Etendre express
declare module "express" {
interface Request {
userId?: string;
}
}
Cas d'usage
Ajouter des propriétés typées aux objets de frameworks (Request express, Session, Window).
Anti-pattern
Augmenter des modules sans documenter pourquoi — les futurs développeurs ne comprennent pas d'ou viennent les types.