namespace Chernobyl
{
///
/// Signature for methods which acts as a response channel to some action.
///
/// The type returned to the response channel.
/// The value returned to the response channel.
public delegate void Callback(T value);
///
/// Signature for methods which act as a stream of data. The invoked method
/// will take in the and invoke whenever
/// necessary.
///
/// The type returned to the response channel.
/// The method that is to receive the stream of data.
public delegate void Subscribe(Callback subscriber);
}