nibiru_std/proto/buf/
cosmos.gov.v1.rs

1// @generated
2/// WeightedVoteOption defines a unit of vote for vote split.
3#[allow(clippy::derive_partial_eq_without_eq)]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct WeightedVoteOption {
6    /// option defines the valid vote options, it must not contain duplicate vote options.
7    #[prost(enumeration="VoteOption", tag="1")]
8    pub option: i32,
9    /// weight is the vote weight associated with the vote option.
10    #[prost(string, tag="2")]
11    pub weight: ::prost::alloc::string::String,
12}
13/// Deposit defines an amount deposited by an account address to an active
14/// proposal.
15#[allow(clippy::derive_partial_eq_without_eq)]
16#[derive(Clone, PartialEq, ::prost::Message)]
17pub struct Deposit {
18    /// proposal_id defines the unique id of the proposal.
19    #[prost(uint64, tag="1")]
20    pub proposal_id: u64,
21    /// depositor defines the deposit addresses from the proposals.
22    #[prost(string, tag="2")]
23    pub depositor: ::prost::alloc::string::String,
24    /// amount to be deposited by depositor.
25    #[prost(message, repeated, tag="3")]
26    pub amount: ::prost::alloc::vec::Vec<crate::proto::cosmos::base::v1beta1::Coin>,
27}
28/// Proposal defines the core field members of a governance proposal.
29#[allow(clippy::derive_partial_eq_without_eq)]
30#[derive(Clone, PartialEq, ::prost::Message)]
31pub struct Proposal {
32    /// id defines the unique id of the proposal.
33    #[prost(uint64, tag="1")]
34    pub id: u64,
35    /// messages are the arbitrary messages to be executed if the proposal passes.
36    #[prost(message, repeated, tag="2")]
37    pub messages: ::prost::alloc::vec::Vec<::prost_types::Any>,
38    /// status defines the proposal status.
39    #[prost(enumeration="ProposalStatus", tag="3")]
40    pub status: i32,
41    /// final_tally_result is the final tally result of the proposal. When
42    /// querying a proposal via gRPC, this field is not populated until the
43    /// proposal's voting period has ended.
44    #[prost(message, optional, tag="4")]
45    pub final_tally_result: ::core::option::Option<TallyResult>,
46    /// submit_time is the time of proposal submission.
47    #[prost(message, optional, tag="5")]
48    pub submit_time: ::core::option::Option<::prost_types::Timestamp>,
49    /// deposit_end_time is the end time for deposition.
50    #[prost(message, optional, tag="6")]
51    pub deposit_end_time: ::core::option::Option<::prost_types::Timestamp>,
52    /// total_deposit is the total deposit on the proposal.
53    #[prost(message, repeated, tag="7")]
54    pub total_deposit: ::prost::alloc::vec::Vec<crate::proto::cosmos::base::v1beta1::Coin>,
55    /// voting_start_time is the starting time to vote on a proposal.
56    #[prost(message, optional, tag="8")]
57    pub voting_start_time: ::core::option::Option<::prost_types::Timestamp>,
58    /// voting_end_time is the end time of voting on a proposal.
59    #[prost(message, optional, tag="9")]
60    pub voting_end_time: ::core::option::Option<::prost_types::Timestamp>,
61    /// metadata is any arbitrary metadata attached to the proposal.
62    #[prost(string, tag="10")]
63    pub metadata: ::prost::alloc::string::String,
64    /// title is the title of the proposal
65    ///
66    /// Since: cosmos-sdk 0.47
67    #[prost(string, tag="11")]
68    pub title: ::prost::alloc::string::String,
69    /// summary is a short summary of the proposal
70    ///
71    /// Since: cosmos-sdk 0.47
72    #[prost(string, tag="12")]
73    pub summary: ::prost::alloc::string::String,
74    /// Proposer is the address of the proposal sumbitter
75    ///
76    /// Since: cosmos-sdk 0.47
77    #[prost(string, tag="13")]
78    pub proposer: ::prost::alloc::string::String,
79}
80/// TallyResult defines a standard tally for a governance proposal.
81#[allow(clippy::derive_partial_eq_without_eq)]
82#[derive(Clone, PartialEq, ::prost::Message)]
83pub struct TallyResult {
84    /// yes_count is the number of yes votes on a proposal.
85    #[prost(string, tag="1")]
86    pub yes_count: ::prost::alloc::string::String,
87    /// abstain_count is the number of abstain votes on a proposal.
88    #[prost(string, tag="2")]
89    pub abstain_count: ::prost::alloc::string::String,
90    /// no_count is the number of no votes on a proposal.
91    #[prost(string, tag="3")]
92    pub no_count: ::prost::alloc::string::String,
93    /// no_with_veto_count is the number of no with veto votes on a proposal.
94    #[prost(string, tag="4")]
95    pub no_with_veto_count: ::prost::alloc::string::String,
96}
97/// Vote defines a vote on a governance proposal.
98/// A Vote consists of a proposal ID, the voter, and the vote option.
99#[allow(clippy::derive_partial_eq_without_eq)]
100#[derive(Clone, PartialEq, ::prost::Message)]
101pub struct Vote {
102    /// proposal_id defines the unique id of the proposal.
103    #[prost(uint64, tag="1")]
104    pub proposal_id: u64,
105    /// voter is the voter address of the proposal.
106    #[prost(string, tag="2")]
107    pub voter: ::prost::alloc::string::String,
108    /// options is the weighted vote options.
109    #[prost(message, repeated, tag="4")]
110    pub options: ::prost::alloc::vec::Vec<WeightedVoteOption>,
111    /// metadata is any  arbitrary metadata to attached to the vote.
112    #[prost(string, tag="5")]
113    pub metadata: ::prost::alloc::string::String,
114}
115/// DepositParams defines the params for deposits on governance proposals.
116#[allow(clippy::derive_partial_eq_without_eq)]
117#[derive(Clone, PartialEq, ::prost::Message)]
118pub struct DepositParams {
119    /// Minimum deposit for a proposal to enter voting period.
120    #[prost(message, repeated, tag="1")]
121    pub min_deposit: ::prost::alloc::vec::Vec<crate::proto::cosmos::base::v1beta1::Coin>,
122    /// Maximum period for Atom holders to deposit on a proposal. Initial value: 2
123    /// months.
124    #[prost(message, optional, tag="2")]
125    pub max_deposit_period: ::core::option::Option<::prost_types::Duration>,
126}
127/// VotingParams defines the params for voting on governance proposals.
128#[allow(clippy::derive_partial_eq_without_eq)]
129#[derive(Clone, PartialEq, ::prost::Message)]
130pub struct VotingParams {
131    /// Duration of the voting period.
132    #[prost(message, optional, tag="1")]
133    pub voting_period: ::core::option::Option<::prost_types::Duration>,
134}
135/// TallyParams defines the params for tallying votes on governance proposals.
136#[allow(clippy::derive_partial_eq_without_eq)]
137#[derive(Clone, PartialEq, ::prost::Message)]
138pub struct TallyParams {
139    /// Minimum percentage of total stake needed to vote for a result to be
140    /// considered valid.
141    #[prost(string, tag="1")]
142    pub quorum: ::prost::alloc::string::String,
143    /// Minimum proportion of Yes votes for proposal to pass. Default value: 0.5.
144    #[prost(string, tag="2")]
145    pub threshold: ::prost::alloc::string::String,
146    /// Minimum value of Veto votes to Total votes ratio for proposal to be
147    /// vetoed. Default value: 1/3.
148    #[prost(string, tag="3")]
149    pub veto_threshold: ::prost::alloc::string::String,
150}
151/// Params defines the parameters for the x/gov module.
152///
153/// Since: cosmos-sdk 0.47
154#[allow(clippy::derive_partial_eq_without_eq)]
155#[derive(Clone, PartialEq, ::prost::Message)]
156pub struct Params {
157    /// Minimum deposit for a proposal to enter voting period.
158    #[prost(message, repeated, tag="1")]
159    pub min_deposit: ::prost::alloc::vec::Vec<crate::proto::cosmos::base::v1beta1::Coin>,
160    /// Maximum period for Atom holders to deposit on a proposal. Initial value: 2
161    /// months.
162    #[prost(message, optional, tag="2")]
163    pub max_deposit_period: ::core::option::Option<::prost_types::Duration>,
164    /// Duration of the voting period.
165    #[prost(message, optional, tag="3")]
166    pub voting_period: ::core::option::Option<::prost_types::Duration>,
167    ///   Minimum percentage of total stake needed to vote for a result to be
168    ///   considered valid.
169    #[prost(string, tag="4")]
170    pub quorum: ::prost::alloc::string::String,
171    ///   Minimum proportion of Yes votes for proposal to pass. Default value: 0.5.
172    #[prost(string, tag="5")]
173    pub threshold: ::prost::alloc::string::String,
174    ///   Minimum value of Veto votes to Total votes ratio for proposal to be
175    ///   vetoed. Default value: 1/3.
176    #[prost(string, tag="6")]
177    pub veto_threshold: ::prost::alloc::string::String,
178    ///   The ratio representing the proportion of the deposit value that must be paid at proposal submission.
179    #[prost(string, tag="7")]
180    pub min_initial_deposit_ratio: ::prost::alloc::string::String,
181    /// burn deposits if a proposal does not meet quorum
182    #[prost(bool, tag="13")]
183    pub burn_vote_quorum: bool,
184    /// burn deposits if the proposal does not enter voting period
185    #[prost(bool, tag="14")]
186    pub burn_proposal_deposit_prevote: bool,
187    /// burn deposits if quorum with vote type no_veto is met
188    #[prost(bool, tag="15")]
189    pub burn_vote_veto: bool,
190}
191/// VoteOption enumerates the valid vote options for a given governance proposal.
192#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
193#[repr(i32)]
194pub enum VoteOption {
195    /// VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
196    Unspecified = 0,
197    /// VOTE_OPTION_YES defines a yes vote option.
198    Yes = 1,
199    /// VOTE_OPTION_ABSTAIN defines an abstain vote option.
200    Abstain = 2,
201    /// VOTE_OPTION_NO defines a no vote option.
202    No = 3,
203    /// VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
204    NoWithVeto = 4,
205}
206impl VoteOption {
207    /// String value of the enum field names used in the ProtoBuf definition.
208    ///
209    /// The values are not transformed in any way and thus are considered stable
210    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
211    pub fn as_str_name(&self) -> &'static str {
212        match self {
213            VoteOption::Unspecified => "VOTE_OPTION_UNSPECIFIED",
214            VoteOption::Yes => "VOTE_OPTION_YES",
215            VoteOption::Abstain => "VOTE_OPTION_ABSTAIN",
216            VoteOption::No => "VOTE_OPTION_NO",
217            VoteOption::NoWithVeto => "VOTE_OPTION_NO_WITH_VETO",
218        }
219    }
220    /// Creates an enum from field names used in the ProtoBuf definition.
221    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
222        match value {
223            "VOTE_OPTION_UNSPECIFIED" => Some(Self::Unspecified),
224            "VOTE_OPTION_YES" => Some(Self::Yes),
225            "VOTE_OPTION_ABSTAIN" => Some(Self::Abstain),
226            "VOTE_OPTION_NO" => Some(Self::No),
227            "VOTE_OPTION_NO_WITH_VETO" => Some(Self::NoWithVeto),
228            _ => None,
229        }
230    }
231}
232/// ProposalStatus enumerates the valid statuses of a proposal.
233#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
234#[repr(i32)]
235pub enum ProposalStatus {
236    /// PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
237    Unspecified = 0,
238    /// PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
239    /// period.
240    DepositPeriod = 1,
241    /// PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
242    /// period.
243    VotingPeriod = 2,
244    /// PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
245    /// passed.
246    Passed = 3,
247    /// PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
248    /// been rejected.
249    Rejected = 4,
250    /// PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
251    /// failed.
252    Failed = 5,
253}
254impl ProposalStatus {
255    /// String value of the enum field names used in the ProtoBuf definition.
256    ///
257    /// The values are not transformed in any way and thus are considered stable
258    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
259    pub fn as_str_name(&self) -> &'static str {
260        match self {
261            ProposalStatus::Unspecified => "PROPOSAL_STATUS_UNSPECIFIED",
262            ProposalStatus::DepositPeriod => "PROPOSAL_STATUS_DEPOSIT_PERIOD",
263            ProposalStatus::VotingPeriod => "PROPOSAL_STATUS_VOTING_PERIOD",
264            ProposalStatus::Passed => "PROPOSAL_STATUS_PASSED",
265            ProposalStatus::Rejected => "PROPOSAL_STATUS_REJECTED",
266            ProposalStatus::Failed => "PROPOSAL_STATUS_FAILED",
267        }
268    }
269    /// Creates an enum from field names used in the ProtoBuf definition.
270    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
271        match value {
272            "PROPOSAL_STATUS_UNSPECIFIED" => Some(Self::Unspecified),
273            "PROPOSAL_STATUS_DEPOSIT_PERIOD" => Some(Self::DepositPeriod),
274            "PROPOSAL_STATUS_VOTING_PERIOD" => Some(Self::VotingPeriod),
275            "PROPOSAL_STATUS_PASSED" => Some(Self::Passed),
276            "PROPOSAL_STATUS_REJECTED" => Some(Self::Rejected),
277            "PROPOSAL_STATUS_FAILED" => Some(Self::Failed),
278            _ => None,
279        }
280    }
281}
282/// GenesisState defines the gov module's genesis state.
283#[allow(clippy::derive_partial_eq_without_eq)]
284#[derive(Clone, PartialEq, ::prost::Message)]
285pub struct GenesisState {
286    /// starting_proposal_id is the ID of the starting proposal.
287    #[prost(uint64, tag="1")]
288    pub starting_proposal_id: u64,
289    /// deposits defines all the deposits present at genesis.
290    #[prost(message, repeated, tag="2")]
291    pub deposits: ::prost::alloc::vec::Vec<Deposit>,
292    /// votes defines all the votes present at genesis.
293    #[prost(message, repeated, tag="3")]
294    pub votes: ::prost::alloc::vec::Vec<Vote>,
295    /// proposals defines all the proposals present at genesis.
296    #[prost(message, repeated, tag="4")]
297    pub proposals: ::prost::alloc::vec::Vec<Proposal>,
298    /// Deprecated: Prefer to use `params` instead.
299    /// deposit_params defines all the paramaters of related to deposit.
300    #[deprecated]
301    #[prost(message, optional, tag="5")]
302    pub deposit_params: ::core::option::Option<DepositParams>,
303    /// Deprecated: Prefer to use `params` instead.
304    /// voting_params defines all the paramaters of related to voting.
305    #[deprecated]
306    #[prost(message, optional, tag="6")]
307    pub voting_params: ::core::option::Option<VotingParams>,
308    /// Deprecated: Prefer to use `params` instead.
309    /// tally_params defines all the paramaters of related to tally.
310    #[deprecated]
311    #[prost(message, optional, tag="7")]
312    pub tally_params: ::core::option::Option<TallyParams>,
313    /// params defines all the paramaters of x/gov module.
314    ///
315    /// Since: cosmos-sdk 0.47
316    #[prost(message, optional, tag="8")]
317    pub params: ::core::option::Option<Params>,
318}
319/// QueryProposalRequest is the request type for the Query/Proposal RPC method.
320#[allow(clippy::derive_partial_eq_without_eq)]
321#[derive(Clone, PartialEq, ::prost::Message)]
322pub struct QueryProposalRequest {
323    /// proposal_id defines the unique id of the proposal.
324    #[prost(uint64, tag="1")]
325    pub proposal_id: u64,
326}
327/// QueryProposalResponse is the response type for the Query/Proposal RPC method.
328#[allow(clippy::derive_partial_eq_without_eq)]
329#[derive(Clone, PartialEq, ::prost::Message)]
330pub struct QueryProposalResponse {
331    /// proposal is the requested governance proposal.
332    #[prost(message, optional, tag="1")]
333    pub proposal: ::core::option::Option<Proposal>,
334}
335/// QueryProposalsRequest is the request type for the Query/Proposals RPC method.
336#[allow(clippy::derive_partial_eq_without_eq)]
337#[derive(Clone, PartialEq, ::prost::Message)]
338pub struct QueryProposalsRequest {
339    /// proposal_status defines the status of the proposals.
340    #[prost(enumeration="ProposalStatus", tag="1")]
341    pub proposal_status: i32,
342    /// voter defines the voter address for the proposals.
343    #[prost(string, tag="2")]
344    pub voter: ::prost::alloc::string::String,
345    /// depositor defines the deposit addresses from the proposals.
346    #[prost(string, tag="3")]
347    pub depositor: ::prost::alloc::string::String,
348    /// pagination defines an optional pagination for the request.
349    #[prost(message, optional, tag="4")]
350    pub pagination: ::core::option::Option<crate::proto::cosmos::base::query::v1beta1::PageRequest>,
351}
352/// QueryProposalsResponse is the response type for the Query/Proposals RPC
353/// method.
354#[allow(clippy::derive_partial_eq_without_eq)]
355#[derive(Clone, PartialEq, ::prost::Message)]
356pub struct QueryProposalsResponse {
357    /// proposals defines all the requested governance proposals.
358    #[prost(message, repeated, tag="1")]
359    pub proposals: ::prost::alloc::vec::Vec<Proposal>,
360    /// pagination defines the pagination in the response.
361    #[prost(message, optional, tag="2")]
362    pub pagination: ::core::option::Option<crate::proto::cosmos::base::query::v1beta1::PageResponse>,
363}
364/// QueryVoteRequest is the request type for the Query/Vote RPC method.
365#[allow(clippy::derive_partial_eq_without_eq)]
366#[derive(Clone, PartialEq, ::prost::Message)]
367pub struct QueryVoteRequest {
368    /// proposal_id defines the unique id of the proposal.
369    #[prost(uint64, tag="1")]
370    pub proposal_id: u64,
371    /// voter defines the voter address for the proposals.
372    #[prost(string, tag="2")]
373    pub voter: ::prost::alloc::string::String,
374}
375/// QueryVoteResponse is the response type for the Query/Vote RPC method.
376#[allow(clippy::derive_partial_eq_without_eq)]
377#[derive(Clone, PartialEq, ::prost::Message)]
378pub struct QueryVoteResponse {
379    /// vote defines the queried vote.
380    #[prost(message, optional, tag="1")]
381    pub vote: ::core::option::Option<Vote>,
382}
383/// QueryVotesRequest is the request type for the Query/Votes RPC method.
384#[allow(clippy::derive_partial_eq_without_eq)]
385#[derive(Clone, PartialEq, ::prost::Message)]
386pub struct QueryVotesRequest {
387    /// proposal_id defines the unique id of the proposal.
388    #[prost(uint64, tag="1")]
389    pub proposal_id: u64,
390    /// pagination defines an optional pagination for the request.
391    #[prost(message, optional, tag="2")]
392    pub pagination: ::core::option::Option<crate::proto::cosmos::base::query::v1beta1::PageRequest>,
393}
394/// QueryVotesResponse is the response type for the Query/Votes RPC method.
395#[allow(clippy::derive_partial_eq_without_eq)]
396#[derive(Clone, PartialEq, ::prost::Message)]
397pub struct QueryVotesResponse {
398    /// votes defines the queried votes.
399    #[prost(message, repeated, tag="1")]
400    pub votes: ::prost::alloc::vec::Vec<Vote>,
401    /// pagination defines the pagination in the response.
402    #[prost(message, optional, tag="2")]
403    pub pagination: ::core::option::Option<crate::proto::cosmos::base::query::v1beta1::PageResponse>,
404}
405/// QueryParamsRequest is the request type for the Query/Params RPC method.
406#[allow(clippy::derive_partial_eq_without_eq)]
407#[derive(Clone, PartialEq, ::prost::Message)]
408pub struct QueryParamsRequest {
409    /// params_type defines which parameters to query for, can be one of "voting",
410    /// "tallying" or "deposit".
411    #[prost(string, tag="1")]
412    pub params_type: ::prost::alloc::string::String,
413}
414/// QueryParamsResponse is the response type for the Query/Params RPC method.
415#[allow(clippy::derive_partial_eq_without_eq)]
416#[derive(Clone, PartialEq, ::prost::Message)]
417pub struct QueryParamsResponse {
418    /// Deprecated: Prefer to use `params` instead.
419    /// voting_params defines the parameters related to voting.
420    #[deprecated]
421    #[prost(message, optional, tag="1")]
422    pub voting_params: ::core::option::Option<VotingParams>,
423    /// Deprecated: Prefer to use `params` instead.
424    /// deposit_params defines the parameters related to deposit.
425    #[deprecated]
426    #[prost(message, optional, tag="2")]
427    pub deposit_params: ::core::option::Option<DepositParams>,
428    /// Deprecated: Prefer to use `params` instead.
429    /// tally_params defines the parameters related to tally.
430    #[deprecated]
431    #[prost(message, optional, tag="3")]
432    pub tally_params: ::core::option::Option<TallyParams>,
433    /// params defines all the paramaters of x/gov module.
434    ///
435    /// Since: cosmos-sdk 0.47
436    #[prost(message, optional, tag="4")]
437    pub params: ::core::option::Option<Params>,
438}
439/// QueryDepositRequest is the request type for the Query/Deposit RPC method.
440#[allow(clippy::derive_partial_eq_without_eq)]
441#[derive(Clone, PartialEq, ::prost::Message)]
442pub struct QueryDepositRequest {
443    /// proposal_id defines the unique id of the proposal.
444    #[prost(uint64, tag="1")]
445    pub proposal_id: u64,
446    /// depositor defines the deposit addresses from the proposals.
447    #[prost(string, tag="2")]
448    pub depositor: ::prost::alloc::string::String,
449}
450/// QueryDepositResponse is the response type for the Query/Deposit RPC method.
451#[allow(clippy::derive_partial_eq_without_eq)]
452#[derive(Clone, PartialEq, ::prost::Message)]
453pub struct QueryDepositResponse {
454    /// deposit defines the requested deposit.
455    #[prost(message, optional, tag="1")]
456    pub deposit: ::core::option::Option<Deposit>,
457}
458/// QueryDepositsRequest is the request type for the Query/Deposits RPC method.
459#[allow(clippy::derive_partial_eq_without_eq)]
460#[derive(Clone, PartialEq, ::prost::Message)]
461pub struct QueryDepositsRequest {
462    /// proposal_id defines the unique id of the proposal.
463    #[prost(uint64, tag="1")]
464    pub proposal_id: u64,
465    /// pagination defines an optional pagination for the request.
466    #[prost(message, optional, tag="2")]
467    pub pagination: ::core::option::Option<crate::proto::cosmos::base::query::v1beta1::PageRequest>,
468}
469/// QueryDepositsResponse is the response type for the Query/Deposits RPC method.
470#[allow(clippy::derive_partial_eq_without_eq)]
471#[derive(Clone, PartialEq, ::prost::Message)]
472pub struct QueryDepositsResponse {
473    /// deposits defines the requested deposits.
474    #[prost(message, repeated, tag="1")]
475    pub deposits: ::prost::alloc::vec::Vec<Deposit>,
476    /// pagination defines the pagination in the response.
477    #[prost(message, optional, tag="2")]
478    pub pagination: ::core::option::Option<crate::proto::cosmos::base::query::v1beta1::PageResponse>,
479}
480/// QueryTallyResultRequest is the request type for the Query/Tally RPC method.
481#[allow(clippy::derive_partial_eq_without_eq)]
482#[derive(Clone, PartialEq, ::prost::Message)]
483pub struct QueryTallyResultRequest {
484    /// proposal_id defines the unique id of the proposal.
485    #[prost(uint64, tag="1")]
486    pub proposal_id: u64,
487}
488/// QueryTallyResultResponse is the response type for the Query/Tally RPC method.
489#[allow(clippy::derive_partial_eq_without_eq)]
490#[derive(Clone, PartialEq, ::prost::Message)]
491pub struct QueryTallyResultResponse {
492    /// tally defines the requested tally.
493    #[prost(message, optional, tag="1")]
494    pub tally: ::core::option::Option<TallyResult>,
495}
496/// MsgSubmitProposal defines an sdk.Msg type that supports submitting arbitrary
497/// proposal Content.
498#[allow(clippy::derive_partial_eq_without_eq)]
499#[derive(Clone, PartialEq, ::prost::Message)]
500pub struct MsgSubmitProposal {
501    /// messages are the arbitrary messages to be executed if proposal passes.
502    #[prost(message, repeated, tag="1")]
503    pub messages: ::prost::alloc::vec::Vec<::prost_types::Any>,
504    /// initial_deposit is the deposit value that must be paid at proposal submission.
505    #[prost(message, repeated, tag="2")]
506    pub initial_deposit: ::prost::alloc::vec::Vec<crate::proto::cosmos::base::v1beta1::Coin>,
507    /// proposer is the account address of the proposer.
508    #[prost(string, tag="3")]
509    pub proposer: ::prost::alloc::string::String,
510    /// metadata is any arbitrary metadata attached to the proposal.
511    #[prost(string, tag="4")]
512    pub metadata: ::prost::alloc::string::String,
513    /// title is the title of the proposal.
514    ///
515    /// Since: cosmos-sdk 0.47
516    #[prost(string, tag="5")]
517    pub title: ::prost::alloc::string::String,
518    /// summary is the summary of the proposal
519    ///
520    /// Since: cosmos-sdk 0.47
521    #[prost(string, tag="6")]
522    pub summary: ::prost::alloc::string::String,
523}
524/// MsgSubmitProposalResponse defines the Msg/SubmitProposal response type.
525#[allow(clippy::derive_partial_eq_without_eq)]
526#[derive(Clone, PartialEq, ::prost::Message)]
527pub struct MsgSubmitProposalResponse {
528    /// proposal_id defines the unique id of the proposal.
529    #[prost(uint64, tag="1")]
530    pub proposal_id: u64,
531}
532/// MsgExecLegacyContent is used to wrap the legacy content field into a message.
533/// This ensures backwards compatibility with v1beta1.MsgSubmitProposal.
534#[allow(clippy::derive_partial_eq_without_eq)]
535#[derive(Clone, PartialEq, ::prost::Message)]
536pub struct MsgExecLegacyContent {
537    /// content is the proposal's content.
538    #[prost(message, optional, tag="1")]
539    pub content: ::core::option::Option<::prost_types::Any>,
540    /// authority must be the gov module address.
541    #[prost(string, tag="2")]
542    pub authority: ::prost::alloc::string::String,
543}
544/// MsgExecLegacyContentResponse defines the Msg/ExecLegacyContent response type.
545#[allow(clippy::derive_partial_eq_without_eq)]
546#[derive(Clone, PartialEq, ::prost::Message)]
547pub struct MsgExecLegacyContentResponse {
548}
549/// MsgVote defines a message to cast a vote.
550#[allow(clippy::derive_partial_eq_without_eq)]
551#[derive(Clone, PartialEq, ::prost::Message)]
552pub struct MsgVote {
553    /// proposal_id defines the unique id of the proposal.
554    #[prost(uint64, tag="1")]
555    pub proposal_id: u64,
556    /// voter is the voter address for the proposal.
557    #[prost(string, tag="2")]
558    pub voter: ::prost::alloc::string::String,
559    /// option defines the vote option.
560    #[prost(enumeration="VoteOption", tag="3")]
561    pub option: i32,
562    /// metadata is any arbitrary metadata attached to the Vote.
563    #[prost(string, tag="4")]
564    pub metadata: ::prost::alloc::string::String,
565}
566/// MsgVoteResponse defines the Msg/Vote response type.
567#[allow(clippy::derive_partial_eq_without_eq)]
568#[derive(Clone, PartialEq, ::prost::Message)]
569pub struct MsgVoteResponse {
570}
571/// MsgVoteWeighted defines a message to cast a vote.
572#[allow(clippy::derive_partial_eq_without_eq)]
573#[derive(Clone, PartialEq, ::prost::Message)]
574pub struct MsgVoteWeighted {
575    /// proposal_id defines the unique id of the proposal.
576    #[prost(uint64, tag="1")]
577    pub proposal_id: u64,
578    /// voter is the voter address for the proposal.
579    #[prost(string, tag="2")]
580    pub voter: ::prost::alloc::string::String,
581    /// options defines the weighted vote options.
582    #[prost(message, repeated, tag="3")]
583    pub options: ::prost::alloc::vec::Vec<WeightedVoteOption>,
584    /// metadata is any arbitrary metadata attached to the VoteWeighted.
585    #[prost(string, tag="4")]
586    pub metadata: ::prost::alloc::string::String,
587}
588/// MsgVoteWeightedResponse defines the Msg/VoteWeighted response type.
589#[allow(clippy::derive_partial_eq_without_eq)]
590#[derive(Clone, PartialEq, ::prost::Message)]
591pub struct MsgVoteWeightedResponse {
592}
593/// MsgDeposit defines a message to submit a deposit to an existing proposal.
594#[allow(clippy::derive_partial_eq_without_eq)]
595#[derive(Clone, PartialEq, ::prost::Message)]
596pub struct MsgDeposit {
597    /// proposal_id defines the unique id of the proposal.
598    #[prost(uint64, tag="1")]
599    pub proposal_id: u64,
600    /// depositor defines the deposit addresses from the proposals.
601    #[prost(string, tag="2")]
602    pub depositor: ::prost::alloc::string::String,
603    /// amount to be deposited by depositor.
604    #[prost(message, repeated, tag="3")]
605    pub amount: ::prost::alloc::vec::Vec<crate::proto::cosmos::base::v1beta1::Coin>,
606}
607/// MsgDepositResponse defines the Msg/Deposit response type.
608#[allow(clippy::derive_partial_eq_without_eq)]
609#[derive(Clone, PartialEq, ::prost::Message)]
610pub struct MsgDepositResponse {
611}
612/// MsgUpdateParams is the Msg/UpdateParams request type.
613///
614/// Since: cosmos-sdk 0.47
615#[allow(clippy::derive_partial_eq_without_eq)]
616#[derive(Clone, PartialEq, ::prost::Message)]
617pub struct MsgUpdateParams {
618    /// authority is the address that controls the module (defaults to x/gov unless overwritten).
619    #[prost(string, tag="1")]
620    pub authority: ::prost::alloc::string::String,
621    /// params defines the x/gov parameters to update.
622    ///
623    /// NOTE: All parameters must be supplied.
624    #[prost(message, optional, tag="2")]
625    pub params: ::core::option::Option<Params>,
626}
627/// MsgUpdateParamsResponse defines the response structure for executing a
628/// MsgUpdateParams message.
629///
630/// Since: cosmos-sdk 0.47
631#[allow(clippy::derive_partial_eq_without_eq)]
632#[derive(Clone, PartialEq, ::prost::Message)]
633pub struct MsgUpdateParamsResponse {
634}
635// @@protoc_insertion_point(module)