1#[allow(clippy::derive_partial_eq_without_eq)]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct Params {
6 #[prost(uint64, tag="1")]
8 pub vote_period: u64,
9 #[prost(string, tag="2")]
12 pub vote_threshold: ::prost::alloc::string::String,
13 #[prost(string, tag="3")]
22 pub reward_band: ::prost::alloc::string::String,
23 #[prost(string, repeated, tag="4")]
26 pub whitelist: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
27 #[prost(string, tag="5")]
31 pub slash_fraction: ::prost::alloc::string::String,
32 #[prost(uint64, tag="6")]
37 pub slash_window: u64,
38 #[prost(string, tag="7")]
39 pub min_valid_per_window: ::prost::alloc::string::String,
40 #[prost(message, optional, tag="8")]
43 pub twap_lookback_window: ::core::option::Option<::prost_types::Duration>,
44 #[prost(uint64, tag="9")]
47 pub min_voters: u64,
48 #[prost(string, tag="10")]
50 pub validator_fee_ratio: ::prost::alloc::string::String,
51 #[prost(uint64, tag="11")]
52 pub expiration_blocks: u64,
53}
54#[allow(clippy::derive_partial_eq_without_eq)]
59#[derive(Clone, PartialEq, ::prost::Message)]
60pub struct AggregateExchangeRatePrevote {
61 #[prost(string, tag="1")]
62 pub hash: ::prost::alloc::string::String,
63 #[prost(string, tag="2")]
64 pub voter: ::prost::alloc::string::String,
65 #[prost(uint64, tag="3")]
66 pub submit_block: u64,
67}
68#[allow(clippy::derive_partial_eq_without_eq)]
71#[derive(Clone, PartialEq, ::prost::Message)]
72pub struct AggregateExchangeRateVote {
73 #[prost(message, repeated, tag="1")]
74 pub exchange_rate_tuples: ::prost::alloc::vec::Vec<ExchangeRateTuple>,
75 #[prost(string, tag="2")]
76 pub voter: ::prost::alloc::string::String,
77}
78#[allow(clippy::derive_partial_eq_without_eq)]
80#[derive(Clone, PartialEq, ::prost::Message)]
81pub struct ExchangeRateTuple {
82 #[prost(string, tag="1")]
83 pub pair: ::prost::alloc::string::String,
84 #[prost(string, tag="2")]
85 pub exchange_rate: ::prost::alloc::string::String,
86}
87#[allow(clippy::derive_partial_eq_without_eq)]
88#[derive(Clone, PartialEq, ::prost::Message)]
89pub struct ExchangeRateAtBlock {
90 #[prost(string, tag="1")]
91 pub exchange_rate: ::prost::alloc::string::String,
92 #[prost(uint64, tag="2")]
93 pub created_block: u64,
94 #[prost(int64, tag="3")]
98 pub block_timestamp_ms: i64,
99}
100#[allow(clippy::derive_partial_eq_without_eq)]
103#[derive(Clone, PartialEq, ::prost::Message)]
104pub struct Rewards {
105 #[prost(uint64, tag="1")]
107 pub id: u64,
108 #[prost(uint64, tag="2")]
111 pub vote_periods: u64,
112 #[prost(message, repeated, tag="3")]
114 pub coins: ::prost::alloc::vec::Vec<crate::proto::cosmos::base::v1beta1::Coin>,
115}
116#[allow(clippy::derive_partial_eq_without_eq)]
118#[derive(Clone, PartialEq, ::prost::Message)]
119pub struct EventPriceUpdate {
120 #[prost(string, tag="1")]
121 pub pair: ::prost::alloc::string::String,
122 #[prost(string, tag="2")]
123 pub price: ::prost::alloc::string::String,
124 #[prost(int64, tag="3")]
125 pub timestamp_ms: i64,
126}
127#[allow(clippy::derive_partial_eq_without_eq)]
129#[derive(Clone, PartialEq, ::prost::Message)]
130pub struct EventDelegateFeederConsent {
131 #[prost(string, tag="1")]
133 pub validator: ::prost::alloc::string::String,
134 #[prost(string, tag="2")]
137 pub feeder: ::prost::alloc::string::String,
138}
139#[allow(clippy::derive_partial_eq_without_eq)]
141#[derive(Clone, PartialEq, ::prost::Message)]
142pub struct EventAggregateVote {
143 #[prost(string, tag="1")]
145 pub validator: ::prost::alloc::string::String,
146 #[prost(string, tag="2")]
149 pub feeder: ::prost::alloc::string::String,
150 #[prost(message, repeated, tag="3")]
151 pub prices: ::prost::alloc::vec::Vec<ExchangeRateTuple>,
152}
153#[allow(clippy::derive_partial_eq_without_eq)]
156#[derive(Clone, PartialEq, ::prost::Message)]
157pub struct EventAggregatePrevote {
158 #[prost(string, tag="1")]
160 pub validator: ::prost::alloc::string::String,
161 #[prost(string, tag="2")]
164 pub feeder: ::prost::alloc::string::String,
165}
166#[allow(clippy::derive_partial_eq_without_eq)]
167#[derive(Clone, PartialEq, ::prost::Message)]
168pub struct EventValidatorPerformance {
169 #[prost(string, tag="1")]
171 pub validator: ::prost::alloc::string::String,
172 #[prost(int64, tag="2")]
174 pub voting_power: i64,
175 #[prost(int64, tag="3")]
178 pub reward_weight: i64,
179 #[prost(int64, tag="4")]
181 pub win_count: i64,
182 #[prost(int64, tag="5")]
184 pub abstain_count: i64,
185 #[prost(int64, tag="6")]
187 pub miss_count: i64,
188}
189#[allow(clippy::derive_partial_eq_without_eq)]
191#[derive(Clone, PartialEq, ::prost::Message)]
192pub struct GenesisState {
193 #[prost(message, optional, tag="1")]
194 pub params: ::core::option::Option<Params>,
195 #[prost(message, repeated, tag="2")]
196 pub feeder_delegations: ::prost::alloc::vec::Vec<FeederDelegation>,
197 #[prost(message, repeated, tag="3")]
198 pub exchange_rates: ::prost::alloc::vec::Vec<ExchangeRateTuple>,
199 #[prost(message, repeated, tag="4")]
200 pub miss_counters: ::prost::alloc::vec::Vec<MissCounter>,
201 #[prost(message, repeated, tag="5")]
202 pub aggregate_exchange_rate_prevotes: ::prost::alloc::vec::Vec<AggregateExchangeRatePrevote>,
203 #[prost(message, repeated, tag="6")]
204 pub aggregate_exchange_rate_votes: ::prost::alloc::vec::Vec<AggregateExchangeRateVote>,
205 #[prost(string, repeated, tag="7")]
206 pub pairs: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
207 #[prost(message, repeated, tag="8")]
208 pub rewards: ::prost::alloc::vec::Vec<Rewards>,
209}
210#[allow(clippy::derive_partial_eq_without_eq)]
214#[derive(Clone, PartialEq, ::prost::Message)]
215pub struct FeederDelegation {
216 #[prost(string, tag="1")]
217 pub feeder_address: ::prost::alloc::string::String,
218 #[prost(string, tag="2")]
219 pub validator_address: ::prost::alloc::string::String,
220}
221#[allow(clippy::derive_partial_eq_without_eq)]
224#[derive(Clone, PartialEq, ::prost::Message)]
225pub struct MissCounter {
226 #[prost(string, tag="1")]
227 pub validator_address: ::prost::alloc::string::String,
228 #[prost(uint64, tag="2")]
229 pub miss_counter: u64,
230}
231#[allow(clippy::derive_partial_eq_without_eq)]
234#[derive(Clone, PartialEq, ::prost::Message)]
235pub struct QueryExchangeRateRequest {
236 #[prost(string, tag="1")]
238 pub pair: ::prost::alloc::string::String,
239}
240#[allow(clippy::derive_partial_eq_without_eq)]
243#[derive(Clone, PartialEq, ::prost::Message)]
244pub struct QueryExchangeRateResponse {
245 #[prost(string, tag="1")]
247 pub exchange_rate: ::prost::alloc::string::String,
248 #[prost(int64, tag="2")]
252 pub block_timestamp_ms: i64,
253 #[prost(uint64, tag="3")]
255 pub block_height: u64,
256}
257#[allow(clippy::derive_partial_eq_without_eq)]
260#[derive(Clone, PartialEq, ::prost::Message)]
261pub struct QueryExchangeRatesRequest {
262}
263#[allow(clippy::derive_partial_eq_without_eq)]
266#[derive(Clone, PartialEq, ::prost::Message)]
267pub struct QueryExchangeRatesResponse {
268 #[prost(message, repeated, tag="1")]
271 pub exchange_rates: ::prost::alloc::vec::Vec<ExchangeRateTuple>,
272}
273#[allow(clippy::derive_partial_eq_without_eq)]
275#[derive(Clone, PartialEq, ::prost::Message)]
276pub struct QueryActivesRequest {
277}
278#[allow(clippy::derive_partial_eq_without_eq)]
281#[derive(Clone, PartialEq, ::prost::Message)]
282pub struct QueryActivesResponse {
283 #[prost(string, repeated, tag="1")]
285 pub actives: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
286}
287#[allow(clippy::derive_partial_eq_without_eq)]
290#[derive(Clone, PartialEq, ::prost::Message)]
291pub struct QueryVoteTargetsRequest {
292}
293#[allow(clippy::derive_partial_eq_without_eq)]
296#[derive(Clone, PartialEq, ::prost::Message)]
297pub struct QueryVoteTargetsResponse {
298 #[prost(string, repeated, tag="1")]
301 pub vote_targets: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
302}
303#[allow(clippy::derive_partial_eq_without_eq)]
306#[derive(Clone, PartialEq, ::prost::Message)]
307pub struct QueryFeederDelegationRequest {
308 #[prost(string, tag="1")]
310 pub validator_addr: ::prost::alloc::string::String,
311}
312#[allow(clippy::derive_partial_eq_without_eq)]
315#[derive(Clone, PartialEq, ::prost::Message)]
316pub struct QueryFeederDelegationResponse {
317 #[prost(string, tag="1")]
319 pub feeder_addr: ::prost::alloc::string::String,
320}
321#[allow(clippy::derive_partial_eq_without_eq)]
324#[derive(Clone, PartialEq, ::prost::Message)]
325pub struct QueryMissCounterRequest {
326 #[prost(string, tag="1")]
328 pub validator_addr: ::prost::alloc::string::String,
329}
330#[allow(clippy::derive_partial_eq_without_eq)]
333#[derive(Clone, PartialEq, ::prost::Message)]
334pub struct QueryMissCounterResponse {
335 #[prost(uint64, tag="1")]
337 pub miss_counter: u64,
338}
339#[allow(clippy::derive_partial_eq_without_eq)]
342#[derive(Clone, PartialEq, ::prost::Message)]
343pub struct QueryAggregatePrevoteRequest {
344 #[prost(string, tag="1")]
346 pub validator_addr: ::prost::alloc::string::String,
347}
348#[allow(clippy::derive_partial_eq_without_eq)]
351#[derive(Clone, PartialEq, ::prost::Message)]
352pub struct QueryAggregatePrevoteResponse {
353 #[prost(message, optional, tag="1")]
356 pub aggregate_prevote: ::core::option::Option<AggregateExchangeRatePrevote>,
357}
358#[allow(clippy::derive_partial_eq_without_eq)]
361#[derive(Clone, PartialEq, ::prost::Message)]
362pub struct QueryAggregatePrevotesRequest {
363}
364#[allow(clippy::derive_partial_eq_without_eq)]
367#[derive(Clone, PartialEq, ::prost::Message)]
368pub struct QueryAggregatePrevotesResponse {
369 #[prost(message, repeated, tag="1")]
372 pub aggregate_prevotes: ::prost::alloc::vec::Vec<AggregateExchangeRatePrevote>,
373}
374#[allow(clippy::derive_partial_eq_without_eq)]
377#[derive(Clone, PartialEq, ::prost::Message)]
378pub struct QueryAggregateVoteRequest {
379 #[prost(string, tag="1")]
381 pub validator_addr: ::prost::alloc::string::String,
382}
383#[allow(clippy::derive_partial_eq_without_eq)]
386#[derive(Clone, PartialEq, ::prost::Message)]
387pub struct QueryAggregateVoteResponse {
388 #[prost(message, optional, tag="1")]
391 pub aggregate_vote: ::core::option::Option<AggregateExchangeRateVote>,
392}
393#[allow(clippy::derive_partial_eq_without_eq)]
396#[derive(Clone, PartialEq, ::prost::Message)]
397pub struct QueryAggregateVotesRequest {
398}
399#[allow(clippy::derive_partial_eq_without_eq)]
402#[derive(Clone, PartialEq, ::prost::Message)]
403pub struct QueryAggregateVotesResponse {
404 #[prost(message, repeated, tag="1")]
407 pub aggregate_votes: ::prost::alloc::vec::Vec<AggregateExchangeRateVote>,
408}
409#[allow(clippy::derive_partial_eq_without_eq)]
411#[derive(Clone, PartialEq, ::prost::Message)]
412pub struct QueryParamsRequest {
413}
414#[allow(clippy::derive_partial_eq_without_eq)]
416#[derive(Clone, PartialEq, ::prost::Message)]
417pub struct QueryParamsResponse {
418 #[prost(message, optional, tag="1")]
420 pub params: ::core::option::Option<Params>,
421}
422#[allow(clippy::derive_partial_eq_without_eq)]
424#[derive(Clone, PartialEq, ::prost::Message)]
425pub struct PriceSnapshot {
426 #[prost(string, tag="1")]
427 pub pair: ::prost::alloc::string::String,
428 #[prost(string, tag="2")]
429 pub price: ::prost::alloc::string::String,
430 #[prost(int64, tag="3")]
432 pub timestamp_ms: i64,
433}
434#[allow(clippy::derive_partial_eq_without_eq)]
437#[derive(Clone, PartialEq, ::prost::Message)]
438pub struct MsgAggregateExchangeRatePrevote {
439 #[prost(string, tag="1")]
440 pub hash: ::prost::alloc::string::String,
441 #[prost(string, tag="2")]
445 pub feeder: ::prost::alloc::string::String,
446 #[prost(string, tag="3")]
448 pub validator: ::prost::alloc::string::String,
449}
450#[allow(clippy::derive_partial_eq_without_eq)]
453#[derive(Clone, PartialEq, ::prost::Message)]
454pub struct MsgAggregateExchangeRatePrevoteResponse {
455}
456#[allow(clippy::derive_partial_eq_without_eq)]
459#[derive(Clone, PartialEq, ::prost::Message)]
460pub struct MsgAggregateExchangeRateVote {
461 #[prost(string, tag="1")]
462 pub salt: ::prost::alloc::string::String,
463 #[prost(string, tag="2")]
464 pub exchange_rates: ::prost::alloc::string::String,
465 #[prost(string, tag="3")]
469 pub feeder: ::prost::alloc::string::String,
470 #[prost(string, tag="4")]
472 pub validator: ::prost::alloc::string::String,
473}
474#[allow(clippy::derive_partial_eq_without_eq)]
477#[derive(Clone, PartialEq, ::prost::Message)]
478pub struct MsgAggregateExchangeRateVoteResponse {
479}
480#[allow(clippy::derive_partial_eq_without_eq)]
483#[derive(Clone, PartialEq, ::prost::Message)]
484pub struct MsgDelegateFeedConsent {
485 #[prost(string, tag="1")]
486 pub operator: ::prost::alloc::string::String,
487 #[prost(string, tag="2")]
488 pub delegate: ::prost::alloc::string::String,
489}
490#[allow(clippy::derive_partial_eq_without_eq)]
493#[derive(Clone, PartialEq, ::prost::Message)]
494pub struct MsgDelegateFeedConsentResponse {
495}
496#[allow(clippy::derive_partial_eq_without_eq)]
497#[derive(Clone, PartialEq, ::prost::Message)]
498pub struct MsgEditOracleParams {
499 #[prost(string, tag="1")]
500 pub sender: ::prost::alloc::string::String,
501 #[prost(message, optional, tag="2")]
502 pub params: ::core::option::Option<OracleParamsMsg>,
503}
504#[allow(clippy::derive_partial_eq_without_eq)]
505#[derive(Clone, PartialEq, ::prost::Message)]
506pub struct MsgEditOracleParamsResponse {
507}
508#[allow(clippy::derive_partial_eq_without_eq)]
509#[derive(Clone, PartialEq, ::prost::Message)]
510pub struct OracleParamsMsg {
511 #[prost(uint64, tag="1")]
513 pub vote_period: u64,
514 #[prost(string, tag="2")]
517 pub vote_threshold: ::prost::alloc::string::String,
518 #[prost(string, tag="3")]
527 pub reward_band: ::prost::alloc::string::String,
528 #[prost(string, repeated, tag="4")]
531 pub whitelist: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
532 #[prost(string, tag="5")]
536 pub slash_fraction: ::prost::alloc::string::String,
537 #[prost(uint64, tag="6")]
542 pub slash_window: u64,
543 #[prost(string, tag="7")]
544 pub min_valid_per_window: ::prost::alloc::string::String,
545 #[prost(message, optional, tag="8")]
547 pub twap_lookback_window: ::core::option::Option<::prost_types::Duration>,
548 #[prost(uint64, tag="9")]
551 pub min_voters: u64,
552 #[prost(string, tag="10")]
554 pub validator_fee_ratio: ::prost::alloc::string::String,
555 #[prost(uint64, tag="11")]
556 pub expiration_blocks: u64,
557}
558