Xamarin.CommunityToolkit by Microsoft

<PackageReference Include="Xamarin.CommunityToolkit" Version="2.0.6" />

 AsyncCommand

public class AsyncCommand : BaseAsyncCommand<object, object>, IAsyncCommand, ICommand
An implementation of IAsyncCommand. Allows Commands to safely be used asynchronously with Task.
public AsyncCommand(Func<Task> execute, Func<object, bool> canExecute = null, Action<Exception> onException = null, bool continueOnCapturedContext = false, bool allowsMultipleExecutions = true)

Initializes a new instance of AsyncCommand

public AsyncCommand(Func<Task> execute, Func<bool> canExecute, Action<Exception> onException = null, bool continueOnCapturedContext = false, bool allowsMultipleExecutions = true)

Initializes a new instance of AsyncCommand

public Task ExecuteAsync()

Executes the Command as a Task