https://stackoverflow.com/questions/64279223/vue3-typescript-props-with-multiple-types ``` import { defineComponent, PropType } from 'vue' interface Icon { src: string width: number height: number } const Component = defineComponent({ props: { icon: { type: [Object, Array, String] as PropType<Icon | Icon[] | string>, required: true }, } }) ```