1use aqua_verifier_rs_types::models::page_data::HashChain;
2use aqua_verifier_rs_types::models::page_data::PageData;
3use serde::{Deserialize, Serialize};
4
5#[derive(Deserialize, Serialize, Debug)]
6pub struct RevisionAquaChainResult {
7 pub successful: bool,
8 pub revision_results : Vec<RevisionVerificationResult>
9}
10
11#[derive(Deserialize, Serialize, Debug, Clone)]
12pub struct RevisionVerificationResult {
13 pub successful: bool,
14 pub file_verification: ResultStatus,
15 pub content_verification: ResultStatus,
16 pub witness_verification: ResultStatus,
17 pub signature_verification: ResultStatus,
18 pub metadata_verification: ResultStatus,
19}
20
21
22#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
23pub enum ResultStatusEnum {
24 MISSING,
25 AVAILABLE
26}
27
28#[derive(Deserialize, Serialize, Debug, Clone)]
29pub struct ResultStatus {
30 pub status: ResultStatusEnum,
31 pub successful: bool,
32 pub message: String,
33 pub logs : Vec<String>
34}
35
36
37#[derive(Deserialize, Serialize, Debug, Clone)]
38pub struct HashChainWithLog{
39 pub chain : HashChain,
40 pub logs : Vec<String>
41}
42
43#[derive(Deserialize, Serialize, Debug, Clone)]
44pub struct PageDataWithLog{
45 pub page_data : PageData,
46 pub logs : Vec<String>
47}
48
49
50
51#[derive(Deserialize, Serialize, Debug)]
52pub struct VerifyFileResult {
53 pub error_message: Option<String>,
54 pub file_hash: Option<String>,
55}
56
57
58
59
60#[derive(Debug, Serialize, Deserialize)]
61pub struct CheckEtherScanResult {
62 pub verification_hash_matches: bool,
63 pub message: String,
64 pub successful: bool,
65}