using System;
namespace Substrate.Data
{
///
/// An interface of basic manipulations on an abstract data store for map data.
///
public interface IMapManager
{
///
/// Gets a object for the given map id from the underlying data store.
///
/// The id of a map data resource.
/// A object for the given map id, or null if the map doesn't exist.
Map GetMap (int id);
///
/// Saves a object's data back to the underlying data store for the given map id.
///
/// The id of the map to write back data for.
/// The object containing data to write back.
void SetMap (int id, Map map);
///
/// Checks if a map exists in the underlying data store.
///
/// The id of the map to look up.
/// True if map data was found; false otherwise.
bool MapExists (int id);
///
/// Deletes a map with the given id from the underlying data store.
///
/// The id of the map to delete.
void DeleteMap (int id);
}
}