Skip to main content

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

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