juno_rust_proto/prost/cosmos-sdk/
cosmos.base.snapshots.v1beta1.rs

1/// Snapshot contains Tendermint state sync snapshot info.
2#[allow(clippy::derive_partial_eq_without_eq)]
3#[derive(Clone, PartialEq, ::prost::Message)]
4pub struct Snapshot {
5    #[prost(uint64, tag = "1")]
6    pub height: u64,
7    #[prost(uint32, tag = "2")]
8    pub format: u32,
9    #[prost(uint32, tag = "3")]
10    pub chunks: u32,
11    #[prost(bytes = "vec", tag = "4")]
12    pub hash: ::prost::alloc::vec::Vec<u8>,
13    #[prost(message, optional, tag = "5")]
14    pub metadata: ::core::option::Option<Metadata>,
15}
16/// Metadata contains SDK-specific snapshot metadata.
17#[allow(clippy::derive_partial_eq_without_eq)]
18#[derive(Clone, PartialEq, ::prost::Message)]
19pub struct Metadata {
20    /// SHA-256 chunk hashes
21    #[prost(bytes = "vec", repeated, tag = "1")]
22    pub chunk_hashes: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
23}
24/// SnapshotItem is an item contained in a rootmulti.Store snapshot.
25#[allow(clippy::derive_partial_eq_without_eq)]
26#[derive(Clone, PartialEq, ::prost::Message)]
27pub struct SnapshotItem {
28    /// item is the specific type of snapshot item.
29    #[prost(oneof = "snapshot_item::Item", tags = "1, 2, 3, 4")]
30    pub item: ::core::option::Option<snapshot_item::Item>,
31}
32/// Nested message and enum types in `SnapshotItem`.
33pub mod snapshot_item {
34    /// item is the specific type of snapshot item.
35    #[allow(clippy::derive_partial_eq_without_eq)]
36    #[derive(Clone, PartialEq, ::prost::Oneof)]
37    pub enum Item {
38        #[prost(message, tag = "1")]
39        Store(super::SnapshotStoreItem),
40        #[prost(message, tag = "2")]
41        Iavl(super::SnapshotIavlItem),
42        #[prost(message, tag = "3")]
43        Extension(super::SnapshotExtensionMeta),
44        #[prost(message, tag = "4")]
45        ExtensionPayload(super::SnapshotExtensionPayload),
46    }
47}
48/// SnapshotStoreItem contains metadata about a snapshotted store.
49#[allow(clippy::derive_partial_eq_without_eq)]
50#[derive(Clone, PartialEq, ::prost::Message)]
51pub struct SnapshotStoreItem {
52    #[prost(string, tag = "1")]
53    pub name: ::prost::alloc::string::String,
54}
55/// SnapshotIAVLItem is an exported IAVL node.
56#[allow(clippy::derive_partial_eq_without_eq)]
57#[derive(Clone, PartialEq, ::prost::Message)]
58pub struct SnapshotIavlItem {
59    #[prost(bytes = "vec", tag = "1")]
60    pub key: ::prost::alloc::vec::Vec<u8>,
61    #[prost(bytes = "vec", tag = "2")]
62    pub value: ::prost::alloc::vec::Vec<u8>,
63    /// version is block height
64    #[prost(int64, tag = "3")]
65    pub version: i64,
66    /// height is depth of the tree.
67    #[prost(int32, tag = "4")]
68    pub height: i32,
69}
70/// SnapshotExtensionMeta contains metadata about an external snapshotter.
71#[allow(clippy::derive_partial_eq_without_eq)]
72#[derive(Clone, PartialEq, ::prost::Message)]
73pub struct SnapshotExtensionMeta {
74    #[prost(string, tag = "1")]
75    pub name: ::prost::alloc::string::String,
76    #[prost(uint32, tag = "2")]
77    pub format: u32,
78}
79/// SnapshotExtensionPayload contains payloads of an external snapshotter.
80#[allow(clippy::derive_partial_eq_without_eq)]
81#[derive(Clone, PartialEq, ::prost::Message)]
82pub struct SnapshotExtensionPayload {
83    #[prost(bytes = "vec", tag = "1")]
84    pub payload: ::prost::alloc::vec::Vec<u8>,
85}