consegui criando uma função de Timer com while assincronia. Mais caso alguém tenha alguma outra sugestão!
No exemplo abaixo ele aguarda 5 segundos para me retornar o valor true.
public async Task<bool> TimerCountAsync(int value)
{
while (value > 0)
{
await Task.Delay(1);
value--;
}
return true;
}
if (await TimerCountAsync(500) == true)
{
//Codigo aqui
}