Using Intersection Types and Template Literals in a record type allows us to derive an object’s type based off of it’s key. This is especially useful when you don’t know how many keys may exist on this object at build time with the caveat that the keys must follow a predictable pattern