using System; using System.Threading; using System.Threading.Tasks; using Wabbajack.DTOs.Logins; namespace Wabbajack.WebAutomation { public interface IWebDriver { Task NavigateTo(Uri uri, CancellationToken? token = null); Task EvaluateJavaScript(string text); Task GetCookies(string domainPrefix); public Action? DownloadHandler { get; set; } public Task WaitForInitialized(); ISchemeHandler WithSchemeHandler(Predicate wabbajack); } public interface ISchemeHandler : IDisposable { public Task Task { get; } } }