Is it true that Typescript removes any type or interface at compile time? If so, how is it possible to determine an object's primitive type using the typeof keyword? Are custom interfaces handled differently than primitive types?
const a = "string";
const b = 123;
const c = {};
const d = undefined
console.log(typeof a) -> 'string'
console.log(typeof b) -> 'number'
console.log(typeof c) -> 'Object'
console.log(typeof d) -> 'undefined'