- One of the fundamental principles of TypeScript is that it never changes runtime behaviour of the underlying JS code. TypeScript should be thought of as a compiler that checks the code and produces compiled Javascript. - If we write pure JavaScript in a TypeScript file it does not break. TypeScript simply does not change anything in runtime. - This allows us to change parts of our codebase and migrate our projects slowly without having to worry.