import { Arity2, Curry2 } from '../types'
export function curry2(fn: Arity2): Curry2
export function curry2(fn: Arity2): Curry2
export function curry2(fn: Arity2): Curry2 {
function curried(a: A, b: B): any {
switch (arguments.length) {
case 1:
return (b: B) => fn(a, b)
default:
return fn(a, b)
}
}
return curried as Curry2
}