Type Alias CurriedFn<TAllArgs, TReturn>

CurriedFn: <
    TProvidedArgs extends
        TAllArgs extends [infer TFirstArg, ...(infer TRestOfArgs)]
            ? [TFirstArg, ...Partial<TRestOfArgs>]
            : never,
>(
    ...args: TProvidedArgs,
) => TProvidedArgs extends TAllArgs
    ? TReturn
    : TAllArgs extends [
        ...TupleOfLength<TProvidedArgs>,
        ...(infer TRestOfArgs),
    ]
        ? functional.CurriedFn<TRestOfArgs, TReturn>
        : never

Type Parameters

  • TAllArgs extends any[]
  • TReturn

Type declaration

MMNEPVFCICPMFPCPTTAAATR