cosmos_sdk_proto_althea/
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#![forbid(unsafe_code)]
7#![warn(trivial_casts, trivial_numeric_casts, unused_import_braces)]
8
9/// Bech32ibc protobuf definitions
10#[cfg(feature = "bech32ibc")]
11#[cfg_attr(docsrs, doc(cfg(feature = "bech32ibc")))]
12pub mod bech32ibc {
13    /// Bech32 prefix -> IBC Channel mapping
14    pub mod bech32ibc {
15        pub mod v1 {
16            include!("prost/bech32ibc.bech32ibc.v1beta1.rs");
17        }
18    }
19}
20
21/// Cosmos protobuf definitions.
22pub mod cosmos {
23    /// Authentication of accounts and transactions.
24    pub mod auth {
25        pub mod v1beta1 {
26            include!("prost/cosmos.auth.v1beta1.rs");
27        }
28        pub mod module {
29            pub mod v1 {
30                include!("prost/cosmos.auth.module.v1.rs");
31            }
32        }
33    }
34
35    /// Granting of arbitrary privileges from one account to another.
36    pub mod authz {
37        pub mod v1beta1 {
38            include!("prost/cosmos.authz.v1beta1.rs");
39        }
40        pub mod module {
41            pub mod v1 {
42                include!("prost/cosmos.authz.module.v1.rs");
43            }
44        }
45    }
46
47    /// Balances.
48    pub mod bank {
49        pub mod v1beta1 {
50            include!("prost/cosmos.bank.v1beta1.rs");
51        }
52        pub mod module {
53            pub mod v1 {
54                include!("prost/cosmos.bank.module.v1.rs");
55            }
56        }
57    }
58
59    /// Base functionality.
60    pub mod base {
61        /// Application BlockChain Interface (ABCI).
62        ///
63        /// Interface that defines the boundary between the replication engine
64        /// (the blockchain), and the state machine (the application).
65        pub mod abci {
66            pub mod v1beta1 {
67                include!("prost/cosmos.base.abci.v1beta1.rs");
68            }
69        }
70
71        /// Node information
72        pub mod node {
73            pub mod v1beta1 {
74                include!("prost/cosmos.base.node.v1beta1.rs");
75            }
76        }
77
78        /// Query support.
79        pub mod query {
80            pub mod v1beta1 {
81                include!("prost/cosmos.base.query.v1beta1.rs");
82            }
83        }
84
85        /// Reflection support.
86        pub mod reflection {
87            pub mod v1beta1 {
88                include!("prost/cosmos.base.reflection.v1beta1.rs");
89            }
90        }
91
92        pub mod v1beta1 {
93            include!("prost/cosmos.base.v1beta1.rs");
94        }
95
96        pub mod tendermint {
97            pub mod v1beta1 {
98                include!("prost/cosmos.base.tendermint.v1beta1.rs");
99            }
100        }
101    }
102
103    pub mod circuit {
104        pub mod v1 {
105            include!("prost/cosmos.circuit.v1.rs");
106        }
107        pub mod module {
108            pub mod v1 {
109                include!("prost/cosmos.circuit.module.v1.rs");
110            }
111        }
112    }
113
114    /// Circuit breaker
115    pub mod consensus {
116        pub mod v1 {
117            include!("prost/cosmos.consensus.v1.rs");
118        }
119        pub mod module {
120            pub mod v1 {
121                include!("prost/cosmos.consensus.module.v1.rs");
122            }
123        }
124    }
125
126    /// Crisis handling
127    pub mod crisis {
128        pub mod v1beta1 {
129            include!("prost/cosmos.crisis.v1beta1.rs");
130        }
131        pub mod module {
132            pub mod v1 {
133                include!("prost/cosmos.crisis.module.v1.rs");
134            }
135        }
136    }
137
138    /// Cryptographic primitives.
139    pub mod crypto {
140        pub mod hd {
141            pub mod v1 {
142                include!("prost/cosmos.crypto.hd.v1.rs");
143            }   
144        }
145        pub mod keyring {
146            pub mod v1 {
147                include!("prost/cosmos.crypto.keyring.v1.rs");
148            }
149        }
150        /// Multi-signature support.
151        pub mod multisig {
152            include!("prost/cosmos.crypto.multisig.rs");
153            pub mod v1beta1 {
154                include!("prost/cosmos.crypto.multisig.v1beta1.rs");
155            }
156        }
157        pub mod ed25519 {
158            include!("prost/cosmos.crypto.ed25519.rs");
159        }
160        pub mod secp256k1 {
161            include!("prost/cosmos.crypto.secp256k1.rs");
162        }
163        pub mod secp256r1 {
164            include!("prost/cosmos.crypto.secp256r1.rs");
165        }
166    }
167
168    /// Messages and services handling token distribution
169    pub mod distribution {
170        pub mod v1beta1 {
171            include!("prost/cosmos.distribution.v1beta1.rs");
172        }
173        pub mod module {
174            pub mod v1 {
175                include!("prost/cosmos.distribution.module.v1.rs");
176            }
177        }
178    }
179
180    /// Messages and services handling evidence
181    pub mod evidence {
182        pub mod v1beta1 {
183            include!("prost/cosmos.evidence.v1beta1.rs");
184        }
185        pub mod module {
186            pub mod v1 {
187                include!("prost/cosmos.evidence.module.v1.rs");
188            }
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.feegrant.v1beta1.rs");
196        }
197        pub mod module {
198            pub mod v1 {
199                include!("prost/cosmos.feegrant.module.v1.rs");
200            }
201        }
202    }
203
204    /// Messages and services handling gentx's
205    pub mod genutil {
206        pub mod v1beta1 {
207            include!("prost/cosmos.genutil.v1beta1.rs");
208        }
209        pub mod module {
210            pub mod v1 {
211                include!("prost/cosmos.genutil.module.v1.rs");
212            }
213        }
214    }
215
216    /// Messages and services handling governance
217    pub mod gov {
218        pub mod v1 {
219            include!("prost/cosmos.gov.v1.rs");
220        }
221        pub mod v1beta1 {
222            include!("prost/cosmos.gov.v1beta1.rs");
223        }
224        pub mod module {
225            pub mod v1 {
226                include!("prost/cosmos.gov.module.v1.rs");
227            }
228        }
229    }
230
231    pub mod group {
232        pub mod v1 {
233            include!("prost/cosmos.group.v1.rs");
234        }
235        pub mod module {
236            pub mod v1 {
237                include!("prost/cosmos.group.module.v1.rs");
238            }
239        }
240    }
241
242    /// Messages and services handling minting
243    pub mod mint {
244        pub mod v1beta1 {
245            include!("prost/cosmos.mint.v1beta1.rs");
246        }
247        pub mod module {
248            pub mod v1 {
249                include!("prost/cosmos.mint.module.v1.rs");
250            }
251        }
252    }
253
254    pub mod nft {
255        pub mod v1beta1 {
256            include!("prost/cosmos.nft.v1beta1.rs");
257        }
258        pub mod module {
259            pub mod v1 {
260                include!("prost/cosmos.nft.module.v1.rs");
261            }
262        }
263    }
264
265    /// Messages and services handling chain parameters
266    pub mod params {
267        pub mod v1beta1 {
268            include!("prost/cosmos.params.v1beta1.rs");
269        }
270        pub mod module {
271            pub mod v1 {
272                include!("prost/cosmos.params.module.v1.rs");
273            }
274        }
275    }
276
277    /// Handling slashing parameters and unjailing
278    pub mod slashing {
279        pub mod v1beta1 {
280            include!("prost/cosmos.slashing.v1beta1.rs");
281        }
282        pub mod module {
283            pub mod v1 {
284                include!("prost/cosmos.slashing.module.v1.rs");
285            }
286        }
287    }
288
289    /// Proof-of-Stake layer for public blockchains.
290    pub mod staking {
291        pub mod v1beta1 {
292            // WARNING: This file is problematic due to a namespace conflict, see the README for more info
293            include!("prost/cosmos.staking.v1beta1.rs");
294        }
295        pub mod module {
296            pub mod v1 {
297                include!("prost/cosmos.staking.module.v1.rs");
298            }
299        }
300    }
301
302    /// Transactions.
303    pub mod tx {
304        pub mod config {
305            pub mod v1 {
306                include!("prost/cosmos.tx.config.v1.rs");
307            }
308        }
309
310        /// Transaction signing support.
311        pub mod signing {
312            pub mod v1beta1 {
313                include!("prost/cosmos.tx.signing.v1beta1.rs");
314            }
315        }
316
317        pub mod v1beta1 {
318            include!("prost/cosmos.tx.v1beta1.rs");
319        }
320    }
321
322    /// Services for the upgrade module.
323    pub mod upgrade {
324        pub mod v1beta1 {
325            include!("prost/cosmos.upgrade.v1beta1.rs");
326        }
327        pub mod module {
328            pub mod v1 {
329                include!("prost/cosmos.upgrade.module.v1.rs");
330            }
331        }
332    }
333
334    /// Services and tx's for the vesting module.
335    pub mod vesting {
336        pub mod v1beta1 {
337            include!("prost/cosmos.vesting.v1beta1.rs");
338        }
339        pub mod module {
340            pub mod v1 {
341                include!("prost/cosmos.vesting.module.v1.rs");
342            }
343        }
344    }
345}
346
347/// IBC protobuf definitions.
348pub mod ibc {
349    /// IBC applications.
350    pub mod applications {
351        /// Transfer support.
352        pub mod transfer {
353            pub mod v1 {
354                include!("prost/ibc.applications.transfer.v1.rs");
355            }
356
357            pub mod v2 {
358                include!("prost/ibc.applications.transfer.v2.rs");
359            }
360        }
361
362        /// ICA
363        pub mod interchain_accounts {
364            pub mod v1 {
365                include!("prost/ibc.applications.interchain_accounts.v1.rs");
366            }
367            pub mod controller {
368                pub mod v1 {
369                    include!("prost/ibc.applications.interchain_accounts.controller.v1.rs");
370                }
371            }
372            pub mod host {
373                pub mod v1 {
374                    include!("prost/ibc.applications.interchain_accounts.host.v1.rs");
375                }
376            }
377        }
378    }
379
380    /// IBC core.
381    pub mod core {
382        /// IBC channels.
383        pub mod channel {
384            pub mod v1 {
385                include!("prost/ibc.core.channel.v1.rs");
386            }
387        }
388
389        /// IBC client.
390        pub mod client {
391            pub mod v1 {
392                include!("prost/ibc.core.client.v1.rs");
393            }
394        }
395
396        /// IBC commitments.
397        pub mod commitment {
398            pub mod v1 {
399                include!("prost/ibc.core.commitment.v1.rs");
400            }
401        }
402
403        /// IBC connections.
404        pub mod connection {
405            pub mod v1 {
406                include!("prost/ibc.core.connection.v1.rs");
407            }
408        }
409
410        /// IBC types.
411        pub mod types {
412            pub mod v1 {
413                include!("prost/ibc.core.types.v1.rs");
414            }
415        }
416    }
417
418    /// IBC light clients.
419    pub mod lightclients {
420        pub mod localhost {
421            pub mod v1 {
422                include!("prost/ibc.lightclients.localhost.v1.rs");
423            }
424        }
425        pub mod solomachine {
426            pub mod v1 {
427                include!("prost/ibc.lightclients.solomachine.v1.rs");
428            }
429
430            pub mod v2 {
431                include!("prost/ibc.lightclients.solomachine.v2.rs");
432            }
433        }
434        pub mod tendermint {
435            pub mod v1 {
436                include!("prost/ibc.lightclients.tendermint.v1.rs");
437            }
438        }
439    }
440}
441
442/// ICS23 protobuf definitions.
443pub mod ics23 {
444    include!("prost/ics23.rs");
445}
446
447/// Tendermint proto definitions
448pub mod tendermint {
449    pub mod abci {
450        include!("prost/tendermint.abci.rs");
451    }
452    pub mod crypto {
453        include!("prost/tendermint.crypto.rs");
454    }
455    pub mod libs {
456        pub mod bits {
457            include!("prost/tendermint.libs.bits.rs");
458        }
459    }
460    pub mod p2p {
461        include!("prost/tendermint.p2p.rs");
462    }
463    pub mod types {
464        include!("prost/tendermint.types.rs");
465    }
466    pub mod version {
467        include!("prost/tendermint.version.rs");
468    }
469}