rustenium_bidi_commands/browser/
commands.rs

1// Generated commands for module
2
3use serde::{Serialize, Deserialize};
4use crate::session::types::ProxyConfiguration;
5use crate::session::types::UserPromptHandler;
6use crate::EmptyParams;
7use crate::EmptyResult;
8use super::types::*;
9
10#[derive(Debug, Clone, Serialize, Deserialize)]
11#[serde(untagged)]
12pub enum BrowserCommand {
13    Close(Close),
14    CreateUserContext(CreateUserContext),
15    GetClientWindows(GetClientWindows),
16    GetUserContexts(GetUserContexts),
17    RemoveUserContext(RemoveUserContext),
18    SetClientWindowState(SetClientWindowState),
19    SetDownloadBehavior(SetDownloadBehavior),
20}
21
22
23#[derive(Debug, Clone, Serialize, Deserialize)]
24pub enum BrowserCloseMethod {
25    #[serde(rename = "drivers.close")]
26    BrowserClose,
27}
28
29#[derive(Debug, Clone, Serialize, Deserialize)]
30pub enum BrowserCreateUserContextMethod {
31    #[serde(rename = "drivers.createUserContext")]
32    BrowserCreateUserContext,
33}
34
35#[derive(Debug, Clone, Serialize, Deserialize)]
36pub enum BrowserGetClientWindowsMethod {
37    #[serde(rename = "drivers.getClientWindows")]
38    BrowserGetClientWindows,
39}
40
41#[derive(Debug, Clone, Serialize, Deserialize)]
42pub enum BrowserGetUserContextsMethod {
43    #[serde(rename = "drivers.getUserContexts")]
44    BrowserGetUserContexts,
45}
46
47#[derive(Debug, Clone, Serialize, Deserialize)]
48pub enum BrowserRemoveUserContextMethod {
49    #[serde(rename = "drivers.removeUserContext")]
50    BrowserRemoveUserContext,
51}
52
53#[derive(Debug, Clone, Serialize, Deserialize)]
54pub enum BrowserSetClientWindowStateMethod {
55    #[serde(rename = "drivers.setClientWindowState")]
56    BrowserSetClientWindowState,
57}
58
59#[derive(Debug, Clone, Serialize, Deserialize)]
60pub enum BrowserSetDownloadBehaviorMethod {
61    #[serde(rename = "drivers.setDownloadBehavior")]
62    BrowserSetDownloadBehavior,
63}
64
65#[derive(Debug, Clone, Serialize, Deserialize)]
66pub struct CreateUserContextParameters {
67    #[serde(rename = "acceptInsecureCerts")]
68    #[serde(skip_serializing_if = "Option::is_none")]
69    pub accept_insecure_certs: Option<bool>,
70    #[serde(rename = "proxy")]
71    #[serde(skip_serializing_if = "Option::is_none")]
72    pub proxy: Option<ProxyConfiguration>,
73    #[serde(rename = "unhandledPromptBehavior")]
74    #[serde(skip_serializing_if = "Option::is_none")]
75    pub unhandled_prompt_behavior: Option<UserPromptHandler>,
76}
77
78#[derive(Debug, Clone, Serialize, Deserialize)]
79pub struct RemoveUserContextParameters {
80    #[serde(rename = "userContext")]
81    pub user_context: UserContext,
82}
83
84#[derive(Debug, Clone, Serialize, Deserialize)]
85pub struct SetClientWindowStateParameters {
86    #[serde(rename = "clientWindow")]
87    pub client_window: ClientWindow,
88    #[serde(flatten)]
89    pub client_window_named_state_client_window_rect_state_union: ClientWindowNamedStateClientWindowRectStateUnion,
90}
91
92#[derive(Debug, Clone, Serialize, Deserialize)]
93pub struct SetDownloadBehaviorParameters {
94    #[serde(rename = "downloadBehavior")]
95    pub download_behavior: Option<DownloadBehavior>,
96    #[serde(rename = "userContexts")]
97    #[serde(skip_serializing_if = "Option::is_none")]
98    pub user_contexts: Option<Vec<UserContext>>,
99}
100
101#[derive(Debug, Clone, Serialize, Deserialize)]
102pub struct Close {
103    #[serde(rename = "method")]
104    pub method: BrowserCloseMethod,
105    #[serde(rename = "params")]
106    pub params: EmptyParams,
107}
108
109#[derive(Debug, Clone, Serialize, Deserialize)]
110pub struct CreateUserContext {
111    #[serde(rename = "method")]
112    pub method: BrowserCreateUserContextMethod,
113    #[serde(rename = "params")]
114    pub params: CreateUserContextParameters,
115}
116
117#[derive(Debug, Clone, Serialize, Deserialize)]
118pub struct GetClientWindows {
119    #[serde(rename = "method")]
120    pub method: BrowserGetClientWindowsMethod,
121    #[serde(rename = "params")]
122    pub params: EmptyParams,
123}
124
125#[derive(Debug, Clone, Serialize, Deserialize)]
126pub struct GetUserContexts {
127    #[serde(rename = "method")]
128    pub method: BrowserGetUserContextsMethod,
129    #[serde(rename = "params")]
130    pub params: EmptyParams,
131}
132
133#[derive(Debug, Clone, Serialize, Deserialize)]
134pub struct RemoveUserContext {
135    #[serde(rename = "method")]
136    pub method: BrowserRemoveUserContextMethod,
137    #[serde(rename = "params")]
138    pub params: RemoveUserContextParameters,
139}
140
141#[derive(Debug, Clone, Serialize, Deserialize)]
142pub struct SetClientWindowState {
143    #[serde(rename = "method")]
144    pub method: BrowserSetClientWindowStateMethod,
145    #[serde(rename = "params")]
146    pub params: SetClientWindowStateParameters,
147}
148
149#[derive(Debug, Clone, Serialize, Deserialize)]
150pub struct SetDownloadBehavior {
151    #[serde(rename = "method")]
152    pub method: BrowserSetDownloadBehaviorMethod,
153    #[serde(rename = "params")]
154    pub params: SetDownloadBehaviorParameters,
155}
156
157// Generated results
158
159#[derive(Debug, Clone, Serialize, Deserialize)]
160#[serde(untagged)]
161pub enum BrowserResult {
162    CloseResult(CloseResult),
163    CreateUserContextResult(CreateUserContextResult),
164    GetClientWindowsResult(GetClientWindowsResult),
165    GetUserContextsResult(GetUserContextsResult),
166    RemoveUserContextResult(RemoveUserContextResult),
167    SetClientWindowStateResult(SetClientWindowStateResult),
168    SetDownloadBehaviorResult(SetDownloadBehaviorResult),
169}
170
171
172pub type CloseResult = EmptyResult;
173
174
175pub type CreateUserContextResult = UserContextInfo;
176
177
178#[derive(Debug, Clone, Serialize, Deserialize)]
179pub struct GetClientWindowsResult {
180    #[serde(rename = "clientWindows")]
181    pub client_windows: Vec<ClientWindowInfo>,
182}
183
184#[derive(Debug, Clone, Serialize, Deserialize)]
185pub struct GetUserContextsResult {
186    #[serde(rename = "userContexts")]
187    pub user_contexts: Vec<UserContextInfo>,
188}
189
190pub type RemoveUserContextResult = EmptyResult;
191
192
193pub type SetClientWindowStateResult = ClientWindowInfo;
194
195
196pub type SetDownloadBehaviorResult = EmptyResult;
197
198