using System; namespace Framework.Storage.Containers { /// Serializer for a persistent state /// Type of state the serializer will persist public interface IPersistentStateSerializer where TState : class { /// Default filename that will be used for the serialized state string DefaultFilename { get; } /// Reads the persistent state from a file /// State into which the file will be saved /// Path fo the file containing the saved state /// True if the state is genuine, false if it was modified bool Load(TState state, string path); /// Saves the persistent state into a file /// State that will be saved into a file /// Path of a file the state will be saved into void Save(TState state, string path); } } // namespace Framework.Storage.Containers