;
-};
-export function prop(propToFind: P): {
- (value: Record
): T;
-};
+export function prop<_, P extends keyof never, T>(p: P, value: T): Prop;
+export function prop(p: keyof never, value: unknown): V;
+export function prop<_, P extends keyof never>(p: P): (value: T) => Prop;
+export function prop(p: keyof never): (value: unknown) => V;
/*
Method: propEq
@@ -5458,6 +5454,105 @@ Notes:
export function descend(fn: (obj: T) => Ord, a: T, b: T): Ordering;
export function descend(fn: (obj: T) => Ord): (a: T, b: T) => Ordering;
+/*
+Method: binary
+
+Explanation:
+
+Example:
+
+```
+```
+
+Categories:
+
+Notes:
+
+*/
+// @SINGLE_MARKER
+export function binary any>(fn: T): (...args: any[]) => ReturnType;
+
+/*
+Method: call
+
+Explanation:
+
+Example:
+
+```
+```
+
+Categories:
+
+Notes:
+
+*/
+// @SINGLE_MARKER
+export function call any>(fn: T, ...args: Parameters): ReturnType;
+
+/*
+Method: collectBy
+
+Explanation:
+
+Example:
+
+```
+```
+
+Categories:
+
+Notes:
+
+*/
+// @SINGLE_MARKER
+export function collectBy(keyFn: (value: T) => K, list: T[]): T[][];
+export function collectBy(keyFn: (value: T) => K): (list: T[]) => T[][];
+
+/*
+Method: comparator
+
+Explanation:
+
+Example:
+
+```
+```
+
+Categories:
+
+Notes:
+
+*/
+// @SINGLE_MARKER
+export function comparator(pred: (a: T, b: T) => boolean): (x: T, y: T) => Ordering;
+
+/*
+Method: composeWith
+
+Explanation:
+
+Example:
+
+```
+```
+
+Categories:
+
+Notes:
+
+*/
+// @SINGLE_MARKER
+export function composeWith(
+ transformer: (fn: (...args: any[]) => any, intermediatResult: any) => any,
+ fns: AtLeastOneFunctionsFlowFromRightToLeft,
+): (...args: TArgs) => TResult;
+export function composeWith(
+ transformer: (fn: (...args: any[]) => any, intermediatResult: any) => any,
+): (
+ fns: AtLeastOneFunctionsFlowFromRightToLeft,
+) => (...args: TArgs) => TResult;
+
// RAMBDAX_MARKER_START
/*
diff --git a/immutable.d.ts b/immutable.d.ts
index 24875d6a..6e0b4de1 100644
--- a/immutable.d.ts
+++ b/immutable.d.ts
@@ -95,6 +95,9 @@ interface AssocPartialOne {
(val: T): (obj: U) => Record & U;
(val: T, obj: U): Record & U;
}
+type AtLeastOneFunctionsFlowFromRightToLeft =
+ | readonly [(...args: any) => TResult, ...ReadonlyArray<(args: any) => any>, (...args: TArgs) => any]
+ | readonly [(...args: TArgs) => TResult];
type AnyFunction = (...args: readonly any[]) => unknown;
type AnyConstructor = new (...args: readonly any[]) => unknown;
@@ -277,6 +280,8 @@ export function assocPath