using System;
namespace Config.Net
{
///
/// Configuration store interface
///
public interface IConfigStore : IDisposable
{
///
/// Returns true if store supports read operation.
///
bool CanRead { get; }
///
/// Returns true if store supports write operation.
///
bool CanWrite { get; }
///
/// Reads a key from the store.
///
/// Key name.
/// If key exists in the store returns the value, othwise returns null.
string? Read(string key);
///
/// Writes a key to the store.
///
/// Key name
/// Key value. Value of NULL usually means the key will be deleted, at least
/// this is the recomendation for the custom store implementers.
void Write(string key, string? value);
}
}