Introduction
Module augmentation lets you add new features or fix things in existing code without changing the original files. It helps keep your code organized and safe.
You want to add new functions or types to a library you use but can't edit its code.
You need to fix or improve type definitions from a third-party package.
You want to add extra properties to existing objects or modules in your project.
You want to customize behavior of a module without copying or rewriting it.