在 creato r属性面板上,如何实现下拉选择不同值显示其他不同的元素

如题,如何实现类似cc.Button属性面板上,根据Transition选择的值显示下面不同例如sprite设置和缩放设置,也就是在选择缩放时,隐藏颜色和spriteframe设置,选择颜色时,隐藏缩放和sprite设置等,
另外,TS项目下, enum{}定义的集合,如何应用到作为属性面板上可以被下拉选择?
PS:目前是TS项目,TS下如何实现。

:boy: 同问

demo-property.zip (9.5 KB)
参考demo,使用cc.Class.Attr

这是JS写法,TS怎么写?