use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
pub struct AssetIntegrity {
pub manifest_version: u32,
pub algorithm: String,
pub scope: IntegrityScope,
pub trees: Vec<IntegrityTree>,
pub root_files: Vec<IntegrityFile>,
pub aggregate_sha256: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
pub struct IntegrityScope {
pub trees: Vec<String>,
pub root_files: Vec<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
pub struct IntegrityTree {
pub tree: String,
pub aggregate_sha256: String,
pub files: Vec<IntegrityFile>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
pub struct IntegrityFile {
pub path: String,
pub sha256: String,
pub bytes: u64,
}