#pragma once #include #include "pubkey.h" using std::optional; using std::vector; namespace erebos { struct LocalState::Priv { optional identity; vector> shared; }; struct SharedState { explicit SharedState(vector> prev, UUID type, vector value): prev(prev), type(type), value(value) {} explicit SharedState(const Ref &); static SharedState load(const Ref & ref) { return SharedState(ref); } Ref store(const Storage &) const; vector> prev; UUID type; vector value; }; }