namespace BucketChain;
///
/// Represents a well which provides water for fighting the fire.
///
public sealed class Well
{
// TODO
///
/// Creates a new well with the supplied properties.
/// Initially the well is filled to the brim.
///
/// The max. fill level of the well in liters.
/// The amount of liters by which this well is refilled each (chain)
/// operation step
public Well(double maxCapacity, double refillRate)
{
// TODO
}
///
/// Gets how many liters currently remain in the well.
/// Cannot exceed the max. capacity of the well or drop below 0.
///
// TODO
// public double LitersRemaining ...
///
/// Refills the well by the constant rate.
///
public void Refill()
{
// TODO
}
///
/// Fills the passed bucket.
/// Can provide at most the and only subtracts the
/// amount actually required to fill the bucket.
///
/// The bucket to fill
public void FillBucket(Bucket bucket)
{
// TODO
}
///
/// Creates a string representation of this well.
/// Shows the current and max. amount of liters - rounded to whole numbers.
///
/// String representation of the well
public override string ToString() => string.Empty; // TODO
}