if check,<Switch /> / <Match /> was a good place to start, although the where's boolean check doesn't perform type narrowing, so the typecheck fails: the array could be empty and accessing the first element could return undefined. <Show /> to the mix, the type safety can be improved,<Show> just for its non-null assertion. Are there better options?