95. 组合键类型
中等
实现一个通用的工具类型 Combs<T>
,把多个修饰键两两组合,但不可以出现相同的修饰键组合。
例如有以下类型 ModifierKeys
:
type ModifierKeys = ['cmd', 'ctrl', 'opt', 'fn']
返回的结果是:
type CaseTypeOne = 'cmd ctrl' | 'cmd opt' | 'cmd fn' | 'ctrl opt' | 'ctrl fn' | 'opt fn'
提供的 ModifierKeys
中,前面的值比后面的值优先级高,而优先级低的不能组合优先级高的,即 cmd ctrl
是可以的,但 ctrl cmd
是不允许的。