/**
 * @fileoverview A snapshot is a reference to a specific dispatch for
 * a given action. A microcosm instance maintains a bank of them to
 * efficiently update state.
 * @flow
 */

type Snapshot = {
  // The last state the snapshot was dispatched with. This is used
  // to memoize domain handlers when possible.
  last: *,
  // The next state for the snapshot. The outcome of `updateSnapshot`.
  next: *,
  // Last known status of the action associated with this snapshot.
  status: Status,
  // Last known payload of the action associated with this snapshot.
  payload: *
}

@@ -178,16 +178,59 @@
 ow%0A */%0A%0A
+type State = %7B %5Bkey: string%5D: * %7D%0A%0Adeclare 
 type Sna
@@ -361,17 +361,21 @@
   last: 
-*
+State
 ,%0A  // T
@@ -447,17 +447,21 @@
   next: 
-*
+State
 ,%0A  // L

Update snapshot flow type