JamieMason/expect-more

View on GitHub
packages/expect-more/src/lib/curry1.ts

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
type Fn1<R = any> = (a: unknown) => a is R;

export type CurriedFn1<R = any> = {
  (a: unknown): a is R;
};

export function curry1<R>(fn: Fn1<R>): CurriedFn1<R> {
  return function curriedFn1(a) {
    if (arguments.length >= 1) return fn(a);
  } as CurriedFn1<R>;
}