UNPKG

browser-use-typescript

Version:

A TypeScript-based browser automation framework

99 lines (98 loc) 5.31 kB
import { Browser } from "./browserService"; import { Browser as PlaywrightBrowser } from "playwright"; import { BrowserContext as PlaywrightBrowserContext } from "playwright"; import { ElementHandle, Page } from "playwright"; import { BrowserState, TabInfo } from "./type"; import { DOMElementNode, SelectorMap } from "../../domTypes/domClass"; declare class BrowserContextWindowSize { width: number; height: number; constructor(width: number, height: number); } export declare class BrowserContextConfig { cookies_file: string | null; s3Storage: boolean; minimum_wait_page_load_time: number; wait_for_network_idle_page_load_time: number; maximum_wait_page_load_time: number; wait_between_actions: number; browser_window_size: BrowserContextWindowSize; no_viewport: boolean | null; save_recording_path: string | null; save_downloads_path: string | null; trace_path: string | null; locale: string | null; user_agent: string; highlight_elements: boolean; viewport_expansion: number; allowed_domains: string[] | null; include_dynamic_attributes: boolean; disable_security: boolean; _force_keep_context_alive: boolean; constructor(); } declare class BrowserSession { context: PlaywrightBrowserContext; cached_state: BrowserState | null; constructor(context: PlaywrightBrowserContext, cached_state: BrowserState | null); } declare class BrowserContextState { target_id: string | null; constructor(target_id?: string | null); } export declare class BrowserContext { context_id: string; config: BrowserContextConfig; current_state: BrowserState | undefined; browser: Browser; state?: BrowserContextState; session: BrowserSession | null; private _initialized; constructor(param?: Partial<BrowserContext>); private _ensure_initialized; __aexit__(): Promise<void>; close(): Promise<void>; save_cookies(local?: boolean): Promise<void>; _initialize_session(): Promise<BrowserSession>; _add_new_page_listener(this: BrowserContext, context: PlaywrightBrowserContext): Promise<void>; get_session(this: BrowserContext): Promise<BrowserSession>; get_current_page(this: BrowserContext): Promise<Page>; _get_current_page(this: BrowserContext, session: BrowserSession): Promise<Page>; _create_context(this: BrowserContext, browser: PlaywrightBrowser): Promise<PlaywrightBrowserContext>; _wait_for_stable_network(this: BrowserContext): Promise<void>; _wait_for_page_and_frames_load(this: BrowserContext, timeout_overwrite?: number | null): Promise<void>; _is_url_allowed(this: BrowserContext, url: string): Promise<boolean>; _check_and_handle_navigation(this: BrowserContext, page: Page): Promise<void>; handle_page_load(this: BrowserContext): Promise<void>; navigate_to(this: BrowserContext, url: string): Promise<void>; refresh_page(this: BrowserContext): Promise<void>; go_back(this: BrowserContext): Promise<void>; go_forward(this: BrowserContext): Promise<void>; close_current_tab(this: BrowserContext): Promise<void>; get_page_html(this: BrowserContext): Promise<string>; execute_javascript(this: BrowserContext, script: string): Promise<any>; get_page_structure(this: BrowserContext): Promise<string>; get_state(this: BrowserContext): Promise<BrowserState>; _update_state(this: BrowserContext, focus_element?: number): Promise<BrowserState>; take_screenshot(this: BrowserContext, full_page?: boolean): Promise<string>; remove_highlights(this: BrowserContext): Promise<void>; _convert_simple_xpath_to_css_selector(xpath: string): Promise<string>; _enhanced_css_selector_for_element(element: DOMElementNode, include_dynamic_attributes?: boolean): Promise<string>; get_locate_element(this: BrowserContext, element: DOMElementNode): Promise<ElementHandle | null>; get_locate_element_by_xpath(this: BrowserContext, xpath: string): Promise<ElementHandle | null>; get_locate_element_by_css_selector(this: BrowserContext, css_selector: string): Promise<ElementHandle | null>; get_locate_element_by_text(this: BrowserContext, text: string, nth?: number): Promise<ElementHandle | null>; _input_text_element_node(this: BrowserContext, element_node: DOMElementNode, text: string): Promise<void>; _click_element_node(this: BrowserContext, element_node: DOMElementNode): Promise<string | undefined>; get_tabs_info(this: BrowserContext): Promise<TabInfo[]>; switch_to_tab(this: BrowserContext, page_id: number): Promise<void>; create_new_tab(this: BrowserContext, url?: string | null): Promise<void>; get_selector_map(this: BrowserContext): Promise<SelectorMap>; get_element_by_index(this: BrowserContext, index: number): Promise<ElementHandle | null>; get_dom_element_by_index(this: BrowserContext, index: number): Promise<DOMElementNode>; is_file_uploader(this: BrowserContext, element_node: DOMElementNode, max_depth?: number, current_depth?: number): Promise<boolean>; get_scroll_info(this: BrowserContext, page: Page): Promise<[number, number]>; reset_context(this: BrowserContext): Promise<void>; _get_unique_filename(this: BrowserContext, directory: string, filename: string): Promise<string>; } export {};