tf-types 0.1.8

Core semantic types, traits, and schemas powering the TrustForge protocol.
Documentation
// GENERATED by `tf-schema codegen --target rust` — DO NOT EDIT BY HAND.

#![allow(unused_imports, non_camel_case_types, non_snake_case, clippy::all)]

use serde::{Deserialize, Serialize};
use super::*;

/// Manifest describing which TrustForge profiles a deployment claims to implement (TF-0010). Distinct from the repo's conformance/ test-harness directory.
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
pub struct Conformance {
    /// Version of the conformance manifest schema itself.
    pub conformance_version: Conformance_ConformanceVersion,
    /// Profile identifiers this deployment claims to conform to.
    pub claimed_profiles: Vec<String>,
    /// Optional profile-specific extensions this deployment supports.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub extensions: Option<std::collections::BTreeMap<String, Vec<String>>>,
    /// Actor publishing this conformance claim.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub claimant: Option<ActorId>,
    /// When this claim is made.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub as_of: Option<Timestamp>,
    /// Free-form notes qualifying the claim.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub notes: Option<String>,
}

/// Version of the conformance manifest schema itself.
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
pub enum Conformance_ConformanceVersion {
    #[serde(rename = "1")]
    V1,
}