Am I correct that this completely binds you to React, ie, couldn't be used with Angular or Mithril or anything?
Nope, this is just another way to define Redux reducers. It's compatible with anything Redux is compatible with :)
The payload typechecking does conform to React's PropType standard though. If you don't want to require React for that to work you can grab a standalone PropType library. There are a few available: