using System.Threading.Tasks;
namespace ZeroLevel.Services.Async.Internal
{
///
/// Represents an abstract item awaiter.
///
internal interface IAwaiter
{
///
/// Attempts to complete the awaiter with a specified result.
/// Returns false if the awaiter has been canceled.
///
bool TrySetResult(T result);
///
/// The task that's completed when the awaiter gets the result.
///
ValueTask Task { get; }
}
}