hessra_cap_engine/lib.rs
1//! # Hessra Capability Engine
2//!
3//! Core capability engine for the Hessra authorization system.
4//!
5//! This crate provides:
6//! - Unified object model where everything is an object with a capability space
7//! - `PolicyBackend` trait for pluggable policy evaluation
8//! - Context tokens for information flow control (exposure tracking)
9//! - `CapabilityEngine` that orchestrates minting, verification, and policy evaluation
10
11pub mod context;
12pub mod engine;
13pub mod error;
14pub mod types;
15
16pub use context::{ContextToken, HessraContext};
17pub use engine::CapabilityEngine;
18pub use error::EngineError;
19pub use types::{
20 CapabilityGrant, Designation, ExposureLabel, IdentityConfig, MintOptions, MintResult, ObjectId,
21 Operation, PolicyBackend, PolicyDecision, SessionConfig,
22};
23
24// Re-export commonly needed types from token crates
25pub use hessra_token_core::{KeyPair, PublicKey, TokenTimeConfig};