Maybe it should also check for `typeof @_options.state.set === "function"`?

Also, please rename the state properties to setItem, getItem and removeItem.