Type Alias CurrySignature<FN, R, ARGS>

CurrySignature: ARGS extends [infer ARG0, ...(infer REST)]
    ? (arg: ARG0) => CurrySignature<(...rest_args: REST) => R>
    : R

this is the return type of curry, made for the sole purpose of type recursion.

Type Parameters

  • FN extends (...args: any) => any
  • R extends ReturnType<FN> = ReturnType<FN>
  • ARGS extends Parameters<FN> = Parameters<FN>