firefox_webdriver/protocol/mod.rs
1//! WebSocket protocol message types.
2//!
3//! This module defines the message format for communication between
4//! local end (Rust) and remote end (Extension).
5//!
6//! # Protocol Overview
7//!
8//! From ARCHITECTURE.md Section 2:
9//!
10//! | Message Type | Direction | Purpose |
11//! |--------------|-----------|---------|
12//! | `Request` | Local → Remote | Command request |
13//! | `Response` | Remote → Local | Command response |
14//! | `Event` | Remote → Local | Browser notification |
15//! | `EventReply` | Local → Remote | Event decision |
16//!
17//! # Command Naming
18//!
19//! Commands follow `module.methodName` format:
20//!
21//! - `browsingContext.navigate`
22//! - `element.find`
23//! - `network.addIntercept`
24//!
25//! # Modules
26//!
27//! | Module | Description |
28//! |--------|-------------|
29//! | `command` | Command definitions by domain |
30//! | `event` | Event and EventReply types |
31//! | `request` | Request and Response types |
32
33// ============================================================================
34// Submodules
35// ============================================================================
36
37/// Command definitions organized by module.
38pub mod command;
39
40/// Event message types.
41pub mod event;
42
43/// Request and Response message types.
44pub mod request;
45
46// ============================================================================
47// Re-exports
48// ============================================================================
49
50pub use command::{
51 BrowsingContextCommand, Command, Cookie, ElementCommand, InputCommand, NetworkCommand,
52 ProxyCommand, ScriptCommand, SessionCommand, StorageCommand,
53};
54pub use event::{Event, EventReply, ParsedEvent};
55pub use request::{Request, Response, ResponseType};