elys_std/types/elys/
tokenomics.rs

1use elys_std_deriv::CosmwasmExt;
2#[allow(clippy::derive_partial_eq_without_eq)]
3#[derive(
4    Clone,
5    PartialEq,
6    Eq,
7    ::prost::Message,
8    ::serde::Serialize,
9    ::serde::Deserialize,
10    ::schemars::JsonSchema,
11    CosmwasmExt,
12)]
13#[proto_message(type_url = "/elys.tokenomics.Airdrop")]
14pub struct Airdrop {
15    #[prost(string, tag = "1")]
16    pub intent: ::prost::alloc::string::String,
17    #[prost(uint64, tag = "2")]
18    #[serde(
19        serialize_with = "crate::serde::as_str::serialize",
20        deserialize_with = "crate::serde::as_str::deserialize"
21    )]
22    pub amount: u64,
23    #[prost(string, tag = "3")]
24    pub authority: ::prost::alloc::string::String,
25    #[prost(uint64, tag = "4")]
26    #[serde(
27        serialize_with = "crate::serde::as_str::serialize",
28        deserialize_with = "crate::serde::as_str::deserialize"
29    )]
30    pub expiry: u64,
31}
32/// Params defines the parameters for the module.
33#[allow(clippy::derive_partial_eq_without_eq)]
34#[derive(
35    Clone,
36    PartialEq,
37    Eq,
38    ::prost::Message,
39    ::serde::Serialize,
40    ::serde::Deserialize,
41    ::schemars::JsonSchema,
42    CosmwasmExt,
43)]
44#[proto_message(type_url = "/elys.tokenomics.Params")]
45pub struct Params {}
46#[allow(clippy::derive_partial_eq_without_eq)]
47#[derive(
48    Clone,
49    PartialEq,
50    Eq,
51    ::prost::Message,
52    ::serde::Serialize,
53    ::serde::Deserialize,
54    ::schemars::JsonSchema,
55    CosmwasmExt,
56)]
57#[proto_message(type_url = "/elys.tokenomics.InflationEntry")]
58pub struct InflationEntry {
59    #[prost(uint64, tag = "1")]
60    #[serde(
61        serialize_with = "crate::serde::as_str::serialize",
62        deserialize_with = "crate::serde::as_str::deserialize"
63    )]
64    pub lm_rewards: u64,
65    #[prost(uint64, tag = "2")]
66    #[serde(
67        serialize_with = "crate::serde::as_str::serialize",
68        deserialize_with = "crate::serde::as_str::deserialize"
69    )]
70    pub ics_staking_rewards: u64,
71    #[prost(uint64, tag = "3")]
72    #[serde(
73        serialize_with = "crate::serde::as_str::serialize",
74        deserialize_with = "crate::serde::as_str::deserialize"
75    )]
76    pub community_fund: u64,
77    #[prost(uint64, tag = "4")]
78    #[serde(
79        serialize_with = "crate::serde::as_str::serialize",
80        deserialize_with = "crate::serde::as_str::deserialize"
81    )]
82    pub strategic_reserve: u64,
83    #[prost(uint64, tag = "5")]
84    #[serde(
85        serialize_with = "crate::serde::as_str::serialize",
86        deserialize_with = "crate::serde::as_str::deserialize"
87    )]
88    pub team_tokens_vested: u64,
89}
90#[allow(clippy::derive_partial_eq_without_eq)]
91#[derive(
92    Clone,
93    PartialEq,
94    Eq,
95    ::prost::Message,
96    ::serde::Serialize,
97    ::serde::Deserialize,
98    ::schemars::JsonSchema,
99    CosmwasmExt,
100)]
101#[proto_message(type_url = "/elys.tokenomics.GenesisInflation")]
102pub struct GenesisInflation {
103    #[prost(message, optional, tag = "1")]
104    pub inflation: ::core::option::Option<InflationEntry>,
105    #[prost(uint64, tag = "2")]
106    #[serde(
107        serialize_with = "crate::serde::as_str::serialize",
108        deserialize_with = "crate::serde::as_str::deserialize"
109    )]
110    pub seed_vesting: u64,
111    #[prost(uint64, tag = "3")]
112    #[serde(
113        serialize_with = "crate::serde::as_str::serialize",
114        deserialize_with = "crate::serde::as_str::deserialize"
115    )]
116    pub strategic_sales_vesting: u64,
117    #[prost(string, tag = "4")]
118    pub authority: ::prost::alloc::string::String,
119}
120#[allow(clippy::derive_partial_eq_without_eq)]
121#[derive(
122    Clone,
123    PartialEq,
124    Eq,
125    ::prost::Message,
126    ::serde::Serialize,
127    ::serde::Deserialize,
128    ::schemars::JsonSchema,
129    CosmwasmExt,
130)]
131#[proto_message(type_url = "/elys.tokenomics.TimeBasedInflation")]
132pub struct TimeBasedInflation {
133    #[prost(uint64, tag = "1")]
134    #[serde(
135        serialize_with = "crate::serde::as_str::serialize",
136        deserialize_with = "crate::serde::as_str::deserialize"
137    )]
138    pub start_block_height: u64,
139    #[prost(uint64, tag = "2")]
140    #[serde(
141        serialize_with = "crate::serde::as_str::serialize",
142        deserialize_with = "crate::serde::as_str::deserialize"
143    )]
144    pub end_block_height: u64,
145    #[prost(string, tag = "3")]
146    pub description: ::prost::alloc::string::String,
147    #[prost(message, optional, tag = "4")]
148    pub inflation: ::core::option::Option<InflationEntry>,
149    #[prost(string, tag = "5")]
150    pub authority: ::prost::alloc::string::String,
151}
152/// GenesisState defines the tokenomics module's genesis state.
153#[allow(clippy::derive_partial_eq_without_eq)]
154#[derive(
155    Clone,
156    PartialEq,
157    Eq,
158    ::prost::Message,
159    ::serde::Serialize,
160    ::serde::Deserialize,
161    ::schemars::JsonSchema,
162    CosmwasmExt,
163)]
164#[proto_message(type_url = "/elys.tokenomics.GenesisState")]
165pub struct GenesisState {
166    #[prost(message, optional, tag = "1")]
167    pub params: ::core::option::Option<Params>,
168    #[prost(message, repeated, tag = "2")]
169    pub airdrop_list: ::prost::alloc::vec::Vec<Airdrop>,
170    #[prost(message, optional, tag = "3")]
171    pub genesis_inflation: ::core::option::Option<GenesisInflation>,
172    #[prost(message, repeated, tag = "4")]
173    pub time_based_inflation_list: ::prost::alloc::vec::Vec<TimeBasedInflation>,
174}
175/// QueryParamsRequest is request type for the Query/Params RPC method.
176#[allow(clippy::derive_partial_eq_without_eq)]
177#[derive(
178    Clone,
179    PartialEq,
180    Eq,
181    ::prost::Message,
182    ::serde::Serialize,
183    ::serde::Deserialize,
184    ::schemars::JsonSchema,
185    CosmwasmExt,
186)]
187#[proto_message(type_url = "/elys.tokenomics.QueryParamsRequest")]
188#[proto_query(
189    path = "/elys.tokenomics.Query/Params",
190    response_type = QueryParamsResponse
191)]
192pub struct QueryParamsRequest {}
193/// QueryParamsResponse is response type for the Query/Params RPC method.
194#[allow(clippy::derive_partial_eq_without_eq)]
195#[derive(
196    Clone,
197    PartialEq,
198    Eq,
199    ::prost::Message,
200    ::serde::Serialize,
201    ::serde::Deserialize,
202    ::schemars::JsonSchema,
203    CosmwasmExt,
204)]
205#[proto_message(type_url = "/elys.tokenomics.QueryParamsResponse")]
206pub struct QueryParamsResponse {
207    /// params holds all the parameters of this module.
208    #[prost(message, optional, tag = "1")]
209    pub params: ::core::option::Option<Params>,
210}
211#[allow(clippy::derive_partial_eq_without_eq)]
212#[derive(
213    Clone,
214    PartialEq,
215    Eq,
216    ::prost::Message,
217    ::serde::Serialize,
218    ::serde::Deserialize,
219    ::schemars::JsonSchema,
220    CosmwasmExt,
221)]
222#[proto_message(type_url = "/elys.tokenomics.QueryGetAirdropRequest")]
223#[proto_query(
224    path = "/elys.tokenomics.Query/Airdrop",
225    response_type = QueryGetAirdropResponse
226)]
227pub struct QueryGetAirdropRequest {
228    #[prost(string, tag = "1")]
229    pub intent: ::prost::alloc::string::String,
230}
231#[allow(clippy::derive_partial_eq_without_eq)]
232#[derive(
233    Clone,
234    PartialEq,
235    Eq,
236    ::prost::Message,
237    ::serde::Serialize,
238    ::serde::Deserialize,
239    ::schemars::JsonSchema,
240    CosmwasmExt,
241)]
242#[proto_message(type_url = "/elys.tokenomics.QueryGetAirdropResponse")]
243pub struct QueryGetAirdropResponse {
244    #[prost(message, optional, tag = "1")]
245    pub airdrop: ::core::option::Option<Airdrop>,
246}
247#[allow(clippy::derive_partial_eq_without_eq)]
248#[derive(
249    Clone,
250    PartialEq,
251    Eq,
252    ::prost::Message,
253    ::serde::Serialize,
254    ::serde::Deserialize,
255    ::schemars::JsonSchema,
256    CosmwasmExt,
257)]
258#[proto_message(type_url = "/elys.tokenomics.QueryAllAirdropRequest")]
259#[proto_query(
260    path = "/elys.tokenomics.Query/AirdropAll",
261    response_type = QueryAllAirdropResponse
262)]
263pub struct QueryAllAirdropRequest {
264    #[prost(message, optional, tag = "1")]
265    pub pagination: ::core::option::Option<super::super::cosmos::base::query::v1beta1::PageRequest>,
266}
267#[allow(clippy::derive_partial_eq_without_eq)]
268#[derive(
269    Clone,
270    PartialEq,
271    Eq,
272    ::prost::Message,
273    ::serde::Serialize,
274    ::serde::Deserialize,
275    ::schemars::JsonSchema,
276    CosmwasmExt,
277)]
278#[proto_message(type_url = "/elys.tokenomics.QueryAllAirdropResponse")]
279pub struct QueryAllAirdropResponse {
280    #[prost(message, repeated, tag = "1")]
281    pub airdrop: ::prost::alloc::vec::Vec<Airdrop>,
282    #[prost(message, optional, tag = "2")]
283    pub pagination:
284        ::core::option::Option<super::super::cosmos::base::query::v1beta1::PageResponse>,
285}
286#[allow(clippy::derive_partial_eq_without_eq)]
287#[derive(
288    Clone,
289    PartialEq,
290    Eq,
291    ::prost::Message,
292    ::serde::Serialize,
293    ::serde::Deserialize,
294    ::schemars::JsonSchema,
295    CosmwasmExt,
296)]
297#[proto_message(type_url = "/elys.tokenomics.QueryGetGenesisInflationRequest")]
298#[proto_query(
299    path = "/elys.tokenomics.Query/GenesisInflation",
300    response_type = QueryGetGenesisInflationResponse
301)]
302pub struct QueryGetGenesisInflationRequest {}
303#[allow(clippy::derive_partial_eq_without_eq)]
304#[derive(
305    Clone,
306    PartialEq,
307    Eq,
308    ::prost::Message,
309    ::serde::Serialize,
310    ::serde::Deserialize,
311    ::schemars::JsonSchema,
312    CosmwasmExt,
313)]
314#[proto_message(type_url = "/elys.tokenomics.QueryGetGenesisInflationResponse")]
315pub struct QueryGetGenesisInflationResponse {
316    #[prost(message, optional, tag = "1")]
317    pub genesis_inflation: ::core::option::Option<GenesisInflation>,
318}
319#[allow(clippy::derive_partial_eq_without_eq)]
320#[derive(
321    Clone,
322    PartialEq,
323    Eq,
324    ::prost::Message,
325    ::serde::Serialize,
326    ::serde::Deserialize,
327    ::schemars::JsonSchema,
328    CosmwasmExt,
329)]
330#[proto_message(type_url = "/elys.tokenomics.QueryGetTimeBasedInflationRequest")]
331#[proto_query(
332    path = "/elys.tokenomics.Query/TimeBasedInflation",
333    response_type = QueryGetTimeBasedInflationResponse
334)]
335pub struct QueryGetTimeBasedInflationRequest {
336    #[prost(uint64, tag = "1")]
337    #[serde(
338        serialize_with = "crate::serde::as_str::serialize",
339        deserialize_with = "crate::serde::as_str::deserialize"
340    )]
341    pub start_block_height: u64,
342    #[prost(uint64, tag = "2")]
343    #[serde(
344        serialize_with = "crate::serde::as_str::serialize",
345        deserialize_with = "crate::serde::as_str::deserialize"
346    )]
347    pub end_block_height: u64,
348}
349#[allow(clippy::derive_partial_eq_without_eq)]
350#[derive(
351    Clone,
352    PartialEq,
353    Eq,
354    ::prost::Message,
355    ::serde::Serialize,
356    ::serde::Deserialize,
357    ::schemars::JsonSchema,
358    CosmwasmExt,
359)]
360#[proto_message(type_url = "/elys.tokenomics.QueryGetTimeBasedInflationResponse")]
361pub struct QueryGetTimeBasedInflationResponse {
362    #[prost(message, optional, tag = "1")]
363    pub time_based_inflation: ::core::option::Option<TimeBasedInflation>,
364}
365#[allow(clippy::derive_partial_eq_without_eq)]
366#[derive(
367    Clone,
368    PartialEq,
369    Eq,
370    ::prost::Message,
371    ::serde::Serialize,
372    ::serde::Deserialize,
373    ::schemars::JsonSchema,
374    CosmwasmExt,
375)]
376#[proto_message(type_url = "/elys.tokenomics.QueryAllTimeBasedInflationRequest")]
377#[proto_query(
378    path = "/elys.tokenomics.Query/TimeBasedInflationAll",
379    response_type = QueryAllTimeBasedInflationResponse
380)]
381pub struct QueryAllTimeBasedInflationRequest {
382    #[prost(message, optional, tag = "1")]
383    pub pagination: ::core::option::Option<super::super::cosmos::base::query::v1beta1::PageRequest>,
384}
385#[allow(clippy::derive_partial_eq_without_eq)]
386#[derive(
387    Clone,
388    PartialEq,
389    Eq,
390    ::prost::Message,
391    ::serde::Serialize,
392    ::serde::Deserialize,
393    ::schemars::JsonSchema,
394    CosmwasmExt,
395)]
396#[proto_message(type_url = "/elys.tokenomics.QueryAllTimeBasedInflationResponse")]
397pub struct QueryAllTimeBasedInflationResponse {
398    #[prost(message, repeated, tag = "1")]
399    pub time_based_inflation: ::prost::alloc::vec::Vec<TimeBasedInflation>,
400    #[prost(message, optional, tag = "2")]
401    pub pagination:
402        ::core::option::Option<super::super::cosmos::base::query::v1beta1::PageResponse>,
403}
404#[allow(clippy::derive_partial_eq_without_eq)]
405#[derive(
406    Clone,
407    PartialEq,
408    Eq,
409    ::prost::Message,
410    ::serde::Serialize,
411    ::serde::Deserialize,
412    ::schemars::JsonSchema,
413    CosmwasmExt,
414)]
415#[proto_message(type_url = "/elys.tokenomics.MsgCreateAirdrop")]
416pub struct MsgCreateAirdrop {
417    #[prost(string, tag = "1")]
418    pub authority: ::prost::alloc::string::String,
419    #[prost(string, tag = "2")]
420    pub intent: ::prost::alloc::string::String,
421    #[prost(uint64, tag = "3")]
422    #[serde(
423        serialize_with = "crate::serde::as_str::serialize",
424        deserialize_with = "crate::serde::as_str::deserialize"
425    )]
426    pub amount: u64,
427    #[prost(uint64, tag = "4")]
428    #[serde(
429        serialize_with = "crate::serde::as_str::serialize",
430        deserialize_with = "crate::serde::as_str::deserialize"
431    )]
432    pub expiry: u64,
433}
434#[allow(clippy::derive_partial_eq_without_eq)]
435#[derive(
436    Clone,
437    PartialEq,
438    Eq,
439    ::prost::Message,
440    ::serde::Serialize,
441    ::serde::Deserialize,
442    ::schemars::JsonSchema,
443    CosmwasmExt,
444)]
445#[proto_message(type_url = "/elys.tokenomics.MsgCreateAirdropResponse")]
446pub struct MsgCreateAirdropResponse {}
447#[allow(clippy::derive_partial_eq_without_eq)]
448#[derive(
449    Clone,
450    PartialEq,
451    Eq,
452    ::prost::Message,
453    ::serde::Serialize,
454    ::serde::Deserialize,
455    ::schemars::JsonSchema,
456    CosmwasmExt,
457)]
458#[proto_message(type_url = "/elys.tokenomics.MsgUpdateAirdrop")]
459pub struct MsgUpdateAirdrop {
460    #[prost(string, tag = "1")]
461    pub authority: ::prost::alloc::string::String,
462    #[prost(string, tag = "2")]
463    pub intent: ::prost::alloc::string::String,
464    #[prost(uint64, tag = "3")]
465    #[serde(
466        serialize_with = "crate::serde::as_str::serialize",
467        deserialize_with = "crate::serde::as_str::deserialize"
468    )]
469    pub amount: u64,
470    #[prost(uint64, tag = "4")]
471    #[serde(
472        serialize_with = "crate::serde::as_str::serialize",
473        deserialize_with = "crate::serde::as_str::deserialize"
474    )]
475    pub expiry: u64,
476}
477#[allow(clippy::derive_partial_eq_without_eq)]
478#[derive(
479    Clone,
480    PartialEq,
481    Eq,
482    ::prost::Message,
483    ::serde::Serialize,
484    ::serde::Deserialize,
485    ::schemars::JsonSchema,
486    CosmwasmExt,
487)]
488#[proto_message(type_url = "/elys.tokenomics.MsgUpdateAirdropResponse")]
489pub struct MsgUpdateAirdropResponse {}
490#[allow(clippy::derive_partial_eq_without_eq)]
491#[derive(
492    Clone,
493    PartialEq,
494    Eq,
495    ::prost::Message,
496    ::serde::Serialize,
497    ::serde::Deserialize,
498    ::schemars::JsonSchema,
499    CosmwasmExt,
500)]
501#[proto_message(type_url = "/elys.tokenomics.MsgDeleteAirdrop")]
502pub struct MsgDeleteAirdrop {
503    #[prost(string, tag = "1")]
504    pub authority: ::prost::alloc::string::String,
505    #[prost(string, tag = "2")]
506    pub intent: ::prost::alloc::string::String,
507}
508#[allow(clippy::derive_partial_eq_without_eq)]
509#[derive(
510    Clone,
511    PartialEq,
512    Eq,
513    ::prost::Message,
514    ::serde::Serialize,
515    ::serde::Deserialize,
516    ::schemars::JsonSchema,
517    CosmwasmExt,
518)]
519#[proto_message(type_url = "/elys.tokenomics.MsgDeleteAirdropResponse")]
520pub struct MsgDeleteAirdropResponse {}
521#[allow(clippy::derive_partial_eq_without_eq)]
522#[derive(
523    Clone,
524    PartialEq,
525    Eq,
526    ::prost::Message,
527    ::serde::Serialize,
528    ::serde::Deserialize,
529    ::schemars::JsonSchema,
530    CosmwasmExt,
531)]
532#[proto_message(type_url = "/elys.tokenomics.MsgClaimAirdrop")]
533pub struct MsgClaimAirdrop {
534    #[prost(string, tag = "1")]
535    pub sender: ::prost::alloc::string::String,
536}
537#[allow(clippy::derive_partial_eq_without_eq)]
538#[derive(
539    Clone,
540    PartialEq,
541    Eq,
542    ::prost::Message,
543    ::serde::Serialize,
544    ::serde::Deserialize,
545    ::schemars::JsonSchema,
546    CosmwasmExt,
547)]
548#[proto_message(type_url = "/elys.tokenomics.MsgClaimAirdropResponse")]
549pub struct MsgClaimAirdropResponse {}
550#[allow(clippy::derive_partial_eq_without_eq)]
551#[derive(
552    Clone,
553    PartialEq,
554    Eq,
555    ::prost::Message,
556    ::serde::Serialize,
557    ::serde::Deserialize,
558    ::schemars::JsonSchema,
559    CosmwasmExt,
560)]
561#[proto_message(type_url = "/elys.tokenomics.MsgUpdateGenesisInflation")]
562pub struct MsgUpdateGenesisInflation {
563    #[prost(string, tag = "1")]
564    pub authority: ::prost::alloc::string::String,
565    #[prost(message, optional, tag = "3")]
566    pub inflation: ::core::option::Option<InflationEntry>,
567    #[prost(uint64, tag = "4")]
568    #[serde(
569        serialize_with = "crate::serde::as_str::serialize",
570        deserialize_with = "crate::serde::as_str::deserialize"
571    )]
572    pub seed_vesting: u64,
573    #[prost(uint64, tag = "5")]
574    #[serde(
575        serialize_with = "crate::serde::as_str::serialize",
576        deserialize_with = "crate::serde::as_str::deserialize"
577    )]
578    pub strategic_sales_vesting: u64,
579}
580#[allow(clippy::derive_partial_eq_without_eq)]
581#[derive(
582    Clone,
583    PartialEq,
584    Eq,
585    ::prost::Message,
586    ::serde::Serialize,
587    ::serde::Deserialize,
588    ::schemars::JsonSchema,
589    CosmwasmExt,
590)]
591#[proto_message(type_url = "/elys.tokenomics.MsgUpdateGenesisInflationResponse")]
592pub struct MsgUpdateGenesisInflationResponse {}
593#[allow(clippy::derive_partial_eq_without_eq)]
594#[derive(
595    Clone,
596    PartialEq,
597    Eq,
598    ::prost::Message,
599    ::serde::Serialize,
600    ::serde::Deserialize,
601    ::schemars::JsonSchema,
602    CosmwasmExt,
603)]
604#[proto_message(type_url = "/elys.tokenomics.MsgCreateTimeBasedInflation")]
605pub struct MsgCreateTimeBasedInflation {
606    #[prost(string, tag = "1")]
607    pub authority: ::prost::alloc::string::String,
608    #[prost(uint64, tag = "2")]
609    #[serde(
610        serialize_with = "crate::serde::as_str::serialize",
611        deserialize_with = "crate::serde::as_str::deserialize"
612    )]
613    pub start_block_height: u64,
614    #[prost(uint64, tag = "3")]
615    #[serde(
616        serialize_with = "crate::serde::as_str::serialize",
617        deserialize_with = "crate::serde::as_str::deserialize"
618    )]
619    pub end_block_height: u64,
620    #[prost(string, tag = "4")]
621    pub description: ::prost::alloc::string::String,
622    #[prost(message, optional, tag = "5")]
623    pub inflation: ::core::option::Option<InflationEntry>,
624}
625#[allow(clippy::derive_partial_eq_without_eq)]
626#[derive(
627    Clone,
628    PartialEq,
629    Eq,
630    ::prost::Message,
631    ::serde::Serialize,
632    ::serde::Deserialize,
633    ::schemars::JsonSchema,
634    CosmwasmExt,
635)]
636#[proto_message(type_url = "/elys.tokenomics.MsgCreateTimeBasedInflationResponse")]
637pub struct MsgCreateTimeBasedInflationResponse {}
638#[allow(clippy::derive_partial_eq_without_eq)]
639#[derive(
640    Clone,
641    PartialEq,
642    Eq,
643    ::prost::Message,
644    ::serde::Serialize,
645    ::serde::Deserialize,
646    ::schemars::JsonSchema,
647    CosmwasmExt,
648)]
649#[proto_message(type_url = "/elys.tokenomics.MsgUpdateTimeBasedInflation")]
650pub struct MsgUpdateTimeBasedInflation {
651    #[prost(string, tag = "1")]
652    pub authority: ::prost::alloc::string::String,
653    #[prost(uint64, tag = "2")]
654    #[serde(
655        serialize_with = "crate::serde::as_str::serialize",
656        deserialize_with = "crate::serde::as_str::deserialize"
657    )]
658    pub start_block_height: u64,
659    #[prost(uint64, tag = "3")]
660    #[serde(
661        serialize_with = "crate::serde::as_str::serialize",
662        deserialize_with = "crate::serde::as_str::deserialize"
663    )]
664    pub end_block_height: u64,
665    #[prost(string, tag = "4")]
666    pub description: ::prost::alloc::string::String,
667    #[prost(message, optional, tag = "5")]
668    pub inflation: ::core::option::Option<InflationEntry>,
669}
670#[allow(clippy::derive_partial_eq_without_eq)]
671#[derive(
672    Clone,
673    PartialEq,
674    Eq,
675    ::prost::Message,
676    ::serde::Serialize,
677    ::serde::Deserialize,
678    ::schemars::JsonSchema,
679    CosmwasmExt,
680)]
681#[proto_message(type_url = "/elys.tokenomics.MsgUpdateTimeBasedInflationResponse")]
682pub struct MsgUpdateTimeBasedInflationResponse {}
683#[allow(clippy::derive_partial_eq_without_eq)]
684#[derive(
685    Clone,
686    PartialEq,
687    Eq,
688    ::prost::Message,
689    ::serde::Serialize,
690    ::serde::Deserialize,
691    ::schemars::JsonSchema,
692    CosmwasmExt,
693)]
694#[proto_message(type_url = "/elys.tokenomics.MsgDeleteTimeBasedInflation")]
695pub struct MsgDeleteTimeBasedInflation {
696    #[prost(string, tag = "1")]
697    pub authority: ::prost::alloc::string::String,
698    #[prost(uint64, tag = "2")]
699    #[serde(
700        serialize_with = "crate::serde::as_str::serialize",
701        deserialize_with = "crate::serde::as_str::deserialize"
702    )]
703    pub start_block_height: u64,
704    #[prost(uint64, tag = "3")]
705    #[serde(
706        serialize_with = "crate::serde::as_str::serialize",
707        deserialize_with = "crate::serde::as_str::deserialize"
708    )]
709    pub end_block_height: u64,
710}
711#[allow(clippy::derive_partial_eq_without_eq)]
712#[derive(
713    Clone,
714    PartialEq,
715    Eq,
716    ::prost::Message,
717    ::serde::Serialize,
718    ::serde::Deserialize,
719    ::schemars::JsonSchema,
720    CosmwasmExt,
721)]
722#[proto_message(type_url = "/elys.tokenomics.MsgDeleteTimeBasedInflationResponse")]
723pub struct MsgDeleteTimeBasedInflationResponse {}
724pub struct TokenomicsQuerier<'a, Q: cosmwasm_std::CustomQuery> {
725    querier: &'a cosmwasm_std::QuerierWrapper<'a, Q>,
726}
727impl<'a, Q: cosmwasm_std::CustomQuery> TokenomicsQuerier<'a, Q> {
728    pub fn new(querier: &'a cosmwasm_std::QuerierWrapper<'a, Q>) -> Self {
729        Self { querier }
730    }
731    pub fn params(&self) -> Result<QueryParamsResponse, cosmwasm_std::StdError> {
732        QueryParamsRequest {}.query(self.querier)
733    }
734    pub fn airdrop(
735        &self,
736        intent: ::prost::alloc::string::String,
737    ) -> Result<QueryGetAirdropResponse, cosmwasm_std::StdError> {
738        QueryGetAirdropRequest { intent }.query(self.querier)
739    }
740    pub fn airdrop_all(
741        &self,
742        pagination: ::core::option::Option<super::super::cosmos::base::query::v1beta1::PageRequest>,
743    ) -> Result<QueryAllAirdropResponse, cosmwasm_std::StdError> {
744        QueryAllAirdropRequest { pagination }.query(self.querier)
745    }
746    pub fn genesis_inflation(
747        &self,
748    ) -> Result<QueryGetGenesisInflationResponse, cosmwasm_std::StdError> {
749        QueryGetGenesisInflationRequest {}.query(self.querier)
750    }
751    pub fn time_based_inflation(
752        &self,
753        start_block_height: u64,
754        end_block_height: u64,
755    ) -> Result<QueryGetTimeBasedInflationResponse, cosmwasm_std::StdError> {
756        QueryGetTimeBasedInflationRequest {
757            start_block_height,
758            end_block_height,
759        }
760        .query(self.querier)
761    }
762    pub fn time_based_inflation_all(
763        &self,
764        pagination: ::core::option::Option<super::super::cosmos::base::query::v1beta1::PageRequest>,
765    ) -> Result<QueryAllTimeBasedInflationResponse, cosmwasm_std::StdError> {
766        QueryAllTimeBasedInflationRequest { pagination }.query(self.querier)
767    }
768}