graph_storage_sdk/lib.rs
1//! Graph Storage SDK
2//!
3//! Public contract of the graph-storage gear:
4//!
5//! - [`GraphStorageClientV1`] — the `ClientHub` trait other gears consume;
6//! - transport-agnostic models (no serde derives, no HTTP, no DB types);
7//! - the three plugin contracts an external team implements against
8//! ([`plugin_api::GraphStoreV1`], [`plugin_api::GraphEngineV1`],
9//! [`plugin_api::EmbeddingProviderV1`]);
10//! - GTS identifiers owned by the gear.
11//!
12//! Consumers obtain the client from `ClientHub`:
13//! ```ignore
14//! let client = hub.get::<dyn GraphStorageClientV1>()?;
15//! ```
16
17#![forbid(unsafe_code)]
18
19pub mod client;
20/// Executable plugin contracts for implementors; see [`contract`].
21#[cfg(feature = "test-support")]
22pub mod contract;
23pub mod gts;
24pub mod models;
25pub mod plugin_api;
26
27pub use client::GraphStorageClientV1;
28pub use models::*;