""" This type stub file was generated by pyright. """ import asyncio from typing import Awaitable, Callable, Dict, TYPE_CHECKING, Union from pyee import EventEmitter """Connection/Session management module.""" if TYPE_CHECKING: ... logger = ... logger_connection = ... logger_session = ... class Connection(EventEmitter): """Connection management class.""" def __init__(self, url: str, loop: asyncio.AbstractEventLoop, delay: int = ...) -> None: """Make connection. :arg str url: WebSocket url to connect devtool. :arg int delay: delay to wait before processing received messages. """ ... @property def url(self) -> str: """Get connected WebSocket url.""" ... def send(self, method: str, params: dict = ...) -> Awaitable: """Send message via the connection.""" ... def setClosedCallback(self, callback: Callable[[], None]) -> None: """Set closed callback.""" ... async def dispose(self) -> None: """Close all connection.""" ... async def createSession(self, targetInfo: Dict) -> CDPSession: """Create new session.""" ... class CDPSession(EventEmitter): """Chrome Devtools Protocol Session. The :class:`CDPSession` instances are used to talk raw Chrome Devtools Protocol: * protocol methods can be called with :meth:`send` method. * protocol events can be subscribed to with :meth:`on` method. Documentation on DevTools Protocol can be found `here `__. """ def __init__(self, connection: Union[Connection, CDPSession], targetType: str, sessionId: str, loop: asyncio.AbstractEventLoop) -> None: """Make new session.""" ... def send(self, method: str, params: dict = ...) -> Awaitable: """Send message to the connected session. :arg str method: Protocol method name. :arg dict params: Optional method parameters. """ ... async def detach(self) -> None: """Detach session from target. Once detached, session won't emit any events and can't be used to send messages. """ ...