export type NoRepetition< U extends string, ResultT extends any[] = [] > = ResultT |{ [k in U]:NoRepetition, [k, ...ResultT]> }[U]