Skip to main content

zellij_utils/opt/rustwide/workdir/assets/prost/
api.event.rs

1#[allow(clippy::derive_partial_eq_without_eq)]
2#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct EventNameList {
4    #[prost(enumeration="EventType", repeated, tag="1")]
5    pub event_types: ::prost::alloc::vec::Vec<i32>,
6}
7#[allow(clippy::derive_partial_eq_without_eq)]
8#[derive(Clone, PartialEq, ::prost::Message)]
9pub struct Event {
10    #[prost(enumeration="EventType", tag="1")]
11    pub name: i32,
12    #[prost(oneof="event::Payload", tags="2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38")]
13    pub payload: ::core::option::Option<event::Payload>,
14}
15/// Nested message and enum types in `Event`.
16pub mod event {
17    #[allow(clippy::derive_partial_eq_without_eq)]
18#[derive(Clone, PartialEq, ::prost::Oneof)]
19    pub enum Payload {
20        #[prost(message, tag="2")]
21        ModeUpdatePayload(super::ModeUpdatePayload),
22        #[prost(message, tag="3")]
23        TabUpdatePayload(super::TabUpdatePayload),
24        #[prost(message, tag="4")]
25        PaneUpdatePayload(super::PaneUpdatePayload),
26        #[prost(message, tag="5")]
27        KeyPayload(super::super::key::Key),
28        #[prost(message, tag="6")]
29        MouseEventPayload(super::MouseEventPayload),
30        #[prost(float, tag="7")]
31        TimerPayload(f32),
32        #[prost(enumeration="super::CopyDestination", tag="8")]
33        CopyToClipboardPayload(i32),
34        #[prost(bool, tag="9")]
35        VisiblePayload(bool),
36        #[prost(message, tag="10")]
37        CustomMessagePayload(super::CustomMessagePayload),
38        #[prost(message, tag="11")]
39        FileListPayload(super::FileListPayload),
40        #[prost(message, tag="12")]
41        PermissionRequestResultPayload(super::PermissionRequestResultPayload),
42        #[prost(message, tag="13")]
43        SessionUpdatePayload(super::SessionUpdatePayload),
44        #[prost(message, tag="14")]
45        RunCommandResultPayload(super::RunCommandResultPayload),
46        #[prost(message, tag="15")]
47        WebRequestResultPayload(super::WebRequestResultPayload),
48        #[prost(message, tag="16")]
49        CommandPaneOpenedPayload(super::CommandPaneOpenedPayload),
50        #[prost(message, tag="17")]
51        CommandPaneExitedPayload(super::CommandPaneExitedPayload),
52        #[prost(message, tag="18")]
53        PaneClosedPayload(super::PaneClosedPayload),
54        #[prost(message, tag="19")]
55        EditPaneOpenedPayload(super::EditPaneOpenedPayload),
56        #[prost(message, tag="20")]
57        EditPaneExitedPayload(super::EditPaneExitedPayload),
58        #[prost(message, tag="21")]
59        CommandPaneRerunPayload(super::CommandPaneReRunPayload),
60        #[prost(message, tag="22")]
61        FailedToWriteConfigToDiskPayload(super::FailedToWriteConfigToDiskPayload),
62        #[prost(message, tag="23")]
63        ListClientsPayload(super::ListClientsPayload),
64        #[prost(message, tag="24")]
65        HostFolderChangedPayload(super::HostFolderChangedPayload),
66        #[prost(message, tag="25")]
67        FailedToChangeHostFolderPayload(super::FailedToChangeHostFolderPayload),
68        #[prost(message, tag="26")]
69        PastedTextPayload(super::PastedTextPayload),
70        #[prost(message, tag="27")]
71        WebServerStatusPayload(super::WebServerStatusPayload),
72        #[prost(message, tag="28")]
73        FailedToStartWebServerPayload(super::FailedToStartWebServerPayload),
74        #[prost(message, tag="29")]
75        InterceptedKeyPayload(super::super::key::Key),
76        #[prost(message, tag="30")]
77        PaneRenderReportPayload(super::PaneRenderReportPayload),
78        #[prost(message, tag="31")]
79        UserActionPayload(super::UserActionPayload),
80        #[prost(message, tag="32")]
81        ActionCompletePayload(super::ActionCompletePayload),
82        #[prost(message, tag="33")]
83        CwdChangedPayload(super::CwdChangedPayload),
84        #[prost(message, tag="34")]
85        AvailableLayoutInfoPayload(super::AvailableLayoutInfoPayload),
86        #[prost(message, tag="35")]
87        PluginConfigurationChangedPayload(super::PluginConfigurationChangedPayload),
88        #[prost(message, tag="36")]
89        HighlightClickedPayload(super::HighlightClickedPayload),
90        #[prost(message, tag="37")]
91        PaneRenderReportWithAnsiPayload(super::PaneRenderReportPayload),
92        #[prost(message, tag="38")]
93        InitialKeybindsPayload(super::InitialKeybindsPayload),
94    }
95}
96#[allow(clippy::derive_partial_eq_without_eq)]
97#[derive(Clone, PartialEq, ::prost::Message)]
98pub struct CwdChangedPayload {
99    #[prost(message, optional, tag="1")]
100    pub pane_id: ::core::option::Option<PaneId>,
101    #[prost(string, tag="2")]
102    pub new_cwd: ::prost::alloc::string::String,
103    #[prost(uint32, repeated, tag="3")]
104    pub focused_client_ids: ::prost::alloc::vec::Vec<u32>,
105}
106#[allow(clippy::derive_partial_eq_without_eq)]
107#[derive(Clone, PartialEq, ::prost::Message)]
108pub struct FailedToStartWebServerPayload {
109    #[prost(string, tag="1")]
110    pub error: ::prost::alloc::string::String,
111}
112#[allow(clippy::derive_partial_eq_without_eq)]
113#[derive(Clone, PartialEq, ::prost::Message)]
114pub struct PastedTextPayload {
115    #[prost(string, tag="1")]
116    pub pasted_text: ::prost::alloc::string::String,
117}
118#[allow(clippy::derive_partial_eq_without_eq)]
119#[derive(Clone, PartialEq, ::prost::Message)]
120pub struct WebServerStatusPayload {
121    #[prost(enumeration="WebServerStatusIndication", tag="1")]
122    pub web_server_status_indication: i32,
123    #[prost(string, optional, tag="2")]
124    pub payload: ::core::option::Option<::prost::alloc::string::String>,
125}
126#[allow(clippy::derive_partial_eq_without_eq)]
127#[derive(Clone, PartialEq, ::prost::Message)]
128pub struct FailedToChangeHostFolderPayload {
129    #[prost(string, optional, tag="1")]
130    pub error_message: ::core::option::Option<::prost::alloc::string::String>,
131}
132#[allow(clippy::derive_partial_eq_without_eq)]
133#[derive(Clone, PartialEq, ::prost::Message)]
134pub struct HostFolderChangedPayload {
135    #[prost(string, tag="1")]
136    pub new_host_folder_path: ::prost::alloc::string::String,
137}
138#[allow(clippy::derive_partial_eq_without_eq)]
139#[derive(Clone, PartialEq, ::prost::Message)]
140pub struct ListClientsPayload {
141    #[prost(message, repeated, tag="1")]
142    pub client_info: ::prost::alloc::vec::Vec<ClientInfo>,
143}
144#[allow(clippy::derive_partial_eq_without_eq)]
145#[derive(Clone, PartialEq, ::prost::Message)]
146pub struct ClientInfo {
147    #[prost(uint32, tag="1")]
148    pub client_id: u32,
149    #[prost(message, optional, tag="2")]
150    pub pane_id: ::core::option::Option<PaneId>,
151    #[prost(string, tag="3")]
152    pub running_command: ::prost::alloc::string::String,
153    #[prost(bool, tag="4")]
154    pub is_current_client: bool,
155}
156#[allow(clippy::derive_partial_eq_without_eq)]
157#[derive(Clone, PartialEq, ::prost::Message)]
158pub struct FailedToWriteConfigToDiskPayload {
159    #[prost(string, optional, tag="1")]
160    pub file_path: ::core::option::Option<::prost::alloc::string::String>,
161}
162#[allow(clippy::derive_partial_eq_without_eq)]
163#[derive(Clone, PartialEq, ::prost::Message)]
164pub struct CommandPaneReRunPayload {
165    #[prost(uint32, tag="1")]
166    pub terminal_pane_id: u32,
167    #[prost(message, repeated, tag="3")]
168    pub context: ::prost::alloc::vec::Vec<ContextItem>,
169}
170#[allow(clippy::derive_partial_eq_without_eq)]
171#[derive(Clone, PartialEq, ::prost::Message)]
172pub struct PaneClosedPayload {
173    #[prost(message, optional, tag="1")]
174    pub pane_id: ::core::option::Option<PaneId>,
175}
176/// duplicate of plugin_command.PaneId because protobuffs don't like recursive imports
177#[allow(clippy::derive_partial_eq_without_eq)]
178#[derive(Clone, PartialEq, ::prost::Message)]
179pub struct PaneId {
180    #[prost(enumeration="PaneType", tag="1")]
181    pub pane_type: i32,
182    #[prost(uint32, tag="2")]
183    pub id: u32,
184}
185#[allow(clippy::derive_partial_eq_without_eq)]
186#[derive(Clone, PartialEq, ::prost::Message)]
187pub struct CommandPaneOpenedPayload {
188    #[prost(uint32, tag="1")]
189    pub terminal_pane_id: u32,
190    #[prost(message, repeated, tag="2")]
191    pub context: ::prost::alloc::vec::Vec<ContextItem>,
192}
193#[allow(clippy::derive_partial_eq_without_eq)]
194#[derive(Clone, PartialEq, ::prost::Message)]
195pub struct EditPaneOpenedPayload {
196    #[prost(uint32, tag="1")]
197    pub terminal_pane_id: u32,
198    #[prost(message, repeated, tag="2")]
199    pub context: ::prost::alloc::vec::Vec<ContextItem>,
200}
201#[allow(clippy::derive_partial_eq_without_eq)]
202#[derive(Clone, PartialEq, ::prost::Message)]
203pub struct CommandPaneExitedPayload {
204    #[prost(uint32, tag="1")]
205    pub terminal_pane_id: u32,
206    #[prost(int32, optional, tag="2")]
207    pub exit_code: ::core::option::Option<i32>,
208    #[prost(message, repeated, tag="3")]
209    pub context: ::prost::alloc::vec::Vec<ContextItem>,
210}
211#[allow(clippy::derive_partial_eq_without_eq)]
212#[derive(Clone, PartialEq, ::prost::Message)]
213pub struct EditPaneExitedPayload {
214    #[prost(uint32, tag="1")]
215    pub terminal_pane_id: u32,
216    #[prost(int32, optional, tag="2")]
217    pub exit_code: ::core::option::Option<i32>,
218    #[prost(message, repeated, tag="3")]
219    pub context: ::prost::alloc::vec::Vec<ContextItem>,
220}
221#[allow(clippy::derive_partial_eq_without_eq)]
222#[derive(Clone, PartialEq, ::prost::Message)]
223pub struct SessionUpdatePayload {
224    #[prost(message, repeated, tag="1")]
225    pub session_manifests: ::prost::alloc::vec::Vec<SessionManifest>,
226    #[prost(message, repeated, tag="2")]
227    pub resurrectable_sessions: ::prost::alloc::vec::Vec<ResurrectableSession>,
228}
229#[allow(clippy::derive_partial_eq_without_eq)]
230#[derive(Clone, PartialEq, ::prost::Message)]
231pub struct AvailableLayoutInfoPayload {
232    #[prost(message, repeated, tag="1")]
233    pub available_layouts: ::prost::alloc::vec::Vec<LayoutInfo>,
234    #[prost(message, repeated, tag="2")]
235    pub layouts_with_errors: ::prost::alloc::vec::Vec<LayoutWithError>,
236}
237#[allow(clippy::derive_partial_eq_without_eq)]
238#[derive(Clone, PartialEq, ::prost::Message)]
239pub struct RunCommandResultPayload {
240    #[prost(int32, optional, tag="1")]
241    pub exit_code: ::core::option::Option<i32>,
242    #[prost(bytes="vec", tag="2")]
243    pub stdout: ::prost::alloc::vec::Vec<u8>,
244    #[prost(bytes="vec", tag="3")]
245    pub stderr: ::prost::alloc::vec::Vec<u8>,
246    #[prost(message, repeated, tag="4")]
247    pub context: ::prost::alloc::vec::Vec<ContextItem>,
248}
249#[allow(clippy::derive_partial_eq_without_eq)]
250#[derive(Clone, PartialEq, ::prost::Message)]
251pub struct WebRequestResultPayload {
252    #[prost(int32, tag="1")]
253    pub status: i32,
254    #[prost(message, repeated, tag="2")]
255    pub headers: ::prost::alloc::vec::Vec<Header>,
256    #[prost(bytes="vec", tag="3")]
257    pub body: ::prost::alloc::vec::Vec<u8>,
258    #[prost(message, repeated, tag="4")]
259    pub context: ::prost::alloc::vec::Vec<ContextItem>,
260}
261#[allow(clippy::derive_partial_eq_without_eq)]
262#[derive(Clone, PartialEq, ::prost::Message)]
263pub struct ContextItem {
264    #[prost(string, tag="1")]
265    pub name: ::prost::alloc::string::String,
266    #[prost(string, tag="2")]
267    pub value: ::prost::alloc::string::String,
268}
269#[allow(clippy::derive_partial_eq_without_eq)]
270#[derive(Clone, PartialEq, ::prost::Message)]
271pub struct Header {
272    #[prost(string, tag="1")]
273    pub name: ::prost::alloc::string::String,
274    #[prost(string, tag="2")]
275    pub value: ::prost::alloc::string::String,
276}
277#[allow(clippy::derive_partial_eq_without_eq)]
278#[derive(Clone, PartialEq, ::prost::Message)]
279pub struct PermissionRequestResultPayload {
280    #[prost(bool, tag="1")]
281    pub granted: bool,
282}
283#[allow(clippy::derive_partial_eq_without_eq)]
284#[derive(Clone, PartialEq, ::prost::Message)]
285pub struct FileListPayload {
286    #[prost(string, repeated, tag="1")]
287    pub paths: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
288    #[prost(message, repeated, tag="2")]
289    pub paths_metadata: ::prost::alloc::vec::Vec<FileMetadata>,
290}
291#[allow(clippy::derive_partial_eq_without_eq)]
292#[derive(Clone, PartialEq, ::prost::Message)]
293pub struct FileMetadata {
294    /// if this is false, the metadata for this file has not been read
295    #[prost(bool, tag="1")]
296    pub metadata_is_set: bool,
297    #[prost(bool, tag="2")]
298    pub is_dir: bool,
299    #[prost(bool, tag="3")]
300    pub is_file: bool,
301    #[prost(bool, tag="4")]
302    pub is_symlink: bool,
303    #[prost(uint64, tag="5")]
304    pub len: u64,
305}
306#[allow(clippy::derive_partial_eq_without_eq)]
307#[derive(Clone, PartialEq, ::prost::Message)]
308pub struct CustomMessagePayload {
309    #[prost(string, tag="1")]
310    pub message_name: ::prost::alloc::string::String,
311    #[prost(string, tag="2")]
312    pub payload: ::prost::alloc::string::String,
313}
314#[allow(clippy::derive_partial_eq_without_eq)]
315#[derive(Clone, PartialEq, ::prost::Message)]
316pub struct MouseEventPayload {
317    #[prost(enumeration="MouseEventName", tag="1")]
318    pub mouse_event_name: i32,
319    #[prost(oneof="mouse_event_payload::MouseEventPayload", tags="2, 3")]
320    pub mouse_event_payload: ::core::option::Option<mouse_event_payload::MouseEventPayload>,
321}
322/// Nested message and enum types in `MouseEventPayload`.
323pub mod mouse_event_payload {
324    #[allow(clippy::derive_partial_eq_without_eq)]
325#[derive(Clone, PartialEq, ::prost::Oneof)]
326    pub enum MouseEventPayload {
327        #[prost(uint32, tag="2")]
328        LineCount(u32),
329        #[prost(message, tag="3")]
330        Position(super::super::action::Position),
331    }
332}
333#[allow(clippy::derive_partial_eq_without_eq)]
334#[derive(Clone, PartialEq, ::prost::Message)]
335pub struct TabUpdatePayload {
336    #[prost(message, repeated, tag="1")]
337    pub tab_info: ::prost::alloc::vec::Vec<TabInfo>,
338}
339#[allow(clippy::derive_partial_eq_without_eq)]
340#[derive(Clone, PartialEq, ::prost::Message)]
341pub struct PaneUpdatePayload {
342    #[prost(message, repeated, tag="1")]
343    pub pane_manifest: ::prost::alloc::vec::Vec<PaneManifest>,
344}
345#[allow(clippy::derive_partial_eq_without_eq)]
346#[derive(Clone, PartialEq, ::prost::Message)]
347pub struct PaneManifest {
348    #[prost(uint32, tag="1")]
349    pub tab_index: u32,
350    #[prost(message, repeated, tag="2")]
351    pub panes: ::prost::alloc::vec::Vec<PaneInfo>,
352}
353#[allow(clippy::derive_partial_eq_without_eq)]
354#[derive(Clone, PartialEq, ::prost::Message)]
355pub struct SessionManifest {
356    #[prost(string, tag="1")]
357    pub name: ::prost::alloc::string::String,
358    #[prost(message, repeated, tag="2")]
359    pub tabs: ::prost::alloc::vec::Vec<TabInfo>,
360    #[prost(message, repeated, tag="3")]
361    pub panes: ::prost::alloc::vec::Vec<PaneManifest>,
362    #[prost(uint32, tag="4")]
363    pub connected_clients: u32,
364    #[prost(bool, tag="5")]
365    pub is_current_session: bool,
366    #[prost(message, repeated, tag="6")]
367    pub available_layouts: ::prost::alloc::vec::Vec<LayoutInfo>,
368    #[prost(message, repeated, tag="7")]
369    pub plugins: ::prost::alloc::vec::Vec<PluginInfo>,
370    #[prost(bool, tag="8")]
371    pub web_clients_allowed: bool,
372    #[prost(uint32, tag="9")]
373    pub web_client_count: u32,
374    #[prost(message, repeated, tag="10")]
375    pub tab_history: ::prost::alloc::vec::Vec<ClientTabHistory>,
376    #[prost(message, repeated, tag="11")]
377    pub pane_history: ::prost::alloc::vec::Vec<ClientPaneHistory>,
378    #[prost(uint64, tag="12")]
379    pub creation_time: u64,
380}
381#[allow(clippy::derive_partial_eq_without_eq)]
382#[derive(Clone, PartialEq, ::prost::Message)]
383pub struct ClientTabHistory {
384    #[prost(uint32, tag="1")]
385    pub client_id: u32,
386    #[prost(uint32, repeated, tag="2")]
387    pub tab_history: ::prost::alloc::vec::Vec<u32>,
388}
389#[allow(clippy::derive_partial_eq_without_eq)]
390#[derive(Clone, PartialEq, ::prost::Message)]
391pub struct ClientPaneHistory {
392    #[prost(uint32, tag="1")]
393    pub client_id: u32,
394    #[prost(message, repeated, tag="2")]
395    pub pane_history: ::prost::alloc::vec::Vec<PaneId>,
396}
397#[allow(clippy::derive_partial_eq_without_eq)]
398#[derive(Clone, PartialEq, ::prost::Message)]
399pub struct PluginInfo {
400    #[prost(uint32, tag="1")]
401    pub plugin_id: u32,
402    #[prost(string, tag="2")]
403    pub plugin_url: ::prost::alloc::string::String,
404    #[prost(message, repeated, tag="3")]
405    pub plugin_config: ::prost::alloc::vec::Vec<ContextItem>,
406}
407#[allow(clippy::derive_partial_eq_without_eq)]
408#[derive(Clone, PartialEq, ::prost::Message)]
409pub struct LayoutInfo {
410    #[prost(string, tag="1")]
411    pub name: ::prost::alloc::string::String,
412    #[prost(string, tag="2")]
413    pub source: ::prost::alloc::string::String,
414    #[prost(message, optional, tag="5")]
415    pub layout_metadata: ::core::option::Option<LayoutMetadata>,
416}
417#[allow(clippy::derive_partial_eq_without_eq)]
418#[derive(Clone, PartialEq, ::prost::Message)]
419pub struct LayoutWithError {
420    #[prost(string, tag="1")]
421    pub layout_name: ::prost::alloc::string::String,
422    #[prost(message, optional, tag="2")]
423    pub error: ::core::option::Option<LayoutParsingError>,
424}
425#[allow(clippy::derive_partial_eq_without_eq)]
426#[derive(Clone, PartialEq, ::prost::Message)]
427pub struct LayoutParsingError {
428    #[prost(oneof="layout_parsing_error::ErrorType", tags="1, 2")]
429    pub error_type: ::core::option::Option<layout_parsing_error::ErrorType>,
430}
431/// Nested message and enum types in `LayoutParsingError`.
432pub mod layout_parsing_error {
433    #[allow(clippy::derive_partial_eq_without_eq)]
434#[derive(Clone, PartialEq, ::prost::Oneof)]
435    pub enum ErrorType {
436        #[prost(message, tag="1")]
437        KdlError(super::KdlErrorVariant),
438        #[prost(message, tag="2")]
439        SyntaxError(super::SyntaxError),
440    }
441}
442#[allow(clippy::derive_partial_eq_without_eq)]
443#[derive(Clone, PartialEq, ::prost::Message)]
444pub struct KdlErrorVariant {
445    #[prost(message, optional, tag="1")]
446    pub kdl_error: ::core::option::Option<KdlError>,
447    #[prost(string, tag="2")]
448    pub file_name: ::prost::alloc::string::String,
449    #[prost(string, tag="3")]
450    pub source_code: ::prost::alloc::string::String,
451}
452/// Empty message, just a marker
453#[allow(clippy::derive_partial_eq_without_eq)]
454#[derive(Clone, PartialEq, ::prost::Message)]
455pub struct SyntaxError {
456}
457#[allow(clippy::derive_partial_eq_without_eq)]
458#[derive(Clone, PartialEq, ::prost::Message)]
459pub struct KdlError {
460    #[prost(string, tag="1")]
461    pub error_message: ::prost::alloc::string::String,
462    #[prost(uint64, optional, tag="2")]
463    pub offset: ::core::option::Option<u64>,
464    #[prost(uint64, optional, tag="3")]
465    pub len: ::core::option::Option<u64>,
466    #[prost(string, optional, tag="4")]
467    pub help_message: ::core::option::Option<::prost::alloc::string::String>,
468}
469#[allow(clippy::derive_partial_eq_without_eq)]
470#[derive(Clone, PartialEq, ::prost::Message)]
471pub struct LayoutMetadata {
472    #[prost(message, repeated, tag="1")]
473    pub tabs: ::prost::alloc::vec::Vec<TabMetadata>,
474    #[prost(string, tag="2")]
475    pub creation_time: ::prost::alloc::string::String,
476    #[prost(string, tag="3")]
477    pub update_time: ::prost::alloc::string::String,
478}
479#[allow(clippy::derive_partial_eq_without_eq)]
480#[derive(Clone, PartialEq, ::prost::Message)]
481pub struct TabMetadata {
482    #[prost(message, repeated, tag="1")]
483    pub pane_metadata: ::prost::alloc::vec::Vec<PaneMetadata>,
484    #[prost(string, optional, tag="2")]
485    pub name: ::core::option::Option<::prost::alloc::string::String>,
486}
487#[allow(clippy::derive_partial_eq_without_eq)]
488#[derive(Clone, PartialEq, ::prost::Message)]
489pub struct PaneMetadata {
490    #[prost(string, optional, tag="1")]
491    pub name: ::core::option::Option<::prost::alloc::string::String>,
492    #[prost(bool, tag="2")]
493    pub is_plugin: bool,
494    #[prost(bool, tag="3")]
495    pub is_builtin_plugin: bool,
496}
497#[allow(clippy::derive_partial_eq_without_eq)]
498#[derive(Clone, PartialEq, ::prost::Message)]
499pub struct ResurrectableSession {
500    #[prost(string, tag="1")]
501    pub name: ::prost::alloc::string::String,
502    #[prost(uint64, tag="2")]
503    pub creation_time: u64,
504}
505#[allow(clippy::derive_partial_eq_without_eq)]
506#[derive(Clone, PartialEq, ::prost::Message)]
507pub struct PaneInfo {
508    #[prost(uint32, tag="1")]
509    pub id: u32,
510    #[prost(bool, tag="2")]
511    pub is_plugin: bool,
512    #[prost(bool, tag="3")]
513    pub is_focused: bool,
514    #[prost(bool, tag="4")]
515    pub is_fullscreen: bool,
516    #[prost(bool, tag="5")]
517    pub is_floating: bool,
518    #[prost(bool, tag="6")]
519    pub is_suppressed: bool,
520    #[prost(string, tag="7")]
521    pub title: ::prost::alloc::string::String,
522    #[prost(bool, tag="8")]
523    pub exited: bool,
524    #[prost(int32, optional, tag="9")]
525    pub exit_status: ::core::option::Option<i32>,
526    #[prost(bool, tag="10")]
527    pub is_held: bool,
528    #[prost(uint32, tag="11")]
529    pub pane_x: u32,
530    #[prost(uint32, tag="12")]
531    pub pane_content_x: u32,
532    #[prost(uint32, tag="13")]
533    pub pane_y: u32,
534    #[prost(uint32, tag="14")]
535    pub pane_content_y: u32,
536    #[prost(uint32, tag="15")]
537    pub pane_rows: u32,
538    #[prost(uint32, tag="16")]
539    pub pane_content_rows: u32,
540    #[prost(uint32, tag="17")]
541    pub pane_columns: u32,
542    #[prost(uint32, tag="18")]
543    pub pane_content_columns: u32,
544    #[prost(message, optional, tag="19")]
545    pub cursor_coordinates_in_pane: ::core::option::Option<super::action::Position>,
546    #[prost(string, optional, tag="20")]
547    pub terminal_command: ::core::option::Option<::prost::alloc::string::String>,
548    #[prost(string, optional, tag="21")]
549    pub plugin_url: ::core::option::Option<::prost::alloc::string::String>,
550    #[prost(bool, tag="22")]
551    pub is_selectable: bool,
552    #[prost(message, repeated, tag="23")]
553    pub index_in_pane_group: ::prost::alloc::vec::Vec<IndexInPaneGroup>,
554    #[prost(string, optional, tag="24")]
555    pub default_fg: ::core::option::Option<::prost::alloc::string::String>,
556    #[prost(string, optional, tag="25")]
557    pub default_bg: ::core::option::Option<::prost::alloc::string::String>,
558}
559#[allow(clippy::derive_partial_eq_without_eq)]
560#[derive(Clone, PartialEq, ::prost::Message)]
561pub struct IndexInPaneGroup {
562    #[prost(uint32, tag="1")]
563    pub client_id: u32,
564    #[prost(uint32, tag="2")]
565    pub index: u32,
566}
567#[allow(clippy::derive_partial_eq_without_eq)]
568#[derive(Clone, PartialEq, ::prost::Message)]
569pub struct TabInfo {
570    #[prost(uint32, tag="1")]
571    pub position: u32,
572    #[prost(string, tag="2")]
573    pub name: ::prost::alloc::string::String,
574    #[prost(bool, tag="3")]
575    pub active: bool,
576    #[prost(uint32, tag="4")]
577    pub panes_to_hide: u32,
578    #[prost(bool, tag="5")]
579    pub is_fullscreen_active: bool,
580    #[prost(bool, tag="6")]
581    pub is_sync_panes_active: bool,
582    #[prost(bool, tag="7")]
583    pub are_floating_panes_visible: bool,
584    #[prost(uint32, repeated, tag="8")]
585    pub other_focused_clients: ::prost::alloc::vec::Vec<u32>,
586    #[prost(string, optional, tag="9")]
587    pub active_swap_layout_name: ::core::option::Option<::prost::alloc::string::String>,
588    #[prost(bool, tag="10")]
589    pub is_swap_layout_dirty: bool,
590    #[prost(uint32, tag="11")]
591    pub viewport_rows: u32,
592    #[prost(uint32, tag="12")]
593    pub viewport_columns: u32,
594    #[prost(uint32, tag="13")]
595    pub display_area_rows: u32,
596    #[prost(uint32, tag="14")]
597    pub display_area_columns: u32,
598    #[prost(uint32, tag="15")]
599    pub selectable_tiled_panes_count: u32,
600    #[prost(uint32, tag="16")]
601    pub selectable_floating_panes_count: u32,
602    #[prost(uint32, tag="17")]
603    pub tab_id: u32,
604    #[prost(bool, tag="18")]
605    pub has_bell_notification: bool,
606    #[prost(bool, tag="19")]
607    pub is_flashing_bell: bool,
608}
609#[allow(clippy::derive_partial_eq_without_eq)]
610#[derive(Clone, PartialEq, ::prost::Message)]
611pub struct ModeUpdatePayload {
612    #[prost(enumeration="super::input_mode::InputMode", tag="1")]
613    pub current_mode: i32,
614    #[prost(message, repeated, tag="2")]
615    pub keybinds: ::prost::alloc::vec::Vec<InputModeKeybinds>,
616    #[prost(message, optional, tag="3")]
617    pub style: ::core::option::Option<super::style::Style>,
618    #[prost(bool, tag="4")]
619    pub arrow_fonts_support: bool,
620    #[prost(string, optional, tag="5")]
621    pub session_name: ::core::option::Option<::prost::alloc::string::String>,
622    #[prost(enumeration="super::input_mode::InputMode", optional, tag="6")]
623    pub base_mode: ::core::option::Option<i32>,
624    #[prost(string, optional, tag="7")]
625    pub editor: ::core::option::Option<::prost::alloc::string::String>,
626    #[prost(string, optional, tag="8")]
627    pub shell: ::core::option::Option<::prost::alloc::string::String>,
628    #[prost(bool, optional, tag="9")]
629    pub web_clients_allowed: ::core::option::Option<bool>,
630    #[prost(enumeration="WebSharing", optional, tag="10")]
631    pub web_sharing: ::core::option::Option<i32>,
632    #[prost(bool, optional, tag="11")]
633    pub currently_marking_pane_group: ::core::option::Option<bool>,
634    #[prost(bool, optional, tag="12")]
635    pub is_web_client: ::core::option::Option<bool>,
636    #[prost(string, optional, tag="13")]
637    pub web_server_ip: ::core::option::Option<::prost::alloc::string::String>,
638    #[prost(uint32, optional, tag="14")]
639    pub web_server_port: ::core::option::Option<u32>,
640    #[prost(bool, optional, tag="15")]
641    pub web_server_capability: ::core::option::Option<bool>,
642}
643#[allow(clippy::derive_partial_eq_without_eq)]
644#[derive(Clone, PartialEq, ::prost::Message)]
645pub struct InputModeKeybinds {
646    #[prost(enumeration="super::input_mode::InputMode", tag="1")]
647    pub mode: i32,
648    #[prost(message, repeated, tag="2")]
649    pub key_bind: ::prost::alloc::vec::Vec<KeyBind>,
650}
651#[allow(clippy::derive_partial_eq_without_eq)]
652#[derive(Clone, PartialEq, ::prost::Message)]
653pub struct KeyBind {
654    #[prost(message, optional, tag="1")]
655    pub key: ::core::option::Option<super::key::Key>,
656    #[prost(message, repeated, tag="2")]
657    pub action: ::prost::alloc::vec::Vec<super::action::Action>,
658}
659#[allow(clippy::derive_partial_eq_without_eq)]
660#[derive(Clone, PartialEq, ::prost::Message)]
661pub struct PaneRenderReportPayload {
662    #[prost(message, repeated, tag="1")]
663    pub pane_contents: ::prost::alloc::vec::Vec<PaneContentsEntry>,
664}
665#[allow(clippy::derive_partial_eq_without_eq)]
666#[derive(Clone, PartialEq, ::prost::Message)]
667pub struct PaneContentsEntry {
668    #[prost(message, optional, tag="1")]
669    pub pane_id: ::core::option::Option<PaneId>,
670    #[prost(message, optional, tag="2")]
671    pub pane_contents: ::core::option::Option<PaneContents>,
672}
673#[allow(clippy::derive_partial_eq_without_eq)]
674#[derive(Clone, PartialEq, ::prost::Message)]
675pub struct PaneContents {
676    #[prost(string, repeated, tag="1")]
677    pub viewport: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
678    #[prost(message, optional, tag="2")]
679    pub selected_text: ::core::option::Option<SelectedText>,
680    #[prost(string, repeated, tag="3")]
681    pub lines_above_viewport: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
682    #[prost(string, repeated, tag="4")]
683    pub lines_below_viewport: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
684}
685#[allow(clippy::derive_partial_eq_without_eq)]
686#[derive(Clone, PartialEq, ::prost::Message)]
687pub struct PaneScrollbackResponse {
688    #[prost(oneof="pane_scrollback_response::Response", tags="1, 2")]
689    pub response: ::core::option::Option<pane_scrollback_response::Response>,
690}
691/// Nested message and enum types in `PaneScrollbackResponse`.
692pub mod pane_scrollback_response {
693    #[allow(clippy::derive_partial_eq_without_eq)]
694#[derive(Clone, PartialEq, ::prost::Oneof)]
695    pub enum Response {
696        #[prost(message, tag="1")]
697        Ok(super::PaneContents),
698        #[prost(string, tag="2")]
699        Err(::prost::alloc::string::String),
700    }
701}
702#[allow(clippy::derive_partial_eq_without_eq)]
703#[derive(Clone, PartialEq, ::prost::Message)]
704pub struct SelectedText {
705    #[prost(message, optional, tag="1")]
706    pub start: ::core::option::Option<super::action::Position>,
707    #[prost(message, optional, tag="2")]
708    pub end: ::core::option::Option<super::action::Position>,
709}
710#[allow(clippy::derive_partial_eq_without_eq)]
711#[derive(Clone, PartialEq, ::prost::Message)]
712pub struct UserActionPayload {
713    #[prost(message, optional, tag="1")]
714    pub action: ::core::option::Option<super::action::Action>,
715    #[prost(uint32, tag="2")]
716    pub client_id: u32,
717    #[prost(uint32, optional, tag="3")]
718    pub terminal_id: ::core::option::Option<u32>,
719    #[prost(uint32, optional, tag="4")]
720    pub cli_client_id: ::core::option::Option<u32>,
721}
722#[allow(clippy::derive_partial_eq_without_eq)]
723#[derive(Clone, PartialEq, ::prost::Message)]
724pub struct ActionCompletePayload {
725    #[prost(message, optional, tag="1")]
726    pub action: ::core::option::Option<super::action::Action>,
727    #[prost(message, optional, tag="2")]
728    pub pane_id: ::core::option::Option<PaneId>,
729    #[prost(message, repeated, tag="3")]
730    pub context: ::prost::alloc::vec::Vec<ContextItem>,
731}
732#[allow(clippy::derive_partial_eq_without_eq)]
733#[derive(Clone, PartialEq, ::prost::Message)]
734pub struct PluginConfigurationChangedPayload {
735    #[prost(message, repeated, tag="1")]
736    pub configuration: ::prost::alloc::vec::Vec<ContextItem>,
737}
738#[allow(clippy::derive_partial_eq_without_eq)]
739#[derive(Clone, PartialEq, ::prost::Message)]
740pub struct HighlightClickedPayload {
741    #[prost(message, optional, tag="1")]
742    pub pane_id: ::core::option::Option<PaneId>,
743    #[prost(string, tag="2")]
744    pub pattern: ::prost::alloc::string::String,
745    #[prost(string, tag="3")]
746    pub matched_string: ::prost::alloc::string::String,
747    #[prost(message, repeated, tag="4")]
748    pub context: ::prost::alloc::vec::Vec<ContextItem>,
749}
750#[allow(clippy::derive_partial_eq_without_eq)]
751#[derive(Clone, PartialEq, ::prost::Message)]
752pub struct InitialKeybindsPayload {
753    #[prost(message, repeated, tag="1")]
754    pub keybinds: ::prost::alloc::vec::Vec<InputModeKeybinds>,
755}
756#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
757#[repr(i32)]
758pub enum EventType {
759    /// / The input mode or relevant metadata changed
760    ModeUpdate = 0,
761    /// / The tab state in the app was changed
762    TabUpdate = 1,
763    /// / The pane state in the app was changed
764    PaneUpdate = 2,
765    /// / A key was pressed while the user is focused on this plugin's pane
766    Key = 3,
767    /// / A mouse event happened while the user is focused on this plugin's pane
768    Mouse = 4,
769    /// / A timer expired set by the `set_timeout` method exported by `zellij-tile`.
770    Timer = 5,
771    /// / Text was copied to the clipboard anywhere in the app
772    CopyToClipboard = 6,
773    /// / Failed to copy text to clipboard anywhere in the app
774    SystemClipboardFailure = 7,
775    /// / Input was received anywhere in the app
776    InputReceived = 8,
777    /// / This plugin became visible or invisible
778    Visible = 9,
779    /// / A message from one of the plugin's workers
780    CustomMessage = 10,
781    /// / A file was created somewhere in the Zellij CWD folder
782    FileSystemCreate = 11,
783    /// / A file was accessed somewhere in the Zellij CWD folder
784    FileSystemRead = 12,
785    /// / A file was modified somewhere in the Zellij CWD folder
786    FileSystemUpdate = 13,
787    /// / A file was deleted somewhere in the Zellij CWD folder
788    FileSystemDelete = 14,
789    PermissionRequestResult = 15,
790    SessionUpdate = 16,
791    RunCommandResult = 17,
792    WebRequestResult = 18,
793    CommandPaneOpened = 19,
794    CommandPaneExited = 20,
795    PaneClosed = 21,
796    EditPaneOpened = 22,
797    EditPaneExited = 23,
798    CommandPaneReRun = 24,
799    FailedToWriteConfigToDisk = 25,
800    ListClients = 26,
801    HostFolderChanged = 27,
802    FailedToChangeHostFolder = 28,
803    PastedText = 29,
804    ConfigWasWrittenToDisk = 30,
805    WebServerStatus = 31,
806    BeforeClose = 32,
807    FailedToStartWebServer = 34,
808    InterceptedKeyPress = 35,
809    PaneRenderReport = 36,
810    UserAction = 37,
811    ActionComplete = 38,
812    CwdChanged = 39,
813    AvailableLayoutInfo = 40,
814    PluginConfigurationChanged = 41,
815    HighlightClicked = 42,
816    PaneRenderReportWithAnsi = 43,
817    InitialKeybinds = 44,
818}
819impl EventType {
820    /// String value of the enum field names used in the ProtoBuf definition.
821    ///
822    /// The values are not transformed in any way and thus are considered stable
823    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
824    pub fn as_str_name(&self) -> &'static str {
825        match self {
826            EventType::ModeUpdate => "ModeUpdate",
827            EventType::TabUpdate => "TabUpdate",
828            EventType::PaneUpdate => "PaneUpdate",
829            EventType::Key => "Key",
830            EventType::Mouse => "Mouse",
831            EventType::Timer => "Timer",
832            EventType::CopyToClipboard => "CopyToClipboard",
833            EventType::SystemClipboardFailure => "SystemClipboardFailure",
834            EventType::InputReceived => "InputReceived",
835            EventType::Visible => "Visible",
836            EventType::CustomMessage => "CustomMessage",
837            EventType::FileSystemCreate => "FileSystemCreate",
838            EventType::FileSystemRead => "FileSystemRead",
839            EventType::FileSystemUpdate => "FileSystemUpdate",
840            EventType::FileSystemDelete => "FileSystemDelete",
841            EventType::PermissionRequestResult => "PermissionRequestResult",
842            EventType::SessionUpdate => "SessionUpdate",
843            EventType::RunCommandResult => "RunCommandResult",
844            EventType::WebRequestResult => "WebRequestResult",
845            EventType::CommandPaneOpened => "CommandPaneOpened",
846            EventType::CommandPaneExited => "CommandPaneExited",
847            EventType::PaneClosed => "PaneClosed",
848            EventType::EditPaneOpened => "EditPaneOpened",
849            EventType::EditPaneExited => "EditPaneExited",
850            EventType::CommandPaneReRun => "CommandPaneReRun",
851            EventType::FailedToWriteConfigToDisk => "FailedToWriteConfigToDisk",
852            EventType::ListClients => "ListClients",
853            EventType::HostFolderChanged => "HostFolderChanged",
854            EventType::FailedToChangeHostFolder => "FailedToChangeHostFolder",
855            EventType::PastedText => "PastedText",
856            EventType::ConfigWasWrittenToDisk => "ConfigWasWrittenToDisk",
857            EventType::WebServerStatus => "WebServerStatus",
858            EventType::BeforeClose => "BeforeClose",
859            EventType::FailedToStartWebServer => "FailedToStartWebServer",
860            EventType::InterceptedKeyPress => "InterceptedKeyPress",
861            EventType::PaneRenderReport => "PaneRenderReport",
862            EventType::UserAction => "UserAction",
863            EventType::ActionComplete => "ActionComplete",
864            EventType::CwdChanged => "CwdChanged",
865            EventType::AvailableLayoutInfo => "AvailableLayoutInfo",
866            EventType::PluginConfigurationChanged => "PluginConfigurationChanged",
867            EventType::HighlightClicked => "HighlightClicked",
868            EventType::PaneRenderReportWithAnsi => "PaneRenderReportWithAnsi",
869            EventType::InitialKeybinds => "InitialKeybinds",
870        }
871    }
872    /// Creates an enum from field names used in the ProtoBuf definition.
873    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
874        match value {
875            "ModeUpdate" => Some(Self::ModeUpdate),
876            "TabUpdate" => Some(Self::TabUpdate),
877            "PaneUpdate" => Some(Self::PaneUpdate),
878            "Key" => Some(Self::Key),
879            "Mouse" => Some(Self::Mouse),
880            "Timer" => Some(Self::Timer),
881            "CopyToClipboard" => Some(Self::CopyToClipboard),
882            "SystemClipboardFailure" => Some(Self::SystemClipboardFailure),
883            "InputReceived" => Some(Self::InputReceived),
884            "Visible" => Some(Self::Visible),
885            "CustomMessage" => Some(Self::CustomMessage),
886            "FileSystemCreate" => Some(Self::FileSystemCreate),
887            "FileSystemRead" => Some(Self::FileSystemRead),
888            "FileSystemUpdate" => Some(Self::FileSystemUpdate),
889            "FileSystemDelete" => Some(Self::FileSystemDelete),
890            "PermissionRequestResult" => Some(Self::PermissionRequestResult),
891            "SessionUpdate" => Some(Self::SessionUpdate),
892            "RunCommandResult" => Some(Self::RunCommandResult),
893            "WebRequestResult" => Some(Self::WebRequestResult),
894            "CommandPaneOpened" => Some(Self::CommandPaneOpened),
895            "CommandPaneExited" => Some(Self::CommandPaneExited),
896            "PaneClosed" => Some(Self::PaneClosed),
897            "EditPaneOpened" => Some(Self::EditPaneOpened),
898            "EditPaneExited" => Some(Self::EditPaneExited),
899            "CommandPaneReRun" => Some(Self::CommandPaneReRun),
900            "FailedToWriteConfigToDisk" => Some(Self::FailedToWriteConfigToDisk),
901            "ListClients" => Some(Self::ListClients),
902            "HostFolderChanged" => Some(Self::HostFolderChanged),
903            "FailedToChangeHostFolder" => Some(Self::FailedToChangeHostFolder),
904            "PastedText" => Some(Self::PastedText),
905            "ConfigWasWrittenToDisk" => Some(Self::ConfigWasWrittenToDisk),
906            "WebServerStatus" => Some(Self::WebServerStatus),
907            "BeforeClose" => Some(Self::BeforeClose),
908            "FailedToStartWebServer" => Some(Self::FailedToStartWebServer),
909            "InterceptedKeyPress" => Some(Self::InterceptedKeyPress),
910            "PaneRenderReport" => Some(Self::PaneRenderReport),
911            "UserAction" => Some(Self::UserAction),
912            "ActionComplete" => Some(Self::ActionComplete),
913            "CwdChanged" => Some(Self::CwdChanged),
914            "AvailableLayoutInfo" => Some(Self::AvailableLayoutInfo),
915            "PluginConfigurationChanged" => Some(Self::PluginConfigurationChanged),
916            "HighlightClicked" => Some(Self::HighlightClicked),
917            "PaneRenderReportWithAnsi" => Some(Self::PaneRenderReportWithAnsi),
918            "InitialKeybinds" => Some(Self::InitialKeybinds),
919            _ => None,
920        }
921    }
922}
923#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
924#[repr(i32)]
925pub enum WebServerStatusIndication {
926    Online = 0,
927    Offline = 1,
928    DifferentVersion = 2,
929}
930impl WebServerStatusIndication {
931    /// String value of the enum field names used in the ProtoBuf definition.
932    ///
933    /// The values are not transformed in any way and thus are considered stable
934    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
935    pub fn as_str_name(&self) -> &'static str {
936        match self {
937            WebServerStatusIndication::Online => "Online",
938            WebServerStatusIndication::Offline => "Offline",
939            WebServerStatusIndication::DifferentVersion => "DifferentVersion",
940        }
941    }
942    /// Creates an enum from field names used in the ProtoBuf definition.
943    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
944        match value {
945            "Online" => Some(Self::Online),
946            "Offline" => Some(Self::Offline),
947            "DifferentVersion" => Some(Self::DifferentVersion),
948            _ => None,
949        }
950    }
951}
952/// duplicate of plugin_command.PaneType because protobuffs don't like recursive imports
953#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
954#[repr(i32)]
955pub enum PaneType {
956    Terminal = 0,
957    Plugin = 1,
958}
959impl PaneType {
960    /// String value of the enum field names used in the ProtoBuf definition.
961    ///
962    /// The values are not transformed in any way and thus are considered stable
963    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
964    pub fn as_str_name(&self) -> &'static str {
965        match self {
966            PaneType::Terminal => "Terminal",
967            PaneType::Plugin => "Plugin",
968        }
969    }
970    /// Creates an enum from field names used in the ProtoBuf definition.
971    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
972        match value {
973            "Terminal" => Some(Self::Terminal),
974            "Plugin" => Some(Self::Plugin),
975            _ => None,
976        }
977    }
978}
979#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
980#[repr(i32)]
981pub enum CopyDestination {
982    Command = 0,
983    Primary = 1,
984    System = 2,
985}
986impl CopyDestination {
987    /// String value of the enum field names used in the ProtoBuf definition.
988    ///
989    /// The values are not transformed in any way and thus are considered stable
990    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
991    pub fn as_str_name(&self) -> &'static str {
992        match self {
993            CopyDestination::Command => "Command",
994            CopyDestination::Primary => "Primary",
995            CopyDestination::System => "System",
996        }
997    }
998    /// Creates an enum from field names used in the ProtoBuf definition.
999    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1000        match value {
1001            "Command" => Some(Self::Command),
1002            "Primary" => Some(Self::Primary),
1003            "System" => Some(Self::System),
1004            _ => None,
1005        }
1006    }
1007}
1008#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1009#[repr(i32)]
1010pub enum MouseEventName {
1011    MouseScrollUp = 0,
1012    MouseScrollDown = 1,
1013    MouseLeftClick = 2,
1014    MouseRightClick = 3,
1015    MouseHold = 4,
1016    MouseRelease = 5,
1017    MouseHover = 6,
1018}
1019impl MouseEventName {
1020    /// String value of the enum field names used in the ProtoBuf definition.
1021    ///
1022    /// The values are not transformed in any way and thus are considered stable
1023    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
1024    pub fn as_str_name(&self) -> &'static str {
1025        match self {
1026            MouseEventName::MouseScrollUp => "MouseScrollUp",
1027            MouseEventName::MouseScrollDown => "MouseScrollDown",
1028            MouseEventName::MouseLeftClick => "MouseLeftClick",
1029            MouseEventName::MouseRightClick => "MouseRightClick",
1030            MouseEventName::MouseHold => "MouseHold",
1031            MouseEventName::MouseRelease => "MouseRelease",
1032            MouseEventName::MouseHover => "MouseHover",
1033        }
1034    }
1035    /// Creates an enum from field names used in the ProtoBuf definition.
1036    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1037        match value {
1038            "MouseScrollUp" => Some(Self::MouseScrollUp),
1039            "MouseScrollDown" => Some(Self::MouseScrollDown),
1040            "MouseLeftClick" => Some(Self::MouseLeftClick),
1041            "MouseRightClick" => Some(Self::MouseRightClick),
1042            "MouseHold" => Some(Self::MouseHold),
1043            "MouseRelease" => Some(Self::MouseRelease),
1044            "MouseHover" => Some(Self::MouseHover),
1045            _ => None,
1046        }
1047    }
1048}
1049#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1050#[repr(i32)]
1051pub enum WebSharing {
1052    On = 0,
1053    Off = 1,
1054    Disabled = 2,
1055}
1056impl WebSharing {
1057    /// String value of the enum field names used in the ProtoBuf definition.
1058    ///
1059    /// The values are not transformed in any way and thus are considered stable
1060    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
1061    pub fn as_str_name(&self) -> &'static str {
1062        match self {
1063            WebSharing::On => "On",
1064            WebSharing::Off => "Off",
1065            WebSharing::Disabled => "Disabled",
1066        }
1067    }
1068    /// Creates an enum from field names used in the ProtoBuf definition.
1069    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1070        match value {
1071            "On" => Some(Self::On),
1072            "Off" => Some(Self::Off),
1073            "Disabled" => Some(Self::Disabled),
1074            _ => None,
1075        }
1076    }
1077}