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