DotNext by Roman Sakno

<PackageReference Include="DotNext" Version="1.2.9" />

 Future<T>

public abstract class Future<T> : Future where T : Task
Represents Future pattern that can be converted into Task.
protected Future(bool runContinuationsAsynchronously = true)

Initializes a new Future.

public abstract T AsTask()

Converts this awaitable object into task of type T.