1pub use keyboard_input::ClientKey;
2pub use keyboard_input::ClientKeyCode;
3pub use keyboard_input::ClientKeyModifiers;
4pub use pane_layout::LayoutSnapshot;
5pub use pane_layout::PaneId;
6pub use pane_layout::PaneMouseMode;
7pub use pane_layout::PaneRegionContainment;
8pub use pane_layout::PaneRegionSnapshot;
9pub use pane_layout::PaneRegionsSnapshot;
10pub use pane_layout::PaneSnapshot;
11pub use pane_layout::RowWrap;
12pub use pane_layout::TabId;
13pub use pane_layout::TabSnapshot;
14pub use pane_mouse::ClientMouseEvent;
15pub use pane_mouse::ClientMouseEventPhase;
16pub use pane_mouse::ClientMousePosition;
17pub use pane_render::RenderBaseline;
18pub use pane_render::RenderCell;
19pub use pane_render::RenderCellWidth;
20pub use pane_render::RenderColor;
21pub use pane_render::RenderCursor;
22pub use pane_render::RenderCursorShape;
23pub use pane_render::RenderCursorVisibility;
24pub use pane_render::RenderDiff;
25pub use pane_render::RenderHyperlink;
26pub use pane_render::RenderRowSpan;
27pub use pane_render::RenderStyle;
28pub use pane_render::RenderTextStyle;
29pub use pane_render::RenderUpdate;
30pub use pane_scroll::PaneScrollDirection;
31pub use pane_scroll::PaneScrollLineMove;
32pub use session_attach::AttachAccepted;
33pub use session_attach::AttachRequest;
34pub use terminal::TerminalSize;
35pub use tracked_process::TrackedProcessState;
36pub use wire::ClientRequest;
37pub use wire::ProtocolFrame;
38pub use wire::ServerError;
39pub use wire::ServerEvent;
40pub use wire::decode_client_request;
41pub use wire::decode_server_event;
42pub use wire::encode_client_request;
43pub use wire::encode_server_event;
44
45mod keyboard_input;
46mod pane_layout;
47mod pane_mouse;
48mod pane_render;
49mod pane_scroll;
50mod session_attach;
51mod terminal;
52mod tracked_process;
53mod wire;
54
55fn rkyv_deserialize_error<E>(error: impl std::fmt::Display) -> E
56where
57 E: rkyv::rancor::Source,
58{
59 <E as rkyv::rancor::Source>::new(std::io::Error::new(std::io::ErrorKind::InvalidData, error.to_string()))
60}