import { Length, PartialList, Skip } from './array'; import { Inc } from './counter'; declare namespace R { const __: unique symbol; } declare type __ = typeof R.__; declare type GapOf = TProvided[i] extends __ ? [...TGapped, TTarget[i]] : TGapped; declare type GapsOf = i extends Length ? [...TGapped, ...Skip] : GapsOf, Inc>; declare type PartialGaps = T extends [infer X, ...infer Y] ? [X | __, ...PartialGaps] : []; declare type Gaps = PartialList>; declare type _CurryWithGaps = >(...args: T) => GapsOf extends [any, ...any[]] ? _CurryWithGaps, TReturn> : TReturn; declare type CurryWithGaps any)> = _CurryWithGaps, ReturnType>; export declare type Curry any)> = CurryWithGaps; export declare function curry any>(fn: TFn): Curry; export {}; //# sourceMappingURL=curry.d.ts.map