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; } } }