1pub mod config;
14pub mod context;
15pub mod copy_mode;
16pub mod delight;
17pub mod error;
18pub mod events;
19pub mod host_bindings;
20pub mod key_tables;
21pub mod manifest;
22pub mod menu;
23pub mod navigation;
24pub mod object_model;
25pub mod plugin;
26pub mod status_bar;
27pub mod types;
28
29pub use config::{PluginConfig, PluginDiscovery};
30pub use context::PluginContext;
31pub use copy_mode::{
32 get_selection_bounds, normalize_selection, CopyModeCursor, CopyModeState, SearchDirection,
33 SearchMatch, SearchState, Selection, SelectionMode,
34};
35pub use delight::{Achievement, PluginMood};
36pub use error::{PluginError, Result};
37
38#[allow(deprecated)]
40pub use events::{
41 EventArgs, EventData, EventHandler, EventRegistry, EventResult, EventType, HandlerEntry,
42};
43pub use host_bindings::{
44 HostBindingLimits, HostBindings, NavKeymap, NavStyle, ResourceUsage, DEFAULT_MAX_FOCUSABLES,
45 DEFAULT_MAX_OVERLAYS, DEFAULT_MAX_STATUS_ITEMS, DEFAULT_RATE_LIMIT,
46};
47pub use key_tables::{
48 ActivateKeyTableMode, ClipboardKind, CopyModeAction, Direction, KeyAction, KeyCode, KeyCombo,
49 KeyModifiers, KeyTable, KeyTableActivation, KeyTableStack, LeaderKeyConfig, LeaderKeyState,
50 SearchAction, SplitDirection,
51};
52pub use manifest::{Capability, FusabiModule, ManifestError, PluginManifest};
53pub use menu::{MenuAction, MenuItem};
54pub use navigation::{
55 validate_focusable, NavigationExt, PluginFocusable, PluginFocusableAction,
56 PluginNavCapabilities, ValidationError,
57};
58pub use object_model::{ObjectError, ObjectHandle, ObjectRegistry, ObjectType, RegistryEntry};
59pub use plugin::{Plugin, PluginMetadata};
60pub use status_bar::{
61 AnsiColor, Color, RenderItem, StatusBarSide, StatusBarUpdate, UnderlineStyle,
62};
63pub use types::{Action, HookType, PluginInfo};
64
65pub const API_VERSION: &str = "0.1.0";