using BotSharp.Abstraction.Browsing.Models; namespace BotSharp.Abstraction.Browsing; public interface IWebBrowser { Task LaunchBrowser(string conversationId, string? url); Task ScreenshotAsync(string conversationId, string path); Task ScrollPageAsync(BrowserActionParams actionParams); Task ActionOnElement(MessageInfo message, ElementLocatingArgs location, ElementActionArgs action); Task LocateElement(MessageInfo message, ElementLocatingArgs location); Task DoAction(MessageInfo message, ElementActionArgs action, BrowserActionResult result); Task InputUserText(BrowserActionParams actionParams); Task InputUserPassword(BrowserActionParams actionParams); Task ClickButton(BrowserActionParams actionParams); Task ClickElement(BrowserActionParams actionParams); Task ChangeListValue(BrowserActionParams actionParams); Task CheckRadioButton(BrowserActionParams actionParams); Task ChangeCheckbox(BrowserActionParams actionParams); Task GoToPage(string conversationId, string url); Task ExtractData(BrowserActionParams actionParams); Task EvaluateScript(string conversationId, string script); Task CloseBrowser(string conversationId); Task SendHttpRequest(BrowserActionParams actionParams); Task GetAttributeValue(MessageInfo message, ElementLocatingArgs location, BrowserActionResult result); }