1#![allow(clippy::module_name_repetitions)]
2#![allow(clippy::struct_field_names)]
3#![allow(clippy::struct_excessive_bools)]
4#![allow(clippy::unnested_or_patterns)]
5#![allow(clippy::doc_markdown)]
6#![allow(clippy::trivially_copy_pass_by_ref)]
7#![allow(clippy::ref_option)]
8#![allow(clippy::missing_errors_doc)]
9#![allow(clippy::missing_panics_doc)]
10#![allow(clippy::must_use_candidate)]
11#![allow(clippy::missing_fields_in_debug)]
12
13pub mod error;
14pub mod models;
15pub mod plugin;
16
17pub use error::PluginError;
18pub use models::{
19 Capability, CapabilityValue, FileCitation, HealthStatus, LifecycleState, LinkCitation,
20 LinkReference, MemoryStrategy, Message, MessagePart, MessagePartInput, MessagePartType,
21 MessageRole, RetentionPolicy, Session, SessionType, StreamingChunkEvent,
22 StreamingCitationEvent, StreamingCompleteEvent, StreamingErrorEvent, StreamingEvent,
23 StreamingPartEvent, StreamingSessionMetaEvent, StreamingStartEvent, StreamingStateEvent,
24 StreamingStatusEvent, StreamingToolEvent, TenantId, TextPositionAnchor, UserId, VariantInfo,
25};
26pub use plugin::{
27 ChatEngineBackendPlugin, MessagePluginCtx, PluginCallContext, PluginStream, SessionPluginCtx,
28 SessionPluginResponse, empty_stream, stream_from_events,
29};