diff --git a/keyserver/flow-typed/npm/lodash_v4.x.x.js b/keyserver/flow-typed/npm/lodash_v4.x.x.js --- a/keyserver/flow-typed/npm/lodash_v4.x.x.js +++ b/keyserver/flow-typed/npm/lodash_v4.x.x.js @@ -1514,8 +1514,8 @@ ) => T1) // NaN is a number instead of its own type, otherwise it would behave like null/void & ((value: T1, defaultValue: T2) => T1 | T2); - flow: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - flowRight: $Compose & ((funcs: $ReadOnlyArray) => Function); + flow: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + flowRight: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); identity(value: T): T; iteratee(func?: any): Function; matches(source?: ?Object): Function; @@ -3464,10 +3464,10 @@ // NaN is a number instead of its own type, otherwise it would behave like null/void & ((defaultValue: T2) => ((value: T1) => T1 | T2)) & ((defaultValue: T2, value: T1) => T1 | T2); - flow: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - pipe: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - flowRight: $Compose & ((funcs: $ReadOnlyArray) => Function); - compose: $Compose & ((funcs: $ReadOnlyArray) => Function); + flow: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + pipe: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + flowRight: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); + compose: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); identity(value: T): T; iteratee(func: any): Function; matches: diff --git a/keyserver/flow-typed/npm/redux_v4.x.x.js b/keyserver/flow-typed/npm/redux_v4.x.x.js --- a/keyserver/flow-typed/npm/redux_v4.x.x.js +++ b/keyserver/flow-typed/npm/redux_v4.x.x.js @@ -100,5 +100,5 @@ reducers: $ObjMap(V) => Reducer>, ): Reducer; - declare export var compose: $Compose; + declare export var compose: ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D) & ((f1: (d: D) => E, f2: (c: C) => D, f3: (b: B) => C, f4: (a: A) => B) => (a: A) => E) & ((...funcs: Array) => Function); } diff --git a/lib/flow-typed/npm/lodash_v4.x.x.js b/lib/flow-typed/npm/lodash_v4.x.x.js --- a/lib/flow-typed/npm/lodash_v4.x.x.js +++ b/lib/flow-typed/npm/lodash_v4.x.x.js @@ -1514,8 +1514,8 @@ ) => T1) // NaN is a number instead of its own type, otherwise it would behave like null/void & ((value: T1, defaultValue: T2) => T1 | T2); - flow: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - flowRight: $Compose & ((funcs: $ReadOnlyArray) => Function); + flow: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + flowRight: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); identity(value: T): T; iteratee(func?: any): Function; matches(source?: ?Object): Function; @@ -3464,10 +3464,10 @@ // NaN is a number instead of its own type, otherwise it would behave like null/void & ((defaultValue: T2) => ((value: T1) => T1 | T2)) & ((defaultValue: T2, value: T1) => T1 | T2); - flow: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - pipe: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - flowRight: $Compose & ((funcs: $ReadOnlyArray) => Function); - compose: $Compose & ((funcs: $ReadOnlyArray) => Function); + flow: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + pipe: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + flowRight: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); + compose: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); identity(value: T): T; iteratee(func: any): Function; matches: diff --git a/lib/flow-typed/npm/redux_v4.x.x.js b/lib/flow-typed/npm/redux_v4.x.x.js --- a/lib/flow-typed/npm/redux_v4.x.x.js +++ b/lib/flow-typed/npm/redux_v4.x.x.js @@ -100,5 +100,5 @@ reducers: $ObjMap(V) => Reducer>, ): Reducer; - declare export var compose: $Compose; + declare export var compose: ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D) & ((f1: (d: D) => E, f2: (c: C) => D, f3: (b: B) => C, f4: (a: A) => B) => (a: A) => E) & ((...funcs: Array) => Function); } diff --git a/native/flow-typed/npm/lodash_v4.x.x.js b/native/flow-typed/npm/lodash_v4.x.x.js --- a/native/flow-typed/npm/lodash_v4.x.x.js +++ b/native/flow-typed/npm/lodash_v4.x.x.js @@ -1514,8 +1514,8 @@ ) => T1) // NaN is a number instead of its own type, otherwise it would behave like null/void & ((value: T1, defaultValue: T2) => T1 | T2); - flow: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - flowRight: $Compose & ((funcs: $ReadOnlyArray) => Function); + flow: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + flowRight: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); identity(value: T): T; iteratee(func?: any): Function; matches(source?: ?Object): Function; @@ -3464,10 +3464,10 @@ // NaN is a number instead of its own type, otherwise it would behave like null/void & ((defaultValue: T2) => ((value: T1) => T1 | T2)) & ((defaultValue: T2, value: T1) => T1 | T2); - flow: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - pipe: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - flowRight: $Compose & ((funcs: $ReadOnlyArray) => Function); - compose: $Compose & ((funcs: $ReadOnlyArray) => Function); + flow: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + pipe: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + flowRight: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); + compose: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); identity(value: T): T; iteratee(func: any): Function; matches: diff --git a/native/flow-typed/npm/redux_v4.x.x.js b/native/flow-typed/npm/redux_v4.x.x.js --- a/native/flow-typed/npm/redux_v4.x.x.js +++ b/native/flow-typed/npm/redux_v4.x.x.js @@ -97,8 +97,8 @@ ): C; declare export function combineReducers( - reducers: $ObjMap(V) => Reducer>, + reducers: {[K in keyof RootState]: Reducer} ): Reducer; - declare export var compose: $Compose; + declare export var compose: ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D) & ((f1: (d: D) => E, f2: (c: C) => D, f3: (b: B) => C, f4: (a: A) => B) => (a: A) => E) & ((...funcs: Array) => Function); } diff --git a/web/flow-typed/npm/lodash_v4.x.x.js b/web/flow-typed/npm/lodash_v4.x.x.js --- a/web/flow-typed/npm/lodash_v4.x.x.js +++ b/web/flow-typed/npm/lodash_v4.x.x.js @@ -1514,8 +1514,8 @@ ) => T1) // NaN is a number instead of its own type, otherwise it would behave like null/void & ((value: T1, defaultValue: T2) => T1 | T2); - flow: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - flowRight: $Compose & ((funcs: $ReadOnlyArray) => Function); + flow: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + flowRight: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); identity(value: T): T; iteratee(func?: any): Function; matches(source?: ?Object): Function; @@ -3464,10 +3464,10 @@ // NaN is a number instead of its own type, otherwise it would behave like null/void & ((defaultValue: T2) => ((value: T1) => T1 | T2)) & ((defaultValue: T2, value: T1) => T1 | T2); - flow: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - pipe: $ComposeReverse & ((funcs: $ReadOnlyArray) => Function); - flowRight: $Compose & ((funcs: $ReadOnlyArray) => Function); - compose: $Compose & ((funcs: $ReadOnlyArray) => Function); + flow: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + pipe: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (a: A) => B, f2: (b: B) => C) => (a: A) => C) & ((f1: (a: A) => B, f2: (b: B) => C, f3: (c: C) => D) => (a: A) => D); + flowRight: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); + compose: ((funcs: $ReadOnlyArray) => Function) & ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D); identity(value: T): T; iteratee(func: any): Function; matches: diff --git a/web/flow-typed/npm/redux_v4.x.x.js b/web/flow-typed/npm/redux_v4.x.x.js --- a/web/flow-typed/npm/redux_v4.x.x.js +++ b/web/flow-typed/npm/redux_v4.x.x.js @@ -97,8 +97,8 @@ ): C; declare export function combineReducers( - reducers: $ObjMap(V) => Reducer>, + reducers: {[K in keyof RootState]: Reducer} ): Reducer; - declare export var compose: $Compose; + declare export var compose: ((f1: (a: A) => B) => (a: A) => B) & ((f1: (b: B) => C, f2: (a: A) => B) => (a: A) => C) & ((f1: (c: C) => D, f2: (b: B) => C, f3: (a: A) => B) => (a: A) => D) & ((f1: (d: D) => E, f2: (c: C) => D, f3: (b: B) => C, f4: (a: A) => B) => (a: A) => E) & ((...funcs: Array) => Function); }