19 lines
325 B
JavaScript
19 lines
325 B
JavaScript
/* @flow */
|
|
|
|
declare class Bar<K> {
|
|
update<K_>(updater: (value: this) => Bar<K_>): Bar<K_>;
|
|
}
|
|
|
|
declare function foo<U>(
|
|
initialValue: U,
|
|
callbackfn: (previousValue: U) => U
|
|
): U;
|
|
|
|
declare var items: Bar<string>;
|
|
declare var updater: (value: Bar<string>) => Bar<string>;
|
|
|
|
foo(
|
|
items,
|
|
(acc) => acc.update(updater)
|
|
);
|