Typescript derive union type from tuple/array values