exo_consent/lib.rs
1// Copyright 2026 Exochain Foundation
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at:
6//
7// https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// SPDX-License-Identifier: Apache-2.0
16
17//! EXOCHAIN Consent Enforcement
18//!
19//! Bailment-conditioned consent fabric. No action without consent.
20//! Default posture: DENY.
21
22#![cfg_attr(test, allow(clippy::expect_used, clippy::unwrap_used))]
23
24pub mod bailment;
25pub mod contract;
26pub mod error;
27pub mod gatekeeper;
28pub mod policy;
29
30pub use bailment::{Bailment, BailmentStatus, BailmentType};
31pub use error::ConsentError;
32pub use gatekeeper::ConsentGate;
33pub use policy::{ConsentDecision, ConsentPolicy, ConsentRequirement, PolicyEngine};