Skip to main content

dchain_sdk_proto/
lib.rs

1#![doc = include_str!("../README.md")]
2#![doc(
3    html_logo_url = "https://raw.githubusercontent.com/cosmos/cosmos-rust/main/.images/cosmos.png"
4)]
5#![cfg_attr(docsrs, feature(doc_cfg))]
6#![allow(
7    rustdoc::bare_urls,
8    rustdoc::broken_intra_doc_links,
9    clippy::derive_partial_eq_without_eq
10)]
11#![forbid(unsafe_code)]
12#![warn(trivial_casts, trivial_numeric_casts, unused_import_braces)]
13
14pub mod traits;
15mod type_urls;
16
17pub use prost;
18pub use prost_types::Any;
19pub use tendermint_proto as tendermint;
20
21/// The version (commit hash) of the Cosmos SDK used when generating this library.
22pub const COSMOS_SDK_VERSION: &str = include_str!("prost/cosmos-sdk/COSMOS_SDK_COMMIT");
23
24/// The version (commit hash) of the Ptd used when generating this library.
25pub const DCHAIN_VERSION: &str = include_str!("prost/dchain/DCHAIN_COMMIT");
26
27pub const WASMD_VERSION: &str = include_str!("prost/wasmd/WASMD_COMMIT");
28
29/// dchain protobuf definitions
30pub mod dchain {
31    pub mod types {
32        pub mod version {
33            include!("prost/dchain/d.types.version.rs");
34        }
35    }
36    pub mod abstractaccount {
37        pub mod v1 {
38            include!("prost/dchain/d.abstractaccount.v1.rs");
39        }
40    }
41    pub mod notary {
42        pub mod v1 {
43            include!("prost/dchain/d.notary.v1.rs");
44        }
45    }
46    pub mod vcv {
47        pub mod v1 {
48            include!("prost/dchain/d.vcv.v1.rs");
49        }
50    }
51    pub mod depository {
52        pub mod v1 {
53            include!("prost/dchain/d.depository.v1.rs");
54        }
55    }
56}
57
58pub mod cosmwasm {
59    pub mod wasm {
60        pub mod v1 {
61            include!("prost/wasmd/cosmwasm.wasm.v1.rs");
62        }
63    }
64}
65
66/// Cosmos protobuf definitions.
67pub mod cosmos {
68    /// Authentication of accounts and transactions.
69    pub mod auth {
70        pub mod v1beta1 {
71            include!("prost/cosmos-sdk/cosmos.auth.v1beta1.rs");
72        }
73    }
74
75    /// Granting of arbitrary privileges from one account to another.
76    pub mod authz {
77        pub mod v1beta1 {
78            include!("prost/cosmos-sdk/cosmos.authz.v1beta1.rs");
79        }
80    }
81
82    /// Balances.
83    pub mod bank {
84        pub mod v1beta1 {
85            include!("prost/cosmos-sdk/cosmos.bank.v1beta1.rs");
86        }
87    }
88
89    /// Base functionality.
90    pub mod base {
91        /// Application BlockChain Interface (ABCI).
92        ///
93        /// Interface that defines the boundary between the replication engine
94        /// (the blockchain), and the state machine (the application).
95        pub mod abci {
96            pub mod v1beta1 {
97                include!("prost/cosmos-sdk/cosmos.base.abci.v1beta1.rs");
98            }
99        }
100
101        /// node.
102        pub mod node {
103            pub mod v1beta1 {
104                include!("prost/cosmos-sdk/cosmos.base.node.v1beta1.rs");
105            }
106        }
107
108        /// Query support.
109        pub mod query {
110            pub mod v1beta1 {
111                include!("prost/cosmos-sdk/cosmos.base.query.v1beta1.rs");
112            }
113        }
114
115        /// Reflection support.
116        pub mod reflection {
117            pub mod v1beta1 {
118                include!("prost/cosmos-sdk/cosmos.base.reflection.v1beta1.rs");
119            }
120
121            pub mod v2alpha1 {
122                include!("prost/cosmos-sdk/cosmos.base.reflection.v2alpha1.rs");
123            }
124        }
125
126        /// Snapshots containing Tendermint state sync info.
127        pub mod snapshots {
128            pub mod v1 {
129                include!("prost/cosmos-sdk/cosmos.store.snapshots.v1.rs");
130            }
131        }
132
133        /// Data structure that holds the state of the application.
134        pub mod store {
135            pub mod v1beta1 {
136                include!("prost/cosmos-sdk/cosmos.store.v1beta1.rs");
137            }
138        }
139
140        pub mod v1beta1 {
141            include!("prost/cosmos-sdk/cosmos.base.v1beta1.rs");
142        }
143
144        pub mod tendermint {
145            pub mod v1beta1 {
146                include!("prost/cosmos-sdk/cosmos.base.tendermint.v1beta1.rs");
147            }
148        }
149    }
150
151    /// Crisis handling
152    pub mod crisis {
153        pub mod v1beta1 {
154            include!("prost/cosmos-sdk/cosmos.crisis.v1beta1.rs");
155        }
156    }
157
158    /// Cryptographic primitives.
159    pub mod crypto {
160        /// Multi-signature support.
161        pub mod multisig {
162            include!("prost/cosmos-sdk/cosmos.crypto.multisig.rs");
163            pub mod v1beta1 {
164                include!("prost/cosmos-sdk/cosmos.crypto.multisig.v1beta1.rs");
165            }
166        }
167        pub mod ed25519 {
168            include!("prost/cosmos-sdk/cosmos.crypto.ed25519.rs");
169        }
170        pub mod secp256k1 {
171            include!("prost/cosmos-sdk/cosmos.crypto.secp256k1.rs");
172        }
173        pub mod secp256r1 {
174            include!("prost/cosmos-sdk/cosmos.crypto.secp256r1.rs");
175        }
176    }
177
178    /// Messages and services handling token distribution
179    pub mod distribution {
180        pub mod v1beta1 {
181            include!("prost/cosmos-sdk/cosmos.distribution.v1beta1.rs");
182        }
183    }
184
185    /// Messages and services handling evidence
186    pub mod evidence {
187        pub mod v1beta1 {
188            include!("prost/cosmos-sdk/cosmos.evidence.v1beta1.rs");
189        }
190    }
191
192    /// Allows accounts to grant fee allowances and to use fees from their accounts.
193    pub mod feegrant {
194        pub mod v1beta1 {
195            include!("prost/cosmos-sdk/cosmos.feegrant.v1beta1.rs");
196        }
197    }
198
199    /// Messages and services handling gentx's
200    pub mod genutil {
201        pub mod v1beta1 {
202            include!("prost/cosmos-sdk/cosmos.genutil.v1beta1.rs");
203        }
204    }
205
206    /// Messages and services handling governance
207    pub mod gov {
208        pub mod v1beta1 {
209            include!("prost/cosmos-sdk/cosmos.gov.v1beta1.rs");
210        }
211    }
212
213    /// Messages and services handling minting
214    pub mod mint {
215        pub mod v1beta1 {
216            include!("prost/cosmos-sdk/cosmos.mint.v1beta1.rs");
217        }
218    }
219
220    /// Messages and services handling chain parameters
221    pub mod params {
222        pub mod v1beta1 {
223            include!("prost/cosmos-sdk/cosmos.params.v1beta1.rs");
224        }
225    }
226
227    /// Handling slashing parameters and unjailing
228    pub mod slashing {
229        pub mod v1beta1 {
230            include!("prost/cosmos-sdk/cosmos.slashing.v1beta1.rs");
231        }
232    }
233
234    /// Proof-of-Stake layer for public blockchains.
235    pub mod staking {
236        pub mod v1beta1 {
237            include!("prost/cosmos-sdk/cosmos.staking.v1beta1.rs");
238        }
239    }
240
241    /// Transactions.
242    pub mod tx {
243        /// Transaction signing support.
244        pub mod signing {
245            pub mod v1beta1 {
246                include!("prost/cosmos-sdk/cosmos.tx.signing.v1beta1.rs");
247            }
248        }
249
250        pub mod v1beta1 {
251            include!("prost/cosmos-sdk/cosmos.tx.v1beta1.rs");
252        }
253    }
254
255    /// Services for the upgrade module.
256    pub mod upgrade {
257        pub mod v1beta1 {
258            include!("prost/cosmos-sdk/cosmos.upgrade.v1beta1.rs");
259        }
260    }
261
262    /// Services and tx's for the vesting module.
263    pub mod vesting {
264        pub mod v1beta1 {
265            include!("prost/cosmos-sdk/cosmos.vesting.v1beta1.rs");
266        }
267    }
268}