functionflip<a,b,c>(fn: (one: a,two: b)=>c): (one: b,two: a)=>c{returnfunctionflipped(one: b,two: a): c{returnfn(two,one);};}functionof2<a,b>(one: a,two: b): [a,b]{return[one,two];}constflipped=flip(of2);// expected: <a, b>(one: b, two: a) => [a, b], actual: (one: {}, two: {}) => [{}, {}]