Type Guards: Runtime Type Checking in TypeScript

Master TypeScript type guards: use typeof, instanceof, and custom type predicates to narrow types at runtime and write safer, more expressive code.