desmos_bindings/proto/desmos/posts/
v3.rs

1/// Post contains all the information about a single post
2#[allow(clippy::derive_partial_eq_without_eq)]
3#[derive(
4    Clone,
5    PartialEq,
6    ::prost::Message,
7    schemars::JsonSchema,
8    serde::Serialize,
9    serde::Deserialize,
10    desmos_std_derive::CosmwasmExt,
11)]
12#[proto_message(type_url = "/desmos.posts.v3.Post")]
13#[serde(rename_all = "snake_case")]
14pub struct Post {
15    /// Id of the subspace inside which the post has been created
16    #[prost(uint64, tag = "1")]
17    #[serde(
18        serialize_with = "crate::serde::as_str::serialize",
19        deserialize_with = "crate::serde::as_str::deserialize"
20    )]
21    pub subspace_id: u64,
22    /// Id of the section inside which the post has been created
23    #[prost(uint32, tag = "2")]
24    pub section_id: u32,
25    /// Unique id of the post
26    #[prost(uint64, tag = "3")]
27    #[serde(
28        serialize_with = "crate::serde::as_str::serialize",
29        deserialize_with = "crate::serde::as_str::deserialize"
30    )]
31    pub id: u64,
32    /// (optional) External id for this post
33    #[prost(string, tag = "4")]
34    pub external_id: ::prost::alloc::string::String,
35    /// (optional) Text of the post
36    #[prost(string, tag = "5")]
37    pub text: ::prost::alloc::string::String,
38    /// (optional) Entities connected to this post
39    #[prost(message, optional, tag = "6")]
40    pub entities: ::core::option::Option<Entities>,
41    /// Tags related to this post, useful for categorization
42    #[prost(string, repeated, tag = "7")]
43    pub tags: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
44    /// Author of the post
45    #[prost(string, tag = "8")]
46    pub author: ::prost::alloc::string::String,
47    /// (optional) Id of the original post of the conversation
48    #[prost(uint64, tag = "9")]
49    #[serde(
50        serialize_with = "crate::serde::as_str::serialize",
51        deserialize_with = "crate::serde::as_str::deserialize"
52    )]
53    pub conversation_id: u64,
54    /// A list this posts references (either as a reply, repost or quote)
55    #[prost(message, repeated, tag = "10")]
56    pub referenced_posts: ::prost::alloc::vec::Vec<PostReference>,
57    /// Reply settings of this post
58    #[prost(enumeration = "ReplySetting", tag = "11")]
59    #[serde(
60        serialize_with = "ReplySetting::serialize",
61        deserialize_with = "ReplySetting::deserialize"
62    )]
63    pub reply_settings: i32,
64    /// Creation date of the post
65    #[prost(message, optional, tag = "12")]
66    pub creation_date: ::core::option::Option<crate::shim::Timestamp>,
67    /// (optional) Last edited time of the post
68    #[prost(message, optional, tag = "13")]
69    pub last_edited_date: ::core::option::Option<crate::shim::Timestamp>,
70    /// Owner of the post
71    #[prost(string, tag = "14")]
72    pub owner: ::prost::alloc::string::String,
73}
74/// PostReference contains the details of a post reference
75#[allow(clippy::derive_partial_eq_without_eq)]
76#[derive(
77    Clone,
78    PartialEq,
79    ::prost::Message,
80    schemars::JsonSchema,
81    serde::Serialize,
82    serde::Deserialize,
83    desmos_std_derive::CosmwasmExt,
84)]
85#[proto_message(type_url = "/desmos.posts.v3.PostReference")]
86#[serde(rename_all = "snake_case")]
87pub struct PostReference {
88    /// Type of reference
89    #[prost(enumeration = "PostReferenceType", tag = "1")]
90    #[serde(
91        serialize_with = "PostReferenceType::serialize",
92        deserialize_with = "PostReferenceType::deserialize"
93    )]
94    pub r#type: i32,
95    /// Id of the referenced post
96    #[prost(uint64, tag = "2")]
97    #[serde(
98        serialize_with = "crate::serde::as_str::serialize",
99        deserialize_with = "crate::serde::as_str::deserialize"
100    )]
101    pub post_id: u64,
102    /// Position of the reference inside the post's text. This should be used only
103    /// with the type set to TYPE_QUOTE
104    #[prost(uint64, tag = "3")]
105    #[serde(
106        serialize_with = "crate::serde::as_str::serialize",
107        deserialize_with = "crate::serde::as_str::deserialize"
108    )]
109    pub position: u64,
110}
111/// Contains the details of entities parsed out of the post text
112#[allow(clippy::derive_partial_eq_without_eq)]
113#[derive(
114    Clone,
115    PartialEq,
116    ::prost::Message,
117    schemars::JsonSchema,
118    serde::Serialize,
119    serde::Deserialize,
120    desmos_std_derive::CosmwasmExt,
121)]
122#[proto_message(type_url = "/desmos.posts.v3.Entities")]
123#[serde(rename_all = "snake_case")]
124pub struct Entities {
125    /// Hashtags represent inside the post text
126    #[prost(message, repeated, tag = "1")]
127    pub hashtags: ::prost::alloc::vec::Vec<TextTag>,
128    /// Mentions present inside the post text
129    #[prost(message, repeated, tag = "2")]
130    pub mentions: ::prost::alloc::vec::Vec<TextTag>,
131    /// Links present inside the post text
132    #[prost(message, repeated, tag = "3")]
133    pub urls: ::prost::alloc::vec::Vec<Url>,
134}
135/// TextTag represents a tag within the post text
136#[allow(clippy::derive_partial_eq_without_eq)]
137#[derive(
138    Clone,
139    PartialEq,
140    ::prost::Message,
141    schemars::JsonSchema,
142    serde::Serialize,
143    serde::Deserialize,
144    desmos_std_derive::CosmwasmExt,
145)]
146#[proto_message(type_url = "/desmos.posts.v3.TextTag")]
147#[serde(rename_all = "snake_case")]
148pub struct TextTag {
149    /// Index of the character inside the text at which the tag starts
150    #[prost(uint64, tag = "1")]
151    #[serde(
152        serialize_with = "crate::serde::as_str::serialize",
153        deserialize_with = "crate::serde::as_str::deserialize"
154    )]
155    pub start: u64,
156    /// Index of the character inside the text at which the tag ends
157    #[prost(uint64, tag = "2")]
158    #[serde(
159        serialize_with = "crate::serde::as_str::serialize",
160        deserialize_with = "crate::serde::as_str::deserialize"
161    )]
162    pub end: u64,
163    /// Tag reference (user address, hashtag value, etc)
164    #[prost(string, tag = "3")]
165    pub tag: ::prost::alloc::string::String,
166}
167/// Url contains the details of a generic URL
168#[allow(clippy::derive_partial_eq_without_eq)]
169#[derive(
170    Clone,
171    PartialEq,
172    ::prost::Message,
173    schemars::JsonSchema,
174    serde::Serialize,
175    serde::Deserialize,
176    desmos_std_derive::CosmwasmExt,
177)]
178#[proto_message(type_url = "/desmos.posts.v3.Url")]
179#[serde(rename_all = "snake_case")]
180pub struct Url {
181    /// Index of the character inside the text at which the URL starts
182    #[prost(uint64, tag = "1")]
183    #[serde(
184        serialize_with = "crate::serde::as_str::serialize",
185        deserialize_with = "crate::serde::as_str::deserialize"
186    )]
187    pub start: u64,
188    /// Index of the character inside the text at which the URL ends
189    #[prost(uint64, tag = "2")]
190    #[serde(
191        serialize_with = "crate::serde::as_str::serialize",
192        deserialize_with = "crate::serde::as_str::deserialize"
193    )]
194    pub end: u64,
195    /// Value of the URL where the user should be redirected to
196    #[prost(string, tag = "3")]
197    pub url: ::prost::alloc::string::String,
198    /// (optional) Display value of the URL
199    #[prost(string, tag = "4")]
200    pub display_url: ::prost::alloc::string::String,
201}
202/// Attachment contains the data of a single post attachment
203#[allow(clippy::derive_partial_eq_without_eq)]
204#[derive(
205    Clone,
206    PartialEq,
207    ::prost::Message,
208    schemars::JsonSchema,
209    serde::Serialize,
210    serde::Deserialize,
211    desmos_std_derive::CosmwasmExt,
212)]
213#[proto_message(type_url = "/desmos.posts.v3.Attachment")]
214#[serde(rename_all = "snake_case")]
215pub struct Attachment {
216    /// Id of the subspace inside which the post to which this attachment should be
217    /// connected is
218    #[prost(uint64, tag = "1")]
219    #[serde(
220        serialize_with = "crate::serde::as_str::serialize",
221        deserialize_with = "crate::serde::as_str::deserialize"
222    )]
223    pub subspace_id: u64,
224    /// Id of the post to which this attachment should be connected
225    #[prost(uint64, tag = "2")]
226    #[serde(
227        serialize_with = "crate::serde::as_str::serialize",
228        deserialize_with = "crate::serde::as_str::deserialize"
229    )]
230    pub post_id: u64,
231    /// If of this attachment
232    #[prost(uint32, tag = "3")]
233    pub id: u32,
234    /// Content of the attachment
235    #[prost(message, optional, tag = "4")]
236    pub content: ::core::option::Option<crate::shim::Any>,
237}
238/// Media represents a media attachment
239#[allow(clippy::derive_partial_eq_without_eq)]
240#[derive(
241    Clone,
242    PartialEq,
243    ::prost::Message,
244    schemars::JsonSchema,
245    serde::Serialize,
246    serde::Deserialize,
247    desmos_std_derive::CosmwasmExt,
248)]
249#[proto_message(type_url = "/desmos.posts.v3.Media")]
250#[serde(rename_all = "snake_case")]
251pub struct Media {
252    #[prost(string, tag = "2")]
253    pub uri: ::prost::alloc::string::String,
254    #[prost(string, tag = "3")]
255    pub mime_type: ::prost::alloc::string::String,
256}
257/// Poll represents a poll attachment
258#[allow(clippy::derive_partial_eq_without_eq)]
259#[derive(
260    Clone,
261    PartialEq,
262    ::prost::Message,
263    schemars::JsonSchema,
264    serde::Serialize,
265    serde::Deserialize,
266    desmos_std_derive::CosmwasmExt,
267)]
268#[proto_message(type_url = "/desmos.posts.v3.Poll")]
269#[serde(rename_all = "snake_case")]
270pub struct Poll {
271    /// Question of the poll
272    #[prost(string, tag = "1")]
273    pub question: ::prost::alloc::string::String,
274    /// Answers the users can choose from
275    #[prost(message, repeated, tag = "2")]
276    pub provided_answers: ::prost::alloc::vec::Vec<poll::ProvidedAnswer>,
277    /// Date at which the poll will close
278    #[prost(message, optional, tag = "3")]
279    pub end_date: ::core::option::Option<crate::shim::Timestamp>,
280    /// Whether the poll allows multiple choices from the same user or not
281    #[prost(bool, tag = "4")]
282    pub allows_multiple_answers: bool,
283    /// Whether the poll allows to edit an answer or not
284    #[prost(bool, tag = "5")]
285    pub allows_answer_edits: bool,
286    /// Final poll results
287    #[prost(message, optional, tag = "6")]
288    pub final_tally_results: ::core::option::Option<PollTallyResults>,
289}
290/// Nested message and enum types in `Poll`.
291pub mod poll {
292    /// Provided answer contains the details of a possible poll answer
293    #[allow(clippy::derive_partial_eq_without_eq)]
294    #[derive(
295        Clone,
296        PartialEq,
297        ::prost::Message,
298        schemars::JsonSchema,
299        serde::Serialize,
300        serde::Deserialize,
301        desmos_std_derive::CosmwasmExt,
302    )]
303    #[proto_message(type_url = "/desmos.posts.v3.Poll.ProvidedAnswer")]
304    #[serde(rename_all = "snake_case")]
305    pub struct ProvidedAnswer {
306        /// (optional) Text of the answer
307        #[prost(string, tag = "1")]
308        pub text: ::prost::alloc::string::String,
309        /// Content of the attachment
310        #[prost(message, repeated, tag = "2")]
311        pub attachments: ::prost::alloc::vec::Vec<crate::shim::Any>,
312    }
313}
314/// UserAnswer represents a user answer to a poll
315#[allow(clippy::derive_partial_eq_without_eq)]
316#[derive(
317    Clone,
318    PartialEq,
319    ::prost::Message,
320    schemars::JsonSchema,
321    serde::Serialize,
322    serde::Deserialize,
323    desmos_std_derive::CosmwasmExt,
324)]
325#[proto_message(type_url = "/desmos.posts.v3.UserAnswer")]
326#[serde(rename_all = "snake_case")]
327pub struct UserAnswer {
328    /// Subspace id inside which the post related to this attachment is located
329    #[prost(uint64, tag = "1")]
330    #[serde(
331        serialize_with = "crate::serde::as_str::serialize",
332        deserialize_with = "crate::serde::as_str::deserialize"
333    )]
334    pub subspace_id: u64,
335    /// Id of the post associated to this attachment
336    #[prost(uint64, tag = "2")]
337    #[serde(
338        serialize_with = "crate::serde::as_str::serialize",
339        deserialize_with = "crate::serde::as_str::deserialize"
340    )]
341    pub post_id: u64,
342    /// Id of the poll to which this answer is associated
343    #[prost(uint32, tag = "3")]
344    pub poll_id: u32,
345    /// Indexes of the answers inside the ProvidedAnswers array
346    #[prost(uint32, repeated, packed = "false", tag = "4")]
347    pub answers_indexes: ::prost::alloc::vec::Vec<u32>,
348    /// Address of the user answering the poll
349    #[prost(string, tag = "5")]
350    pub user: ::prost::alloc::string::String,
351}
352/// PollTallyResults contains the tally results for a poll
353#[allow(clippy::derive_partial_eq_without_eq)]
354#[derive(
355    Clone,
356    PartialEq,
357    ::prost::Message,
358    schemars::JsonSchema,
359    serde::Serialize,
360    serde::Deserialize,
361    desmos_std_derive::CosmwasmExt,
362)]
363#[proto_message(type_url = "/desmos.posts.v3.PollTallyResults")]
364#[serde(rename_all = "snake_case")]
365pub struct PollTallyResults {
366    #[prost(message, repeated, tag = "1")]
367    pub results: ::prost::alloc::vec::Vec<poll_tally_results::AnswerResult>,
368}
369/// Nested message and enum types in `PollTallyResults`.
370pub mod poll_tally_results {
371    /// AnswerResult contains the result of a single poll provided answer
372    #[allow(clippy::derive_partial_eq_without_eq)]
373    #[derive(
374        Clone,
375        PartialEq,
376        ::prost::Message,
377        schemars::JsonSchema,
378        serde::Serialize,
379        serde::Deserialize,
380        desmos_std_derive::CosmwasmExt,
381    )]
382    #[proto_message(type_url = "/desmos.posts.v3.PollTallyResults.AnswerResult")]
383    #[serde(rename_all = "snake_case")]
384    pub struct AnswerResult {
385        /// Index of the answer inside the poll's ProvidedAnswers slice
386        #[prost(uint32, tag = "1")]
387        pub answer_index: u32,
388        /// Number of votes the answer has received
389        #[prost(uint64, tag = "2")]
390        #[serde(
391            serialize_with = "crate::serde::as_str::serialize",
392            deserialize_with = "crate::serde::as_str::deserialize"
393        )]
394        pub votes: u64,
395    }
396}
397/// Params contains the parameters for the posts module
398#[allow(clippy::derive_partial_eq_without_eq)]
399#[derive(
400    Clone,
401    PartialEq,
402    ::prost::Message,
403    schemars::JsonSchema,
404    serde::Serialize,
405    serde::Deserialize,
406    desmos_std_derive::CosmwasmExt,
407)]
408#[proto_message(type_url = "/desmos.posts.v3.Params")]
409#[serde(rename_all = "snake_case")]
410pub struct Params {
411    /// Maximum length of the post text
412    #[prost(uint32, tag = "1")]
413    pub max_text_length: u32,
414}
415/// PostOwnerTransferRequest represents a request to transfer the ownership of a
416/// post from the sender to the receiver
417#[allow(clippy::derive_partial_eq_without_eq)]
418#[derive(
419    Clone,
420    PartialEq,
421    ::prost::Message,
422    schemars::JsonSchema,
423    serde::Serialize,
424    serde::Deserialize,
425    desmos_std_derive::CosmwasmExt,
426)]
427#[proto_message(type_url = "/desmos.posts.v3.PostOwnerTransferRequest")]
428#[serde(rename_all = "snake_case")]
429pub struct PostOwnerTransferRequest {
430    /// Id of the subspace that holds the post to transfer
431    #[prost(uint64, tag = "1")]
432    #[serde(
433        serialize_with = "crate::serde::as_str::serialize",
434        deserialize_with = "crate::serde::as_str::deserialize"
435    )]
436    pub subspace_id: u64,
437    /// Id of the post which will be transferred
438    #[prost(uint64, tag = "2")]
439    #[serde(
440        serialize_with = "crate::serde::as_str::serialize",
441        deserialize_with = "crate::serde::as_str::deserialize"
442    )]
443    pub post_id: u64,
444    /// Address of the sender
445    #[prost(string, tag = "3")]
446    pub sender: ::prost::alloc::string::String,
447    /// Address of the receiver
448    #[prost(string, tag = "4")]
449    pub receiver: ::prost::alloc::string::String,
450}
451/// PostReferenceType represents the different types of references
452#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
453#[repr(i32)]
454#[derive(strum_macros::FromRepr, serde::Serialize, serde::Deserialize, schemars::JsonSchema)]
455#[serde(rename_all = "snake_case")]
456pub enum PostReferenceType {
457    /// No reference specified
458    Unspecified = 0,
459    /// This reference represents a reply to the specified post
460    Reply = 1,
461    /// This reference represents a quote of the specified post
462    Quote = 2,
463    /// This reference represents a repost of the specified post
464    Repost = 3,
465}
466impl PostReferenceType {
467    /// String value of the enum field names used in the ProtoBuf definition.
468    ///
469    /// The values are not transformed in any way and thus are considered stable
470    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
471    pub fn as_str_name(&self) -> &'static str {
472        match self {
473            PostReferenceType::Unspecified => "POST_REFERENCE_TYPE_UNSPECIFIED",
474            PostReferenceType::Reply => "POST_REFERENCE_TYPE_REPLY",
475            PostReferenceType::Quote => "POST_REFERENCE_TYPE_QUOTE",
476            PostReferenceType::Repost => "POST_REFERENCE_TYPE_REPOST",
477        }
478    }
479    /// Creates an enum from field names used in the ProtoBuf definition.
480    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
481        match value {
482            "POST_REFERENCE_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
483            "POST_REFERENCE_TYPE_REPLY" => Some(Self::Reply),
484            "POST_REFERENCE_TYPE_QUOTE" => Some(Self::Quote),
485            "POST_REFERENCE_TYPE_REPOST" => Some(Self::Repost),
486            _ => None,
487        }
488    }
489    pub fn serialize<S>(v: &i32, serializer: S) -> std::result::Result<S::Ok, S::Error>
490    where
491        S: serde::Serializer,
492    {
493        let enum_value = Self::from_repr(*v);
494        match enum_value {
495            Some(v) => serializer.serialize_str(v.as_str_name()),
496            None => Err(serde::ser::Error::custom("unknown value")),
497        }
498    }
499    pub fn deserialize<'de, D>(deserializer: D) -> std::result::Result<i32, D::Error>
500    where
501        D: serde::Deserializer<'de>,
502    {
503        use serde::de::Deserialize;
504        let s = String::deserialize(deserializer)?;
505        match Self::from_str_name(&s) {
506            Some(v) => Ok(v.into()),
507            None => Err(serde::de::Error::custom("unknown value")),
508        }
509    }
510}
511/// ReplySetting contains the possible reply settings that a post can have
512#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
513#[repr(i32)]
514#[derive(strum_macros::FromRepr, serde::Serialize, serde::Deserialize, schemars::JsonSchema)]
515#[serde(rename_all = "snake_case")]
516pub enum ReplySetting {
517    /// No reply setting specified
518    Unspecified = 0,
519    /// Everyone will be able to reply to this post
520    Everyone = 1,
521    /// Only followers of the author will be able to reply to this post
522    Followers = 2,
523    /// Only the author mutual followers will be able to reply to this post
524    Mutual = 3,
525    /// Only people mentioned inside this post will be able to reply
526    Mentions = 4,
527}
528impl ReplySetting {
529    /// String value of the enum field names used in the ProtoBuf definition.
530    ///
531    /// The values are not transformed in any way and thus are considered stable
532    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
533    pub fn as_str_name(&self) -> &'static str {
534        match self {
535            ReplySetting::Unspecified => "REPLY_SETTING_UNSPECIFIED",
536            ReplySetting::Everyone => "REPLY_SETTING_EVERYONE",
537            ReplySetting::Followers => "REPLY_SETTING_FOLLOWERS",
538            ReplySetting::Mutual => "REPLY_SETTING_MUTUAL",
539            ReplySetting::Mentions => "REPLY_SETTING_MENTIONS",
540        }
541    }
542    /// Creates an enum from field names used in the ProtoBuf definition.
543    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
544        match value {
545            "REPLY_SETTING_UNSPECIFIED" => Some(Self::Unspecified),
546            "REPLY_SETTING_EVERYONE" => Some(Self::Everyone),
547            "REPLY_SETTING_FOLLOWERS" => Some(Self::Followers),
548            "REPLY_SETTING_MUTUAL" => Some(Self::Mutual),
549            "REPLY_SETTING_MENTIONS" => Some(Self::Mentions),
550            _ => None,
551        }
552    }
553    pub fn serialize<S>(v: &i32, serializer: S) -> std::result::Result<S::Ok, S::Error>
554    where
555        S: serde::Serializer,
556    {
557        let enum_value = Self::from_repr(*v);
558        match enum_value {
559            Some(v) => serializer.serialize_str(v.as_str_name()),
560            None => Err(serde::ser::Error::custom("unknown value")),
561        }
562    }
563    pub fn deserialize<'de, D>(deserializer: D) -> std::result::Result<i32, D::Error>
564    where
565        D: serde::Deserializer<'de>,
566    {
567        use serde::de::Deserialize;
568        let s = String::deserialize(deserializer)?;
569        match Self::from_str_name(&s) {
570            Some(v) => Ok(v.into()),
571            None => Err(serde::de::Error::custom("unknown value")),
572        }
573    }
574}
575/// GenesisState contains the data of the genesis state for the posts module
576#[allow(clippy::derive_partial_eq_without_eq)]
577#[derive(
578    Clone,
579    PartialEq,
580    ::prost::Message,
581    schemars::JsonSchema,
582    serde::Serialize,
583    serde::Deserialize,
584    desmos_std_derive::CosmwasmExt,
585)]
586#[proto_message(type_url = "/desmos.posts.v3.GenesisState")]
587#[serde(rename_all = "snake_case")]
588pub struct GenesisState {
589    #[prost(message, repeated, tag = "1")]
590    pub subspaces_data: ::prost::alloc::vec::Vec<SubspaceDataEntry>,
591    #[prost(message, repeated, tag = "2")]
592    pub posts_data: ::prost::alloc::vec::Vec<PostDataEntry>,
593    #[prost(message, repeated, tag = "3")]
594    pub posts: ::prost::alloc::vec::Vec<Post>,
595    #[prost(message, repeated, tag = "4")]
596    pub attachments: ::prost::alloc::vec::Vec<Attachment>,
597    #[prost(message, repeated, tag = "5")]
598    pub active_polls: ::prost::alloc::vec::Vec<ActivePollData>,
599    #[prost(message, repeated, tag = "6")]
600    pub user_answers: ::prost::alloc::vec::Vec<UserAnswer>,
601    #[prost(message, optional, tag = "7")]
602    pub params: ::core::option::Option<Params>,
603    #[prost(message, repeated, tag = "8")]
604    pub post_owner_transfer_requests: ::prost::alloc::vec::Vec<PostOwnerTransferRequest>,
605}
606/// SubspaceDataEntry contains the data for a given subspace
607#[allow(clippy::derive_partial_eq_without_eq)]
608#[derive(
609    Clone,
610    PartialEq,
611    ::prost::Message,
612    schemars::JsonSchema,
613    serde::Serialize,
614    serde::Deserialize,
615    desmos_std_derive::CosmwasmExt,
616)]
617#[proto_message(type_url = "/desmos.posts.v3.SubspaceDataEntry")]
618#[serde(rename_all = "snake_case")]
619pub struct SubspaceDataEntry {
620    #[prost(uint64, tag = "1")]
621    #[serde(
622        serialize_with = "crate::serde::as_str::serialize",
623        deserialize_with = "crate::serde::as_str::deserialize"
624    )]
625    pub subspace_id: u64,
626    #[prost(uint64, tag = "2")]
627    #[serde(
628        serialize_with = "crate::serde::as_str::serialize",
629        deserialize_with = "crate::serde::as_str::deserialize"
630    )]
631    pub initial_post_id: u64,
632}
633/// PostDataEntry contains the data of a given post
634#[allow(clippy::derive_partial_eq_without_eq)]
635#[derive(
636    Clone,
637    PartialEq,
638    ::prost::Message,
639    schemars::JsonSchema,
640    serde::Serialize,
641    serde::Deserialize,
642    desmos_std_derive::CosmwasmExt,
643)]
644#[proto_message(type_url = "/desmos.posts.v3.PostDataEntry")]
645#[serde(rename_all = "snake_case")]
646pub struct PostDataEntry {
647    #[prost(uint64, tag = "1")]
648    #[serde(
649        serialize_with = "crate::serde::as_str::serialize",
650        deserialize_with = "crate::serde::as_str::deserialize"
651    )]
652    pub subspace_id: u64,
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 post_id: u64,
659    #[prost(uint32, tag = "3")]
660    pub initial_attachment_id: u32,
661}
662/// ActivePollData contains the data of an active poll
663#[allow(clippy::derive_partial_eq_without_eq)]
664#[derive(
665    Clone,
666    PartialEq,
667    ::prost::Message,
668    schemars::JsonSchema,
669    serde::Serialize,
670    serde::Deserialize,
671    desmos_std_derive::CosmwasmExt,
672)]
673#[proto_message(type_url = "/desmos.posts.v3.ActivePollData")]
674#[serde(rename_all = "snake_case")]
675pub struct ActivePollData {
676    #[prost(uint64, tag = "1")]
677    #[serde(
678        serialize_with = "crate::serde::as_str::serialize",
679        deserialize_with = "crate::serde::as_str::deserialize"
680    )]
681    pub subspace_id: u64,
682    #[prost(uint64, tag = "2")]
683    #[serde(
684        serialize_with = "crate::serde::as_str::serialize",
685        deserialize_with = "crate::serde::as_str::deserialize"
686    )]
687    pub post_id: u64,
688    #[prost(uint32, tag = "3")]
689    pub poll_id: u32,
690    #[prost(message, optional, tag = "4")]
691    pub end_date: ::core::option::Option<crate::shim::Timestamp>,
692}
693/// MsgCreatePost represents the message to be used to create a post.
694#[allow(clippy::derive_partial_eq_without_eq)]
695#[derive(
696    Clone,
697    PartialEq,
698    ::prost::Message,
699    schemars::JsonSchema,
700    serde::Serialize,
701    serde::Deserialize,
702    desmos_std_derive::CosmwasmExt,
703)]
704#[proto_message(type_url = "/desmos.posts.v3.MsgCreatePost")]
705#[serde(rename_all = "snake_case")]
706pub struct MsgCreatePost {
707    /// Id of the subspace inside which the post must be created
708    #[prost(uint64, tag = "1")]
709    #[serde(
710        serialize_with = "crate::serde::as_str::serialize",
711        deserialize_with = "crate::serde::as_str::deserialize"
712    )]
713    pub subspace_id: u64,
714    /// Id of the section inside which the post must be created
715    #[prost(uint32, tag = "2")]
716    pub section_id: u32,
717    /// (optional) External id for this post
718    #[prost(string, tag = "3")]
719    pub external_id: ::prost::alloc::string::String,
720    /// (optional) Text of the post
721    #[prost(string, tag = "4")]
722    pub text: ::prost::alloc::string::String,
723    /// (optional) Entities connected to this post
724    #[prost(message, optional, tag = "5")]
725    pub entities: ::core::option::Option<Entities>,
726    /// Tags connected to this post
727    #[prost(string, repeated, tag = "6")]
728    pub tags: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
729    /// Attachments of the post
730    #[prost(message, repeated, tag = "7")]
731    pub attachments: ::prost::alloc::vec::Vec<crate::shim::Any>,
732    /// Author of the post
733    #[prost(string, tag = "8")]
734    pub author: ::prost::alloc::string::String,
735    /// (optional) Id of the original post of the conversation
736    #[prost(uint64, tag = "9")]
737    #[serde(
738        serialize_with = "crate::serde::as_str::serialize",
739        deserialize_with = "crate::serde::as_str::deserialize"
740    )]
741    pub conversation_id: u64,
742    /// Reply settings of this post
743    #[prost(enumeration = "ReplySetting", tag = "10")]
744    #[serde(
745        serialize_with = "ReplySetting::serialize",
746        deserialize_with = "ReplySetting::deserialize"
747    )]
748    pub reply_settings: i32,
749    /// A list this posts references (either as a reply, repost or quote)
750    #[prost(message, repeated, tag = "11")]
751    pub referenced_posts: ::prost::alloc::vec::Vec<PostReference>,
752}
753/// MsgCreatePostResponse defines the Msg/CreatePost response type.
754#[allow(clippy::derive_partial_eq_without_eq)]
755#[derive(
756    Clone,
757    PartialEq,
758    ::prost::Message,
759    schemars::JsonSchema,
760    serde::Serialize,
761    serde::Deserialize,
762    desmos_std_derive::CosmwasmExt,
763)]
764#[proto_message(type_url = "/desmos.posts.v3.MsgCreatePostResponse")]
765#[serde(rename_all = "snake_case")]
766pub struct MsgCreatePostResponse {
767    /// Id of the newly created post
768    #[prost(uint64, tag = "1")]
769    #[serde(
770        serialize_with = "crate::serde::as_str::serialize",
771        deserialize_with = "crate::serde::as_str::deserialize"
772    )]
773    pub post_id: u64,
774    /// Creation date of the post
775    #[prost(message, optional, tag = "2")]
776    pub creation_date: ::core::option::Option<crate::shim::Timestamp>,
777}
778/// MsgEditPost represents the message to be used to edit a post.
779#[allow(clippy::derive_partial_eq_without_eq)]
780#[derive(
781    Clone,
782    PartialEq,
783    ::prost::Message,
784    schemars::JsonSchema,
785    serde::Serialize,
786    serde::Deserialize,
787    desmos_std_derive::CosmwasmExt,
788)]
789#[proto_message(type_url = "/desmos.posts.v3.MsgEditPost")]
790#[serde(rename_all = "snake_case")]
791pub struct MsgEditPost {
792    /// Id of the subspace inside which the post is
793    #[prost(uint64, tag = "1")]
794    #[serde(
795        serialize_with = "crate::serde::as_str::serialize",
796        deserialize_with = "crate::serde::as_str::deserialize"
797    )]
798    pub subspace_id: u64,
799    /// Id of the post to edit
800    #[prost(uint64, tag = "2")]
801    #[serde(
802        serialize_with = "crate::serde::as_str::serialize",
803        deserialize_with = "crate::serde::as_str::deserialize"
804    )]
805    pub post_id: u64,
806    /// New text of the post. If set to \[do-not-modify\] it will change the current
807    /// post's text.
808    #[prost(string, tag = "3")]
809    pub text: ::prost::alloc::string::String,
810    /// New entities connected to this post. These will always replace the current
811    /// post's entities
812    #[prost(message, optional, tag = "4")]
813    pub entities: ::core::option::Option<Entities>,
814    /// New tags connected to this post. These will always replace the current
815    /// post's tags
816    #[prost(string, repeated, tag = "5")]
817    pub tags: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
818    /// Editor of the post
819    #[prost(string, tag = "6")]
820    pub editor: ::prost::alloc::string::String,
821}
822/// MsgCreatePostResponse defines the Msg/EditPost response type.
823#[allow(clippy::derive_partial_eq_without_eq)]
824#[derive(
825    Clone,
826    PartialEq,
827    ::prost::Message,
828    schemars::JsonSchema,
829    serde::Serialize,
830    serde::Deserialize,
831    desmos_std_derive::CosmwasmExt,
832)]
833#[proto_message(type_url = "/desmos.posts.v3.MsgEditPostResponse")]
834#[serde(rename_all = "snake_case")]
835pub struct MsgEditPostResponse {
836    /// Edit date of the post
837    #[prost(message, optional, tag = "1")]
838    pub edit_date: ::core::option::Option<crate::shim::Timestamp>,
839}
840/// MsgDeletePost represents the message used when deleting a post.
841#[allow(clippy::derive_partial_eq_without_eq)]
842#[derive(
843    Clone,
844    PartialEq,
845    ::prost::Message,
846    schemars::JsonSchema,
847    serde::Serialize,
848    serde::Deserialize,
849    desmos_std_derive::CosmwasmExt,
850)]
851#[proto_message(type_url = "/desmos.posts.v3.MsgDeletePost")]
852#[serde(rename_all = "snake_case")]
853pub struct MsgDeletePost {
854    /// Id of the subspace containing the post
855    #[prost(uint64, tag = "1")]
856    #[serde(
857        serialize_with = "crate::serde::as_str::serialize",
858        deserialize_with = "crate::serde::as_str::deserialize"
859    )]
860    pub subspace_id: u64,
861    /// Id of the post to be deleted
862    #[prost(uint64, tag = "2")]
863    #[serde(
864        serialize_with = "crate::serde::as_str::serialize",
865        deserialize_with = "crate::serde::as_str::deserialize"
866    )]
867    pub post_id: u64,
868    /// User that is deleting the post
869    #[prost(string, tag = "3")]
870    pub signer: ::prost::alloc::string::String,
871}
872/// MsgDeletePostResponse represents the Msg/DeletePost response type
873#[allow(clippy::derive_partial_eq_without_eq)]
874#[derive(
875    Clone,
876    PartialEq,
877    ::prost::Message,
878    schemars::JsonSchema,
879    serde::Serialize,
880    serde::Deserialize,
881    desmos_std_derive::CosmwasmExt,
882)]
883#[proto_message(type_url = "/desmos.posts.v3.MsgDeletePostResponse")]
884#[serde(rename_all = "snake_case")]
885pub struct MsgDeletePostResponse {}
886/// MsgAddPostAttachment represents the message that should be
887/// used when adding an attachment to post
888#[allow(clippy::derive_partial_eq_without_eq)]
889#[derive(
890    Clone,
891    PartialEq,
892    ::prost::Message,
893    schemars::JsonSchema,
894    serde::Serialize,
895    serde::Deserialize,
896    desmos_std_derive::CosmwasmExt,
897)]
898#[proto_message(type_url = "/desmos.posts.v3.MsgAddPostAttachment")]
899#[serde(rename_all = "snake_case")]
900pub struct MsgAddPostAttachment {
901    /// Id of the subspace containing the post
902    #[prost(uint64, tag = "1")]
903    #[serde(
904        serialize_with = "crate::serde::as_str::serialize",
905        deserialize_with = "crate::serde::as_str::deserialize"
906    )]
907    pub subspace_id: u64,
908    /// Id of the post to which to add the attachment
909    #[prost(uint64, tag = "2")]
910    #[serde(
911        serialize_with = "crate::serde::as_str::serialize",
912        deserialize_with = "crate::serde::as_str::deserialize"
913    )]
914    pub post_id: u64,
915    /// Content of the attachment
916    #[prost(message, optional, tag = "3")]
917    pub content: ::core::option::Option<crate::shim::Any>,
918    /// Editor of the post
919    #[prost(string, tag = "4")]
920    pub editor: ::prost::alloc::string::String,
921}
922/// MsgAddPostAttachmentResponse defines the Msg/AddPostAttachment response type.
923#[allow(clippy::derive_partial_eq_without_eq)]
924#[derive(
925    Clone,
926    PartialEq,
927    ::prost::Message,
928    schemars::JsonSchema,
929    serde::Serialize,
930    serde::Deserialize,
931    desmos_std_derive::CosmwasmExt,
932)]
933#[proto_message(type_url = "/desmos.posts.v3.MsgAddPostAttachmentResponse")]
934#[serde(rename_all = "snake_case")]
935pub struct MsgAddPostAttachmentResponse {
936    /// New id of the uploaded attachment
937    #[prost(uint32, tag = "1")]
938    pub attachment_id: u32,
939    /// Edit date of the post
940    #[prost(message, optional, tag = "2")]
941    pub edit_date: ::core::option::Option<crate::shim::Timestamp>,
942}
943/// MsgRemovePostAttachment represents the message to be used when
944/// removing an attachment from a post
945#[allow(clippy::derive_partial_eq_without_eq)]
946#[derive(
947    Clone,
948    PartialEq,
949    ::prost::Message,
950    schemars::JsonSchema,
951    serde::Serialize,
952    serde::Deserialize,
953    desmos_std_derive::CosmwasmExt,
954)]
955#[proto_message(type_url = "/desmos.posts.v3.MsgRemovePostAttachment")]
956#[serde(rename_all = "snake_case")]
957pub struct MsgRemovePostAttachment {
958    /// Id of the subspace containing the post
959    #[prost(uint64, tag = "1")]
960    #[serde(
961        serialize_with = "crate::serde::as_str::serialize",
962        deserialize_with = "crate::serde::as_str::deserialize"
963    )]
964    pub subspace_id: u64,
965    /// Id of the post from which to remove the attachment
966    #[prost(uint64, tag = "2")]
967    #[serde(
968        serialize_with = "crate::serde::as_str::serialize",
969        deserialize_with = "crate::serde::as_str::deserialize"
970    )]
971    pub post_id: u64,
972    /// Id of the attachment to be removed
973    #[prost(uint32, tag = "3")]
974    pub attachment_id: u32,
975    /// User that is removing the attachment
976    #[prost(string, tag = "4")]
977    pub editor: ::prost::alloc::string::String,
978}
979/// MsgRemovePostAttachmentResponse defines the
980/// Msg/RemovePostAttachment response type.
981#[allow(clippy::derive_partial_eq_without_eq)]
982#[derive(
983    Clone,
984    PartialEq,
985    ::prost::Message,
986    schemars::JsonSchema,
987    serde::Serialize,
988    serde::Deserialize,
989    desmos_std_derive::CosmwasmExt,
990)]
991#[proto_message(type_url = "/desmos.posts.v3.MsgRemovePostAttachmentResponse")]
992#[serde(rename_all = "snake_case")]
993pub struct MsgRemovePostAttachmentResponse {
994    /// Edit date of the post
995    #[prost(message, optional, tag = "1")]
996    pub edit_date: ::core::option::Option<crate::shim::Timestamp>,
997}
998/// MsgAnswerPoll represents the message used to answer a poll
999#[allow(clippy::derive_partial_eq_without_eq)]
1000#[derive(
1001    Clone,
1002    PartialEq,
1003    ::prost::Message,
1004    schemars::JsonSchema,
1005    serde::Serialize,
1006    serde::Deserialize,
1007    desmos_std_derive::CosmwasmExt,
1008)]
1009#[proto_message(type_url = "/desmos.posts.v3.MsgAnswerPoll")]
1010#[serde(rename_all = "snake_case")]
1011pub struct MsgAnswerPoll {
1012    /// Id of the subspace containing the post
1013    #[prost(uint64, tag = "1")]
1014    #[serde(
1015        serialize_with = "crate::serde::as_str::serialize",
1016        deserialize_with = "crate::serde::as_str::deserialize"
1017    )]
1018    pub subspace_id: u64,
1019    /// Id of the post that contains the poll to be answered
1020    #[prost(uint64, tag = "2")]
1021    #[serde(
1022        serialize_with = "crate::serde::as_str::serialize",
1023        deserialize_with = "crate::serde::as_str::deserialize"
1024    )]
1025    pub post_id: u64,
1026    /// Id of the poll to be answered
1027    #[prost(uint32, tag = "3")]
1028    pub poll_id: u32,
1029    /// Indexes of the answer inside the ProvidedAnswers array
1030    #[prost(uint32, repeated, packed = "false", tag = "4")]
1031    pub answers_indexes: ::prost::alloc::vec::Vec<u32>,
1032    /// Address of the user answering the poll
1033    #[prost(string, tag = "5")]
1034    pub signer: ::prost::alloc::string::String,
1035}
1036/// MsgAnswerPollResponse represents the MSg/AnswerPoll response type
1037#[allow(clippy::derive_partial_eq_without_eq)]
1038#[derive(
1039    Clone,
1040    PartialEq,
1041    ::prost::Message,
1042    schemars::JsonSchema,
1043    serde::Serialize,
1044    serde::Deserialize,
1045    desmos_std_derive::CosmwasmExt,
1046)]
1047#[proto_message(type_url = "/desmos.posts.v3.MsgAnswerPollResponse")]
1048#[serde(rename_all = "snake_case")]
1049pub struct MsgAnswerPollResponse {}
1050/// MsgUpdateParams is the Msg/UpdateParams request type.
1051///
1052/// Since: Desmos 5.0.0
1053#[allow(clippy::derive_partial_eq_without_eq)]
1054#[derive(
1055    Clone,
1056    PartialEq,
1057    ::prost::Message,
1058    schemars::JsonSchema,
1059    serde::Serialize,
1060    serde::Deserialize,
1061    desmos_std_derive::CosmwasmExt,
1062)]
1063#[proto_message(type_url = "/desmos.posts.v3.MsgUpdateParams")]
1064#[serde(rename_all = "snake_case")]
1065pub struct MsgUpdateParams {
1066    /// authority is the address that controls the module (defaults to x/gov unless
1067    /// overwritten).
1068    #[prost(string, tag = "1")]
1069    pub authority: ::prost::alloc::string::String,
1070    /// params defines the parameters to update.
1071    ///
1072    /// NOTE: All parameters must be supplied.
1073    #[prost(message, optional, tag = "2")]
1074    pub params: ::core::option::Option<Params>,
1075}
1076/// MsgUpdateParamsResponse defines the response structure for executing a
1077/// MsgUpdateParams message.
1078///
1079/// Since: Desmos 5.0.0
1080#[allow(clippy::derive_partial_eq_without_eq)]
1081#[derive(
1082    Clone,
1083    PartialEq,
1084    ::prost::Message,
1085    schemars::JsonSchema,
1086    serde::Serialize,
1087    serde::Deserialize,
1088    desmos_std_derive::CosmwasmExt,
1089)]
1090#[proto_message(type_url = "/desmos.posts.v3.MsgUpdateParamsResponse")]
1091#[serde(rename_all = "snake_case")]
1092pub struct MsgUpdateParamsResponse {}
1093/// MsgMovePost moves a post to another subspace
1094///
1095/// Since: Desmos 6.0.0
1096#[allow(clippy::derive_partial_eq_without_eq)]
1097#[derive(
1098    Clone,
1099    PartialEq,
1100    ::prost::Message,
1101    schemars::JsonSchema,
1102    serde::Serialize,
1103    serde::Deserialize,
1104    desmos_std_derive::CosmwasmExt,
1105)]
1106#[proto_message(type_url = "/desmos.posts.v3.MsgMovePost")]
1107#[serde(rename_all = "snake_case")]
1108pub struct MsgMovePost {
1109    /// Id of the subspace where the post is currently located
1110    #[prost(uint64, tag = "1")]
1111    #[serde(
1112        serialize_with = "crate::serde::as_str::serialize",
1113        deserialize_with = "crate::serde::as_str::deserialize"
1114    )]
1115    pub subspace_id: u64,
1116    /// Id of the post to be moved
1117    #[prost(uint64, tag = "2")]
1118    #[serde(
1119        serialize_with = "crate::serde::as_str::serialize",
1120        deserialize_with = "crate::serde::as_str::deserialize"
1121    )]
1122    pub post_id: u64,
1123    /// Id of the target subspace to which the post will be moved
1124    #[prost(uint64, tag = "3")]
1125    #[serde(
1126        serialize_with = "crate::serde::as_str::serialize",
1127        deserialize_with = "crate::serde::as_str::deserialize"
1128    )]
1129    pub target_subspace_id: u64,
1130    /// Id of the target section to which the post will be moved
1131    #[prost(uint32, tag = "4")]
1132    pub target_section_id: u32,
1133    /// Address of the post owner
1134    #[prost(string, tag = "5")]
1135    pub owner: ::prost::alloc::string::String,
1136}
1137/// MsgMovePostResponse defines the Msg/MsgMovePost response type
1138///
1139/// Since: Desmos 6.0.0
1140#[allow(clippy::derive_partial_eq_without_eq)]
1141#[derive(
1142    Clone,
1143    PartialEq,
1144    ::prost::Message,
1145    schemars::JsonSchema,
1146    serde::Serialize,
1147    serde::Deserialize,
1148    desmos_std_derive::CosmwasmExt,
1149)]
1150#[proto_message(type_url = "/desmos.posts.v3.MsgMovePostResponse")]
1151#[serde(rename_all = "snake_case")]
1152pub struct MsgMovePostResponse {
1153    /// New id of the post in the target subspace
1154    #[prost(uint64, tag = "1")]
1155    #[serde(
1156        serialize_with = "crate::serde::as_str::serialize",
1157        deserialize_with = "crate::serde::as_str::deserialize"
1158    )]
1159    pub post_id: u64,
1160}
1161/// MsgRequestPostOwnerTransfer represent a message used to transfer a post
1162/// ownership to receiver
1163///
1164/// Since: Desmos 6.0.0
1165#[allow(clippy::derive_partial_eq_without_eq)]
1166#[derive(
1167    Clone,
1168    PartialEq,
1169    ::prost::Message,
1170    schemars::JsonSchema,
1171    serde::Serialize,
1172    serde::Deserialize,
1173    desmos_std_derive::CosmwasmExt,
1174)]
1175#[proto_message(type_url = "/desmos.posts.v3.MsgRequestPostOwnerTransfer")]
1176#[serde(rename_all = "snake_case")]
1177pub struct MsgRequestPostOwnerTransfer {
1178    /// Id of the subspace that holds the post which ownership should be transfered
1179    #[prost(uint64, tag = "1")]
1180    #[serde(
1181        serialize_with = "crate::serde::as_str::serialize",
1182        deserialize_with = "crate::serde::as_str::deserialize"
1183    )]
1184    pub subspace_id: u64,
1185    /// Id of the post which will be transferred
1186    #[prost(uint64, tag = "2")]
1187    #[serde(
1188        serialize_with = "crate::serde::as_str::serialize",
1189        deserialize_with = "crate::serde::as_str::deserialize"
1190    )]
1191    pub post_id: u64,
1192    /// Address of the post ownership receiver
1193    #[prost(string, tag = "3")]
1194    pub receiver: ::prost::alloc::string::String,
1195    /// Address of the sender who is creating a transfer request
1196    #[prost(string, tag = "4")]
1197    pub sender: ::prost::alloc::string::String,
1198}
1199/// MsgRequestPostOwnerTransferResponse defines the Msg/RequestPostOwnerTransfer
1200/// response type
1201///
1202/// Since: Desmos 6.0.0
1203#[allow(clippy::derive_partial_eq_without_eq)]
1204#[derive(
1205    Clone,
1206    PartialEq,
1207    ::prost::Message,
1208    schemars::JsonSchema,
1209    serde::Serialize,
1210    serde::Deserialize,
1211    desmos_std_derive::CosmwasmExt,
1212)]
1213#[proto_message(type_url = "/desmos.posts.v3.MsgRequestPostOwnerTransferResponse")]
1214#[serde(rename_all = "snake_case")]
1215pub struct MsgRequestPostOwnerTransferResponse {}
1216/// MsgCancelPostOwnerTransferRequest represents a message used to cancel a
1217/// outgoing post transfer request
1218///
1219/// Since: Desmos 6.0.0
1220#[allow(clippy::derive_partial_eq_without_eq)]
1221#[derive(
1222    Clone,
1223    PartialEq,
1224    ::prost::Message,
1225    schemars::JsonSchema,
1226    serde::Serialize,
1227    serde::Deserialize,
1228    desmos_std_derive::CosmwasmExt,
1229)]
1230#[proto_message(type_url = "/desmos.posts.v3.MsgCancelPostOwnerTransferRequest")]
1231#[serde(rename_all = "snake_case")]
1232pub struct MsgCancelPostOwnerTransferRequest {
1233    /// Id of the subspace that holds the post for which the request should be
1234    /// canceled
1235    #[prost(uint64, tag = "1")]
1236    #[serde(
1237        serialize_with = "crate::serde::as_str::serialize",
1238        deserialize_with = "crate::serde::as_str::deserialize"
1239    )]
1240    pub subspace_id: u64,
1241    /// Id of the post for which the request will be cancelled
1242    #[prost(uint64, tag = "2")]
1243    #[serde(
1244        serialize_with = "crate::serde::as_str::serialize",
1245        deserialize_with = "crate::serde::as_str::deserialize"
1246    )]
1247    pub post_id: u64,
1248    /// Address of the transfer request sender
1249    #[prost(string, tag = "3")]
1250    pub sender: ::prost::alloc::string::String,
1251}
1252/// MsgCancelPostOwnerTransferRequestResponse defines the
1253/// Msg/CancelPostOwnerTransferRequest response type
1254///
1255/// Since: Desmos 6.0.0
1256#[allow(clippy::derive_partial_eq_without_eq)]
1257#[derive(
1258    Clone,
1259    PartialEq,
1260    ::prost::Message,
1261    schemars::JsonSchema,
1262    serde::Serialize,
1263    serde::Deserialize,
1264    desmos_std_derive::CosmwasmExt,
1265)]
1266#[proto_message(type_url = "/desmos.posts.v3.MsgCancelPostOwnerTransferRequestResponse")]
1267#[serde(rename_all = "snake_case")]
1268pub struct MsgCancelPostOwnerTransferRequestResponse {}
1269/// MsgAcceptPostOwnerTransferRequest represents a message used to accept a
1270/// incoming post transfer request
1271///
1272/// Since: Desmos 6.0.0
1273#[allow(clippy::derive_partial_eq_without_eq)]
1274#[derive(
1275    Clone,
1276    PartialEq,
1277    ::prost::Message,
1278    schemars::JsonSchema,
1279    serde::Serialize,
1280    serde::Deserialize,
1281    desmos_std_derive::CosmwasmExt,
1282)]
1283#[proto_message(type_url = "/desmos.posts.v3.MsgAcceptPostOwnerTransferRequest")]
1284#[serde(rename_all = "snake_case")]
1285pub struct MsgAcceptPostOwnerTransferRequest {
1286    /// Id of the subspace holding the post for which the request will be accepted
1287    #[prost(uint64, tag = "1")]
1288    #[serde(
1289        serialize_with = "crate::serde::as_str::serialize",
1290        deserialize_with = "crate::serde::as_str::deserialize"
1291    )]
1292    pub subspace_id: u64,
1293    /// Id of the post for which the request will be accepted
1294    #[prost(uint64, tag = "2")]
1295    #[serde(
1296        serialize_with = "crate::serde::as_str::serialize",
1297        deserialize_with = "crate::serde::as_str::deserialize"
1298    )]
1299    pub post_id: u64,
1300    /// Address of the request receiver
1301    #[prost(string, tag = "3")]
1302    pub receiver: ::prost::alloc::string::String,
1303}
1304/// MsgAcceptPostOwnerTransferRequestResponse defines the
1305/// Msg/AcceptPostOwnerTransferRequest response type
1306///
1307/// Since: Desmos 6.0.0
1308#[allow(clippy::derive_partial_eq_without_eq)]
1309#[derive(
1310    Clone,
1311    PartialEq,
1312    ::prost::Message,
1313    schemars::JsonSchema,
1314    serde::Serialize,
1315    serde::Deserialize,
1316    desmos_std_derive::CosmwasmExt,
1317)]
1318#[proto_message(type_url = "/desmos.posts.v3.MsgAcceptPostOwnerTransferRequestResponse")]
1319#[serde(rename_all = "snake_case")]
1320pub struct MsgAcceptPostOwnerTransferRequestResponse {}
1321/// MsgRefusePostOwnerTransferRequest represents a message used to refuse a
1322/// incoming post transfer request
1323///
1324/// Since: Desmos 6.0.0
1325#[allow(clippy::derive_partial_eq_without_eq)]
1326#[derive(
1327    Clone,
1328    PartialEq,
1329    ::prost::Message,
1330    schemars::JsonSchema,
1331    serde::Serialize,
1332    serde::Deserialize,
1333    desmos_std_derive::CosmwasmExt,
1334)]
1335#[proto_message(type_url = "/desmos.posts.v3.MsgRefusePostOwnerTransferRequest")]
1336#[serde(rename_all = "snake_case")]
1337pub struct MsgRefusePostOwnerTransferRequest {
1338    /// Id of the subspace holding the post for which the request will be refused
1339    #[prost(uint64, tag = "1")]
1340    #[serde(
1341        serialize_with = "crate::serde::as_str::serialize",
1342        deserialize_with = "crate::serde::as_str::deserialize"
1343    )]
1344    pub subspace_id: u64,
1345    /// Id of the post for which the request will be refused
1346    #[prost(uint64, tag = "2")]
1347    #[serde(
1348        serialize_with = "crate::serde::as_str::serialize",
1349        deserialize_with = "crate::serde::as_str::deserialize"
1350    )]
1351    pub post_id: u64,
1352    /// Address of the request receiver
1353    #[prost(string, tag = "3")]
1354    pub receiver: ::prost::alloc::string::String,
1355}
1356/// MsgRefusePostOwnerTransferRequest defines the
1357/// Msg/RefusePostOwnerTransferRequest response type
1358///
1359/// Since: Desmos 6.0.0
1360#[allow(clippy::derive_partial_eq_without_eq)]
1361#[derive(
1362    Clone,
1363    PartialEq,
1364    ::prost::Message,
1365    schemars::JsonSchema,
1366    serde::Serialize,
1367    serde::Deserialize,
1368    desmos_std_derive::CosmwasmExt,
1369)]
1370#[proto_message(type_url = "/desmos.posts.v3.MsgRefusePostOwnerTransferRequestResponse")]
1371#[serde(rename_all = "snake_case")]
1372pub struct MsgRefusePostOwnerTransferRequestResponse {}
1373/// QuerySubspacePostsRequest is the request type for the Query/SubspacePosts RPC
1374/// method
1375#[allow(clippy::derive_partial_eq_without_eq)]
1376#[derive(
1377    Clone,
1378    PartialEq,
1379    ::prost::Message,
1380    schemars::JsonSchema,
1381    serde::Serialize,
1382    serde::Deserialize,
1383    desmos_std_derive::CosmwasmExt,
1384)]
1385#[proto_message(type_url = "/desmos.posts.v3.QuerySubspacePostsRequest")]
1386#[serde(rename_all = "snake_case")]
1387#[proto_query(
1388    path = "/desmos.posts.v3.Query/SubspacePosts",
1389    response_type = QuerySubspacePostsResponse
1390)]
1391pub struct QuerySubspacePostsRequest {
1392    /// Id of the subspace to query the posts for
1393    #[prost(uint64, tag = "1")]
1394    #[serde(
1395        serialize_with = "crate::serde::as_str::serialize",
1396        deserialize_with = "crate::serde::as_str::deserialize"
1397    )]
1398    pub subspace_id: u64,
1399    /// pagination defines an optional pagination for the request.
1400    #[prost(message, optional, tag = "2")]
1401    pub pagination:
1402        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageRequest>,
1403}
1404/// QuerySubspacePostsResponse is the response type for the Query/SubspacePosts
1405/// RPC method
1406#[allow(clippy::derive_partial_eq_without_eq)]
1407#[derive(
1408    Clone,
1409    PartialEq,
1410    ::prost::Message,
1411    schemars::JsonSchema,
1412    serde::Serialize,
1413    serde::Deserialize,
1414    desmos_std_derive::CosmwasmExt,
1415)]
1416#[proto_message(type_url = "/desmos.posts.v3.QuerySubspacePostsResponse")]
1417#[serde(rename_all = "snake_case")]
1418pub struct QuerySubspacePostsResponse {
1419    #[prost(message, repeated, tag = "1")]
1420    pub posts: ::prost::alloc::vec::Vec<Post>,
1421    #[prost(message, optional, tag = "2")]
1422    pub pagination:
1423        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageResponse>,
1424}
1425/// QuerySectionPostsRequest is the request type for the Query/SectionPosts RPC
1426/// method
1427#[allow(clippy::derive_partial_eq_without_eq)]
1428#[derive(
1429    Clone,
1430    PartialEq,
1431    ::prost::Message,
1432    schemars::JsonSchema,
1433    serde::Serialize,
1434    serde::Deserialize,
1435    desmos_std_derive::CosmwasmExt,
1436)]
1437#[proto_message(type_url = "/desmos.posts.v3.QuerySectionPostsRequest")]
1438#[serde(rename_all = "snake_case")]
1439#[proto_query(
1440    path = "/desmos.posts.v3.Query/SectionPosts",
1441    response_type = QuerySectionPostsResponse
1442)]
1443pub struct QuerySectionPostsRequest {
1444    /// Id of the subspace to query the posts for
1445    #[prost(uint64, tag = "1")]
1446    #[serde(
1447        serialize_with = "crate::serde::as_str::serialize",
1448        deserialize_with = "crate::serde::as_str::deserialize"
1449    )]
1450    pub subspace_id: u64,
1451    /// Id of the section to query the posts for
1452    #[prost(uint32, tag = "2")]
1453    pub section_id: u32,
1454    /// pagination defines an optional pagination for the request.
1455    #[prost(message, optional, tag = "3")]
1456    pub pagination:
1457        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageRequest>,
1458}
1459/// QuerySectionPostsResponse is the response type for the Query/SectionPosts RPC
1460/// method
1461#[allow(clippy::derive_partial_eq_without_eq)]
1462#[derive(
1463    Clone,
1464    PartialEq,
1465    ::prost::Message,
1466    schemars::JsonSchema,
1467    serde::Serialize,
1468    serde::Deserialize,
1469    desmos_std_derive::CosmwasmExt,
1470)]
1471#[proto_message(type_url = "/desmos.posts.v3.QuerySectionPostsResponse")]
1472#[serde(rename_all = "snake_case")]
1473pub struct QuerySectionPostsResponse {
1474    #[prost(message, repeated, tag = "1")]
1475    pub posts: ::prost::alloc::vec::Vec<Post>,
1476    #[prost(message, optional, tag = "2")]
1477    pub pagination:
1478        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageResponse>,
1479}
1480/// QueryPostRequest is the request type for the Query/Post RPC method
1481#[allow(clippy::derive_partial_eq_without_eq)]
1482#[derive(
1483    Clone,
1484    PartialEq,
1485    ::prost::Message,
1486    schemars::JsonSchema,
1487    serde::Serialize,
1488    serde::Deserialize,
1489    desmos_std_derive::CosmwasmExt,
1490)]
1491#[proto_message(type_url = "/desmos.posts.v3.QueryPostRequest")]
1492#[serde(rename_all = "snake_case")]
1493#[proto_query(path = "/desmos.posts.v3.Query/Post", response_type = QueryPostResponse)]
1494pub struct QueryPostRequest {
1495    /// Id of the subspace inside which the post lies
1496    #[prost(uint64, tag = "1")]
1497    #[serde(
1498        serialize_with = "crate::serde::as_str::serialize",
1499        deserialize_with = "crate::serde::as_str::deserialize"
1500    )]
1501    pub subspace_id: u64,
1502    /// Id of the post to query for
1503    #[prost(uint64, tag = "2")]
1504    #[serde(
1505        serialize_with = "crate::serde::as_str::serialize",
1506        deserialize_with = "crate::serde::as_str::deserialize"
1507    )]
1508    pub post_id: u64,
1509}
1510/// QueryPostResponse is the response type for the Query/Post RPC method
1511#[allow(clippy::derive_partial_eq_without_eq)]
1512#[derive(
1513    Clone,
1514    PartialEq,
1515    ::prost::Message,
1516    schemars::JsonSchema,
1517    serde::Serialize,
1518    serde::Deserialize,
1519    desmos_std_derive::CosmwasmExt,
1520)]
1521#[proto_message(type_url = "/desmos.posts.v3.QueryPostResponse")]
1522#[serde(rename_all = "snake_case")]
1523pub struct QueryPostResponse {
1524    #[prost(message, optional, tag = "1")]
1525    pub post: ::core::option::Option<Post>,
1526}
1527/// QueryPostsRequest is the request type for the Query/PostAttachments RPC
1528/// method
1529#[allow(clippy::derive_partial_eq_without_eq)]
1530#[derive(
1531    Clone,
1532    PartialEq,
1533    ::prost::Message,
1534    schemars::JsonSchema,
1535    serde::Serialize,
1536    serde::Deserialize,
1537    desmos_std_derive::CosmwasmExt,
1538)]
1539#[proto_message(type_url = "/desmos.posts.v3.QueryPostAttachmentsRequest")]
1540#[serde(rename_all = "snake_case")]
1541#[proto_query(
1542    path = "/desmos.posts.v3.Query/PostAttachments",
1543    response_type = QueryPostAttachmentsResponse
1544)]
1545pub struct QueryPostAttachmentsRequest {
1546    /// Id of the subspace where the post is stored
1547    #[prost(uint64, tag = "1")]
1548    #[serde(
1549        serialize_with = "crate::serde::as_str::serialize",
1550        deserialize_with = "crate::serde::as_str::deserialize"
1551    )]
1552    pub subspace_id: u64,
1553    /// Id of the post to query the attachments for
1554    #[prost(uint64, tag = "2")]
1555    #[serde(
1556        serialize_with = "crate::serde::as_str::serialize",
1557        deserialize_with = "crate::serde::as_str::deserialize"
1558    )]
1559    pub post_id: u64,
1560    /// pagination defines an optional pagination for the request.
1561    #[prost(message, optional, tag = "3")]
1562    pub pagination:
1563        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageRequest>,
1564}
1565/// QueryPostAttachmentsResponse is the response type for the
1566/// Query/PostAttachments RPC method
1567#[allow(clippy::derive_partial_eq_without_eq)]
1568#[derive(
1569    Clone,
1570    PartialEq,
1571    ::prost::Message,
1572    schemars::JsonSchema,
1573    serde::Serialize,
1574    serde::Deserialize,
1575    desmos_std_derive::CosmwasmExt,
1576)]
1577#[proto_message(type_url = "/desmos.posts.v3.QueryPostAttachmentsResponse")]
1578#[serde(rename_all = "snake_case")]
1579pub struct QueryPostAttachmentsResponse {
1580    #[prost(message, repeated, tag = "1")]
1581    pub attachments: ::prost::alloc::vec::Vec<Attachment>,
1582    #[prost(message, optional, tag = "2")]
1583    pub pagination:
1584        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageResponse>,
1585}
1586/// QueryPollAnswersRequest is the request type for the Query/PollAnswers RPC
1587/// method
1588#[allow(clippy::derive_partial_eq_without_eq)]
1589#[derive(
1590    Clone,
1591    PartialEq,
1592    ::prost::Message,
1593    schemars::JsonSchema,
1594    serde::Serialize,
1595    serde::Deserialize,
1596    desmos_std_derive::CosmwasmExt,
1597)]
1598#[proto_message(type_url = "/desmos.posts.v3.QueryPollAnswersRequest")]
1599#[serde(rename_all = "snake_case")]
1600#[proto_query(
1601    path = "/desmos.posts.v3.Query/PollAnswers",
1602    response_type = QueryPollAnswersResponse
1603)]
1604pub struct QueryPollAnswersRequest {
1605    /// Id of the subspace where the post is stored
1606    #[prost(uint64, tag = "1")]
1607    #[serde(
1608        serialize_with = "crate::serde::as_str::serialize",
1609        deserialize_with = "crate::serde::as_str::deserialize"
1610    )]
1611    pub subspace_id: u64,
1612    /// Id of the post that holds the poll
1613    #[prost(uint64, tag = "2")]
1614    #[serde(
1615        serialize_with = "crate::serde::as_str::serialize",
1616        deserialize_with = "crate::serde::as_str::deserialize"
1617    )]
1618    pub post_id: u64,
1619    /// Id of the poll to query the answers for
1620    #[prost(uint32, tag = "3")]
1621    pub poll_id: u32,
1622    /// (Optional) Address of the user to query the responses for
1623    #[prost(string, tag = "4")]
1624    pub user: ::prost::alloc::string::String,
1625    /// pagination defines an optional pagination for the request.
1626    #[prost(message, optional, tag = "5")]
1627    pub pagination:
1628        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageRequest>,
1629}
1630/// QueryPollAnswersResponse is the response type for the Query/PollAnswers RPC
1631/// method
1632#[allow(clippy::derive_partial_eq_without_eq)]
1633#[derive(
1634    Clone,
1635    PartialEq,
1636    ::prost::Message,
1637    schemars::JsonSchema,
1638    serde::Serialize,
1639    serde::Deserialize,
1640    desmos_std_derive::CosmwasmExt,
1641)]
1642#[proto_message(type_url = "/desmos.posts.v3.QueryPollAnswersResponse")]
1643#[serde(rename_all = "snake_case")]
1644pub struct QueryPollAnswersResponse {
1645    #[prost(message, repeated, tag = "1")]
1646    pub answers: ::prost::alloc::vec::Vec<UserAnswer>,
1647    #[prost(message, optional, tag = "2")]
1648    pub pagination:
1649        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageResponse>,
1650}
1651/// QueryParamsRequest is the request type for the Query/Params RPC method
1652#[allow(clippy::derive_partial_eq_without_eq)]
1653#[derive(
1654    Clone,
1655    PartialEq,
1656    ::prost::Message,
1657    schemars::JsonSchema,
1658    serde::Serialize,
1659    serde::Deserialize,
1660    desmos_std_derive::CosmwasmExt,
1661)]
1662#[proto_message(type_url = "/desmos.posts.v3.QueryParamsRequest")]
1663#[serde(rename_all = "snake_case")]
1664#[proto_query(
1665    path = "/desmos.posts.v3.Query/Params",
1666    response_type = QueryParamsResponse
1667)]
1668pub struct QueryParamsRequest {}
1669/// QueryParamsResponse is the response type for the Query/Params RPC method
1670#[allow(clippy::derive_partial_eq_without_eq)]
1671#[derive(
1672    Clone,
1673    PartialEq,
1674    ::prost::Message,
1675    schemars::JsonSchema,
1676    serde::Serialize,
1677    serde::Deserialize,
1678    desmos_std_derive::CosmwasmExt,
1679)]
1680#[proto_message(type_url = "/desmos.posts.v3.QueryParamsResponse")]
1681#[serde(rename_all = "snake_case")]
1682pub struct QueryParamsResponse {
1683    #[prost(message, optional, tag = "1")]
1684    pub params: ::core::option::Option<Params>,
1685}
1686/// QueryIncomingPostOwnerTransferRequestsRequest is the request type for the
1687/// Query/IncomingPostOwnerTransferRequests RPC endpoint
1688#[allow(clippy::derive_partial_eq_without_eq)]
1689#[derive(
1690    Clone,
1691    PartialEq,
1692    ::prost::Message,
1693    schemars::JsonSchema,
1694    serde::Serialize,
1695    serde::Deserialize,
1696    desmos_std_derive::CosmwasmExt,
1697)]
1698#[proto_message(type_url = "/desmos.posts.v3.QueryIncomingPostOwnerTransferRequestsRequest")]
1699#[serde(rename_all = "snake_case")]
1700#[proto_query(
1701    path = "/desmos.posts.v3.Query/IncomingPostOwnerTransferRequests",
1702    response_type = QueryIncomingPostOwnerTransferRequestsResponse
1703)]
1704pub struct QueryIncomingPostOwnerTransferRequestsRequest {
1705    /// Id of the subspace where the requests are stored
1706    #[prost(uint64, tag = "1")]
1707    #[serde(
1708        serialize_with = "crate::serde::as_str::serialize",
1709        deserialize_with = "crate::serde::as_str::deserialize"
1710    )]
1711    pub subspace_id: u64,
1712    /// (optional) Receiver represents the address of the user to which query the
1713    /// incoming requests for
1714    #[prost(string, tag = "2")]
1715    pub receiver: ::prost::alloc::string::String,
1716    /// Pagination defines an optional pagination for the request
1717    #[prost(message, optional, tag = "3")]
1718    pub pagination:
1719        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageRequest>,
1720}
1721/// QueryIncomingPostOwnerTransferRequestsResponse is the response type for the
1722/// Query/IncomingPostOwnerTransferRequests RPC method.
1723#[allow(clippy::derive_partial_eq_without_eq)]
1724#[derive(
1725    Clone,
1726    PartialEq,
1727    ::prost::Message,
1728    schemars::JsonSchema,
1729    serde::Serialize,
1730    serde::Deserialize,
1731    desmos_std_derive::CosmwasmExt,
1732)]
1733#[proto_message(type_url = "/desmos.posts.v3.QueryIncomingPostOwnerTransferRequestsResponse")]
1734#[serde(rename_all = "snake_case")]
1735pub struct QueryIncomingPostOwnerTransferRequestsResponse {
1736    /// Requests represent the list of all the post owner transfer requests made
1737    /// towards the receiver
1738    #[prost(message, repeated, tag = "1")]
1739    pub requests: ::prost::alloc::vec::Vec<PostOwnerTransferRequest>,
1740    /// Pagination defines the pagination response
1741    #[prost(message, optional, tag = "2")]
1742    pub pagination:
1743        ::core::option::Option<super::super::super::cosmos::base::query::v1beta1::PageResponse>,
1744}
1745pub struct PostsQuerier<'a, Q: cosmwasm_std::CustomQuery> {
1746    querier: &'a cosmwasm_std::QuerierWrapper<'a, Q>,
1747}
1748impl<'a, Q: cosmwasm_std::CustomQuery> PostsQuerier<'a, Q> {
1749    pub fn new(querier: &'a cosmwasm_std::QuerierWrapper<'a, Q>) -> Self {
1750        Self { querier }
1751    }
1752    pub fn subspace_posts(
1753        &self,
1754        subspace_id: u64,
1755        pagination: ::core::option::Option<
1756            super::super::super::cosmos::base::query::v1beta1::PageRequest,
1757        >,
1758    ) -> std::result::Result<QuerySubspacePostsResponse, cosmwasm_std::StdError> {
1759        QuerySubspacePostsRequest {
1760            subspace_id,
1761            pagination,
1762        }
1763        .query(self.querier)
1764    }
1765    pub fn section_posts(
1766        &self,
1767        subspace_id: u64,
1768        section_id: u32,
1769        pagination: ::core::option::Option<
1770            super::super::super::cosmos::base::query::v1beta1::PageRequest,
1771        >,
1772    ) -> std::result::Result<QuerySectionPostsResponse, cosmwasm_std::StdError> {
1773        QuerySectionPostsRequest {
1774            subspace_id,
1775            section_id,
1776            pagination,
1777        }
1778        .query(self.querier)
1779    }
1780    pub fn post(
1781        &self,
1782        subspace_id: u64,
1783        post_id: u64,
1784    ) -> std::result::Result<QueryPostResponse, cosmwasm_std::StdError> {
1785        QueryPostRequest {
1786            subspace_id,
1787            post_id,
1788        }
1789        .query(self.querier)
1790    }
1791    pub fn post_attachments(
1792        &self,
1793        subspace_id: u64,
1794        post_id: u64,
1795        pagination: ::core::option::Option<
1796            super::super::super::cosmos::base::query::v1beta1::PageRequest,
1797        >,
1798    ) -> std::result::Result<QueryPostAttachmentsResponse, cosmwasm_std::StdError> {
1799        QueryPostAttachmentsRequest {
1800            subspace_id,
1801            post_id,
1802            pagination,
1803        }
1804        .query(self.querier)
1805    }
1806    pub fn poll_answers(
1807        &self,
1808        subspace_id: u64,
1809        post_id: u64,
1810        poll_id: u32,
1811        user: ::prost::alloc::string::String,
1812        pagination: ::core::option::Option<
1813            super::super::super::cosmos::base::query::v1beta1::PageRequest,
1814        >,
1815    ) -> std::result::Result<QueryPollAnswersResponse, cosmwasm_std::StdError> {
1816        QueryPollAnswersRequest {
1817            subspace_id,
1818            post_id,
1819            poll_id,
1820            user,
1821            pagination,
1822        }
1823        .query(self.querier)
1824    }
1825    pub fn params(&self) -> std::result::Result<QueryParamsResponse, cosmwasm_std::StdError> {
1826        QueryParamsRequest {}.query(self.querier)
1827    }
1828    pub fn incoming_post_owner_transfer_requests(
1829        &self,
1830        subspace_id: u64,
1831        receiver: ::prost::alloc::string::String,
1832        pagination: ::core::option::Option<
1833            super::super::super::cosmos::base::query::v1beta1::PageRequest,
1834        >,
1835    ) -> std::result::Result<QueryIncomingPostOwnerTransferRequestsResponse, cosmwasm_std::StdError>
1836    {
1837        QueryIncomingPostOwnerTransferRequestsRequest {
1838            subspace_id,
1839            receiver,
1840            pagination,
1841        }
1842        .query(self.querier)
1843    }
1844}