1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
/*
 * photon-indexer
 *
 * Solana indexer for general compression
 *
 * The version of the OpenAPI document: 0.28.0
 *
 * Generated by: https://openapi-generator.tech
 */

use crate::models;

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct MerkleContextWithNewAddressProof {
    /// A Solana public key represented as a base58 string.
    #[serde(rename = "address")]
    pub address: String,
    /// A Solana public key represented as a base58 string.
    #[serde(rename = "higherRangeAddress")]
    pub higher_range_address: String,
    #[serde(rename = "lowElementLeafIndex")]
    pub low_element_leaf_index: i32,
    /// A Solana public key represented as a base58 string.
    #[serde(rename = "lowerRangeAddress")]
    pub lower_range_address: String,
    /// A Solana public key represented as a base58 string.
    #[serde(rename = "merkleTree")]
    pub merkle_tree: String,
    #[serde(rename = "nextIndex")]
    pub next_index: i32,
    #[serde(rename = "proof")]
    pub proof: Vec<String>,
    /// A 32-byte hash represented as a base58 string.
    #[serde(rename = "root")]
    pub root: String,
    #[serde(rename = "rootSeq")]
    pub root_seq: u64,
}

impl MerkleContextWithNewAddressProof {
    #[allow(clippy::too_many_arguments)]
    pub fn new(
        address: String,
        higher_range_address: String,
        low_element_leaf_index: i32,
        lower_range_address: String,
        merkle_tree: String,
        next_index: i32,
        proof: Vec<String>,
        root: String,
        root_seq: u64,
    ) -> MerkleContextWithNewAddressProof {
        MerkleContextWithNewAddressProof {
            address,
            higher_range_address,
            low_element_leaf_index,
            lower_range_address,
            merkle_tree,
            next_index,
            proof,
            root,
            root_seq,
        }
    }
}