diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0e85b6b
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,12 @@
+vue/node_modules
+vue/dist
+release/
+.vscode/
+.DS_Store
+build/
+.galactica/
+
+# Make sure that each team member have the same LICENSING/COPYRIGHT settings.
+.idea/*
+!.idea/copyright/
+!.idea/scopes/
diff --git a/.idea/copyright/Apache_2_0.xml b/.idea/copyright/Apache_2_0.xml
new file mode 100644
index 0000000..7e318ec
--- /dev/null
+++ b/.idea/copyright/Apache_2_0.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/copyright/GNU_LGPL_3_0.xml b/.idea/copyright/GNU_LGPL_3_0.xml
new file mode 100644
index 0000000..0def3a9
--- /dev/null
+++ b/.idea/copyright/GNU_LGPL_3_0.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml
new file mode 100644
index 0000000..050f5a3
--- /dev/null
+++ b/.idea/copyright/profiles_settings.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/scopes/Modified_EVMOS_source.xml b/.idea/scopes/Modified_EVMOS_source.xml
new file mode 100644
index 0000000..2c97af2
--- /dev/null
+++ b/.idea/scopes/Modified_EVMOS_source.xml
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..f288702
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,674 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc.
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C)
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see .
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ Copyright (C)
+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+.
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+.
diff --git a/COPYING.LESSER b/COPYING.LESSER
new file mode 100644
index 0000000..0a04128
--- /dev/null
+++ b/COPYING.LESSER
@@ -0,0 +1,165 @@
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc.
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+
+ This version of the GNU Lesser General Public License incorporates
+the terms and conditions of version 3 of the GNU General Public
+License, supplemented by the additional permissions listed below.
+
+ 0. Additional Definitions.
+
+ As used herein, "this License" refers to version 3 of the GNU Lesser
+General Public License, and the "GNU GPL" refers to version 3 of the GNU
+General Public License.
+
+ "The Library" refers to a covered work governed by this License,
+other than an Application or a Combined Work as defined below.
+
+ An "Application" is any work that makes use of an interface provided
+by the Library, but which is not otherwise based on the Library.
+Defining a subclass of a class defined by the Library is deemed a mode
+of using an interface provided by the Library.
+
+ A "Combined Work" is a work produced by combining or linking an
+Application with the Library. The particular version of the Library
+with which the Combined Work was made is also called the "Linked
+Version".
+
+ The "Minimal Corresponding Source" for a Combined Work means the
+Corresponding Source for the Combined Work, excluding any source code
+for portions of the Combined Work that, considered in isolation, are
+based on the Application, and not on the Linked Version.
+
+ The "Corresponding Application Code" for a Combined Work means the
+object code and/or source code for the Application, including any data
+and utility programs needed for reproducing the Combined Work from the
+Application, but excluding the System Libraries of the Combined Work.
+
+ 1. Exception to Section 3 of the GNU GPL.
+
+ You may convey a covered work under sections 3 and 4 of this License
+without being bound by section 3 of the GNU GPL.
+
+ 2. Conveying Modified Versions.
+
+ If you modify a copy of the Library, and, in your modifications, a
+facility refers to a function or data to be supplied by an Application
+that uses the facility (other than as an argument passed when the
+facility is invoked), then you may convey a copy of the modified
+version:
+
+ a) under this License, provided that you make a good faith effort to
+ ensure that, in the event an Application does not supply the
+ function or data, the facility still operates, and performs
+ whatever part of its purpose remains meaningful, or
+
+ b) under the GNU GPL, with none of the additional permissions of
+ this License applicable to that copy.
+
+ 3. Object Code Incorporating Material from Library Header Files.
+
+ The object code form of an Application may incorporate material from
+a header file that is part of the Library. You may convey such object
+code under terms of your choice, provided that, if the incorporated
+material is not limited to numerical parameters, data structure
+layouts and accessors, or small macros, inline functions and templates
+(ten or fewer lines in length), you do both of the following:
+
+ a) Give prominent notice with each copy of the object code that the
+ Library is used in it and that the Library and its use are
+ covered by this License.
+
+ b) Accompany the object code with a copy of the GNU GPL and this license
+ document.
+
+ 4. Combined Works.
+
+ You may convey a Combined Work under terms of your choice that,
+taken together, effectively do not restrict modification of the
+portions of the Library contained in the Combined Work and reverse
+engineering for debugging such modifications, if you also do each of
+the following:
+
+ a) Give prominent notice with each copy of the Combined Work that
+ the Library is used in it and that the Library and its use are
+ covered by this License.
+
+ b) Accompany the Combined Work with a copy of the GNU GPL and this license
+ document.
+
+ c) For a Combined Work that displays copyright notices during
+ execution, include the copyright notice for the Library among
+ these notices, as well as a reference directing the user to the
+ copies of the GNU GPL and this license document.
+
+ d) Do one of the following:
+
+ 0) Convey the Minimal Corresponding Source under the terms of this
+ License, and the Corresponding Application Code in a form
+ suitable for, and under terms that permit, the user to
+ recombine or relink the Application with a modified version of
+ the Linked Version to produce a modified Combined Work, in the
+ manner specified by section 6 of the GNU GPL for conveying
+ Corresponding Source.
+
+ 1) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (a) uses at run time
+ a copy of the Library already present on the user's computer
+ system, and (b) will operate properly with a modified version
+ of the Library that is interface-compatible with the Linked
+ Version.
+
+ e) Provide Installation Information, but only if you would otherwise
+ be required to provide such information under section 6 of the
+ GNU GPL, and only to the extent that such information is
+ necessary to install and execute a modified version of the
+ Combined Work produced by recombining or relinking the
+ Application with a modified version of the Linked Version. (If
+ you use option 4d0, the Installation Information must accompany
+ the Minimal Corresponding Source and Corresponding Application
+ Code. If you use option 4d1, you must provide the Installation
+ Information in the manner specified by section 6 of the GNU GPL
+ for conveying Corresponding Source.)
+
+ 5. Combined Libraries.
+
+ You may place library facilities that are a work based on the
+Library side by side in a single library together with other library
+facilities that are not Applications and are not covered by this
+License, and convey such a combined library under terms of your
+choice, if you do both of the following:
+
+ a) Accompany the combined library with a copy of the same work based
+ on the Library, uncombined with any other library facilities,
+ conveyed under the terms of this License.
+
+ b) Give prominent notice with the combined library that part of it
+ is a work based on the Library, and explaining where to find the
+ accompanying uncombined form of the same work.
+
+ 6. Revised Versions of the GNU Lesser General Public License.
+
+ The Free Software Foundation may publish revised and/or new versions
+of the GNU Lesser General Public License from time to time. Such new
+versions will be similar in spirit to the present version, but may
+differ in detail to address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Library as you received it specifies that a certain numbered version
+of the GNU Lesser General Public License "or any later version"
+applies to it, you have the option of following the terms and
+conditions either of that published version or of any later version
+published by the Free Software Foundation. If the Library as you
+received it does not specify a version number of the GNU Lesser
+General Public License, you may choose any version of the GNU Lesser
+General Public License ever published by the Free Software Foundation.
+
+ If the Library as you received it specifies that a proxy can decide
+whether future versions of the GNU Lesser General Public License shall
+apply, that proxy's public statement of acceptance of any version is
+permanent authorization for you to choose that version for the
+Library.
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..261eeb9
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..2bad045
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,141 @@
+#!/usr/bin/make -f
+
+VERSION ?= $(shell echo $(shell git describe --tags `git rev-list --tags="v*" --max-count=1`) | sed 's/^v//')
+TMVERSION := $(shell go list -m github.com/cometbft/cometbft | sed 's:.* ::')
+COMMIT := $(shell git log -1 --format='%H')
+LEDGER_ENABLED ?= true
+BINDIR ?= $(GOPATH)/bin
+GALACTICA_BINARY = galacticad
+BUILDDIR ?= $(CURDIR)/build
+
+
+# RocksDB is a native dependency, so we don't assume the library is installed.
+# Instead, it must be explicitly enabled and we warn when it is not.
+ENABLE_ROCKSDB ?= false
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY: default_target build
+
+# process build tags
+
+build_tags = netgo
+ifeq ($(LEDGER_ENABLED),true)
+ ifeq ($(OS),Windows_NT)
+ GCCEXE = $(shell where gcc.exe 2> NUL)
+ ifeq ($(GCCEXE),)
+ $(error gcc.exe not installed for ledger support, please install or set LEDGER_ENABLED=false)
+ else
+ build_tags += ledger
+ endif
+ else
+ UNAME_S = $(shell uname -s)
+ ifeq ($(UNAME_S),OpenBSD)
+ $(warning OpenBSD detected, disabling ledger support (https://github.com/cosmos/cosmos-sdk/issues/1988))
+ else
+ GCC = $(shell command -v gcc 2> /dev/null)
+ ifeq ($(GCC),)
+ $(error gcc not installed for ledger support, please install or set LEDGER_ENABLED=false)
+ else
+ build_tags += ledger
+ endif
+ endif
+ endif
+endif
+
+build_tags += $(BUILD_TAGS)
+build_tags := $(strip $(build_tags))
+
+whitespace :=
+whitespace += $(whitespace)
+comma := ,
+build_tags_comma_sep := $(subst $(whitespace),$(comma),$(build_tags))
+
+# process linker flags
+
+ldflags = -X github.com/Galactica-corp/galactica/version.Name=galactica \
+ -X github.com/Galactica-corp/galactica/version.AppName=$(GALACTICA_BINARY) \
+ -X github.com/Galactica-corp/galactica/version.Version=$(VERSION) \
+ -X github.com/Galactica-corp/galactica/version.Commit=$(COMMIT) \
+ -X "github.com/Galactica-corp/galactica/version.BuildTags=$(build_tags_comma_sep)" \
+ -X github.com/evmos/ethermint/version.TMCoreSemVer=$(TMVERSION)
+
+ifeq ($(ENABLE_ROCKSDB),true)
+ BUILD_TAGS += rocksdb_build
+ test_tags += rocksdb_build
+endif
+
+# DB backend selection
+ifeq (cleveldb,$(findstring cleveldb,$(COSMOS_BUILD_OPTIONS)))
+ BUILD_TAGS += gcc
+endif
+ifeq (badgerdb,$(findstring badgerdb,$(COSMOS_BUILD_OPTIONS)))
+ BUILD_TAGS += badgerdb
+endif
+# handle rocksdb
+ifeq (rocksdb,$(findstring rocksdb,$(COSMOS_BUILD_OPTIONS)))
+ ifneq ($(ENABLE_ROCKSDB),true)
+ $(error Cannot use RocksDB backend unless ENABLE_ROCKSDB=true)
+ endif
+ CGO_ENABLED=1
+ BUILD_TAGS += rocksdb
+endif
+# handle boltdb
+ifeq (boltdb,$(findstring boltdb,$(COSMOS_BUILD_OPTIONS)))
+ BUILD_TAGS += boltdb
+endif
+
+ifeq (,$(findstring nostrip,$(COSMOS_BUILD_OPTIONS)))
+ ldflags += -w -s
+endif
+ldflags += $(LDFLAGS)
+ldflags := $(strip $(ldflags))
+
+build_tags += $(BUILD_TAGS)
+build_tags := $(strip $(build_tags))
+
+BUILD_FLAGS := -tags "$(build_tags)" -ldflags '$(ldflags)'
+# check for nostrip option
+ifeq (,$(findstring nostrip,$(COSMOS_BUILD_OPTIONS)))
+ BUILD_FLAGS += -trimpath
+endif
+
+# check if no optimization option is passed
+# used for remote debugging
+ifneq (,$(findstring nooptimization,$(COSMOS_BUILD_OPTIONS)))
+ BUILD_FLAGS += -gcflags "all=-N -l"
+endif
+
+###############################################################################
+### Build ###
+###############################################################################
+
+BUILD_TARGETS := build install
+
+build: BUILD_ARGS=-o $(BUILDDIR)/
+build-linux:
+ GOOS=linux GOARCH=amd64 LEDGER_ENABLED=false $(MAKE) build
+
+$(BUILD_TARGETS): go.sum $(BUILDDIR)/
+ go $@ $(BUILD_FLAGS) $(BUILD_ARGS) ./...
+
+$(BUILDDIR)/:
+ mkdir -p $(BUILDDIR)/
+
+build-alpine:
+ @echo "Building galacticad for alpine..."
+ @GOOS=linux CGO_ENABLED=1 go build -ldflags="-w -s" -o ./build/galacticad ./cmd/galacticad
+
+localnet-build:
+ @make build
+ @echo "Build docker image for localnet..."
+ @./localnet/build-docker.sh
+
+localnet-init:
+ @echo "Init configs for localnet..."
+ @./localnet/init-configs-localnet.sh
+
+localnet-start:
+ @echo "Start localnet..."
+ @./localnet/run-validators.sh
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..517f51e
--- /dev/null
+++ b/README.md
@@ -0,0 +1,82 @@
+# Galactica
+
+**Galactica** is a Layer 1 protocol that leverages zero-knowledge cryptography to achieve Sybil resistance,
+compliant privacy and infuse robust reputation primitives into DeFi and DAOs.
+
+## Usage
+
+### Run local network
+
+Local network allows you to run your blockchain locally. It contains 3 validators nodes.
+
+To build docker for local network run:
+
+```sh
+make localnet-build
+```
+
+To initialize local network validators configuration files run:
+
+```sh
+make localnet-init
+```
+
+Files will be saved to `./.galactica` folder.
+
+To start local network run:
+
+```sh
+make localnet-start
+```
+
+You can find network parameters for validators in `localnet/init-configs.sh` file.
+
+### Interact with the Blockchain
+
+To interact with the blockchain, you can use [CLI](https://docs.cosmos.network/v0.50/learn/advanced/cli)
+and [gRPC or REST endpoints](https://docs.cosmos.network/v0.50/learn/advanced/grpc_rest). Additionally, the node
+provides an [Ethereum RPC endpoint](https://ethereum.org/en/developers/docs/apis/json-rpc).
+
+## Contributing
+
+Contributions to the blockchain project are welcome! Feel free to open issues for bug fixes, feature requests, or submit
+pull requests to contribute directly.
+
+## License
+
+This project is licensed under the [Apache License 2.0](LICENSE), except for the modified third-party modules `x/epochs`
+and `x/inflation`described below.
+
+Certain modules within this project are adapted versions sourced from
+the [EVMOS](https://github.com/evmos/evmos/tree/v12.1.6) library. Specifically, the modules `x/epochs`
+and `x/inflation`, obtained from version `v12.1.6` as of July 4, 2023, have been customized to meet the requirements of
+this project. These modifications entail the removal of unused fields and methods, as well as the addition of new ones
+tailored to our project's needs. These modified modules are licensed under
+the [GNU Lesser General Public License v3.0](COPYING.LESSER). Please refer to the corresponding license file for more
+details.
+
+### Replace LGPL-3.0 Libraries Implementation
+
+To comply with the LGPL-3.0 license for the `go-ethereum` library, you may need to have a possibility to replace it with
+another interface-compatible library. This can be achieved using the `replace` directive in the `go.mod` file.
+
+Follow these steps to replace the `go-ethereum` library:
+
+1. **Identify Replacement Library**: Find an alternative library that provides similar functionality and is compatible
+ with the interfaces used in the project.
+
+2. **Update `go.mod` File**: Add a `replace` directive in the `go.mod` file to specify the replacement library. For
+ example:
+
+ ```
+ replace github.com/ethereum/go-ethereum => github.com/your/ethereum-library v1.0.0
+ ```
+
+ Replace `github.com/your/ethereum-library` with the actual import path of the replacement library, and `v1.0.0` with
+ the appropriate version tag.
+
+3. **Verify Compatibility**: Ensure that the replacement library is interface-compatible with the existing codebase to
+ prevent any breaking changes.
+
+By following these steps, you can replace the go-ethereum library with another interface-compatible library while
+ensuring compliance with the LGPL-3.0 license.
diff --git a/api/galactica/epochs/genesis.pulsar.go b/api/galactica/epochs/genesis.pulsar.go
new file mode 100644
index 0000000..ed83dd4
--- /dev/null
+++ b/api/galactica/epochs/genesis.pulsar.go
@@ -0,0 +1,595 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package epochs
+
+import (
+ _ "cosmossdk.io/api/amino"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_GenesisState protoreflect.MessageDescriptor
+ fd_GenesisState_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_epochs_genesis_proto_init()
+ md_GenesisState = File_galactica_epochs_genesis_proto.Messages().ByName("GenesisState")
+ fd_GenesisState_params = md_GenesisState.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_GenesisState)(nil)
+
+type fastReflection_GenesisState GenesisState
+
+func (x *GenesisState) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_GenesisState)(x)
+}
+
+func (x *GenesisState) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_epochs_genesis_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_GenesisState_messageType fastReflection_GenesisState_messageType
+var _ protoreflect.MessageType = fastReflection_GenesisState_messageType{}
+
+type fastReflection_GenesisState_messageType struct{}
+
+func (x fastReflection_GenesisState_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_GenesisState)(nil)
+}
+func (x fastReflection_GenesisState_messageType) New() protoreflect.Message {
+ return new(fastReflection_GenesisState)
+}
+func (x fastReflection_GenesisState_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_GenesisState
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_GenesisState) Descriptor() protoreflect.MessageDescriptor {
+ return md_GenesisState
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_GenesisState) Type() protoreflect.MessageType {
+ return _fastReflection_GenesisState_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_GenesisState) New() protoreflect.Message {
+ return new(fastReflection_GenesisState)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_GenesisState) Interface() protoreflect.ProtoMessage {
+ return (*GenesisState)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_GenesisState) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_GenesisState_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_GenesisState) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.epochs.GenesisState.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.epochs.GenesisState.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_GenesisState) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.epochs.GenesisState.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.GenesisState does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.epochs.GenesisState.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.epochs.GenesisState.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_GenesisState) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.epochs.GenesisState.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_GenesisState) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.epochs.GenesisState", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_GenesisState) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_GenesisState) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_GenesisState) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GenesisState: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GenesisState: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/epochs/genesis.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// GenesisState defines the epochs module's genesis state.
+type GenesisState struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // params defines all the parameters of the module.
+ Params *Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *GenesisState) Reset() {
+ *x = GenesisState{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_epochs_genesis_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GenesisState) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GenesisState) ProtoMessage() {}
+
+// Deprecated: Use GenesisState.ProtoReflect.Descriptor instead.
+func (*GenesisState) Descriptor() ([]byte, []int) {
+ return file_galactica_epochs_genesis_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *GenesisState) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+var File_galactica_epochs_genesis_proto protoreflect.FileDescriptor
+
+var file_galactica_epochs_genesis_proto_rawDesc = []byte{
+ 0x0a, 0x1e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x12, 0x10, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2f, 0x70, 0x61,
+ 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x4b, 0x0a, 0x0c, 0x47, 0x65,
+ 0x6e, 0x65, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61,
+ 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2e, 0x50, 0x61,
+ 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52,
+ 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0xa8, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e,
+ 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73,
+ 0x42, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
+ 0x5a, 0x21, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61,
+ 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f,
+ 0x63, 0x68, 0x73, 0xa2, 0x02, 0x03, 0x47, 0x45, 0x58, 0xaa, 0x02, 0x10, 0x47, 0x61, 0x6c, 0x61,
+ 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0xca, 0x02, 0x10, 0x47,
+ 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0xe2,
+ 0x02, 0x1c, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x45, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02,
+ 0x11, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a, 0x45, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_epochs_genesis_proto_rawDescOnce sync.Once
+ file_galactica_epochs_genesis_proto_rawDescData = file_galactica_epochs_genesis_proto_rawDesc
+)
+
+func file_galactica_epochs_genesis_proto_rawDescGZIP() []byte {
+ file_galactica_epochs_genesis_proto_rawDescOnce.Do(func() {
+ file_galactica_epochs_genesis_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_epochs_genesis_proto_rawDescData)
+ })
+ return file_galactica_epochs_genesis_proto_rawDescData
+}
+
+var file_galactica_epochs_genesis_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_epochs_genesis_proto_goTypes = []interface{}{
+ (*GenesisState)(nil), // 0: galactica.epochs.GenesisState
+ (*Params)(nil), // 1: galactica.epochs.Params
+}
+var file_galactica_epochs_genesis_proto_depIdxs = []int32{
+ 1, // 0: galactica.epochs.GenesisState.params:type_name -> galactica.epochs.Params
+ 1, // [1:1] is the sub-list for method output_type
+ 1, // [1:1] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_epochs_genesis_proto_init() }
+func file_galactica_epochs_genesis_proto_init() {
+ if File_galactica_epochs_genesis_proto != nil {
+ return
+ }
+ file_galactica_epochs_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_epochs_genesis_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GenesisState); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_epochs_genesis_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_epochs_genesis_proto_goTypes,
+ DependencyIndexes: file_galactica_epochs_genesis_proto_depIdxs,
+ MessageInfos: file_galactica_epochs_genesis_proto_msgTypes,
+ }.Build()
+ File_galactica_epochs_genesis_proto = out.File
+ file_galactica_epochs_genesis_proto_rawDesc = nil
+ file_galactica_epochs_genesis_proto_goTypes = nil
+ file_galactica_epochs_genesis_proto_depIdxs = nil
+}
diff --git a/api/galactica/epochs/module/module.pulsar.go b/api/galactica/epochs/module/module.pulsar.go
new file mode 100644
index 0000000..c45b51e
--- /dev/null
+++ b/api/galactica/epochs/module/module.pulsar.go
@@ -0,0 +1,578 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package module
+
+import (
+ _ "cosmossdk.io/api/cosmos/app/v1alpha1"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_Module protoreflect.MessageDescriptor
+ fd_Module_authority protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_epochs_module_module_proto_init()
+ md_Module = File_galactica_epochs_module_module_proto.Messages().ByName("Module")
+ fd_Module_authority = md_Module.Fields().ByName("authority")
+}
+
+var _ protoreflect.Message = (*fastReflection_Module)(nil)
+
+type fastReflection_Module Module
+
+func (x *Module) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_Module)(x)
+}
+
+func (x *Module) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_epochs_module_module_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_Module_messageType fastReflection_Module_messageType
+var _ protoreflect.MessageType = fastReflection_Module_messageType{}
+
+type fastReflection_Module_messageType struct{}
+
+func (x fastReflection_Module_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_Module)(nil)
+}
+func (x fastReflection_Module_messageType) New() protoreflect.Message {
+ return new(fastReflection_Module)
+}
+func (x fastReflection_Module_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_Module
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_Module) Descriptor() protoreflect.MessageDescriptor {
+ return md_Module
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_Module) Type() protoreflect.MessageType {
+ return _fastReflection_Module_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_Module) New() protoreflect.Message {
+ return new(fastReflection_Module)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_Module) Interface() protoreflect.ProtoMessage {
+ return (*Module)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Authority != "" {
+ value := protoreflect.ValueOfString(x.Authority)
+ if !f(fd_Module_authority, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.epochs.module.Module.authority":
+ return x.Authority != ""
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.epochs.module.Module.authority":
+ x.Authority = ""
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.epochs.module.Module.authority":
+ value := x.Authority
+ return protoreflect.ValueOfString(value)
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.module.Module does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.epochs.module.Module.authority":
+ x.Authority = value.Interface().(string)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.epochs.module.Module.authority":
+ panic(fmt.Errorf("field authority of message galactica.epochs.module.Module is not mutable"))
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_Module) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.epochs.module.Module.authority":
+ return protoreflect.ValueOfString("")
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_Module) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.epochs.module.Module", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_Module) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_Module) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ l = len(x.Authority)
+ if l > 0 {
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if len(x.Authority) > 0 {
+ i -= len(x.Authority)
+ copy(dAtA[i:], x.Authority)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ x.Authority = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/epochs/module/module.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Module is the config object for the module.
+type Module struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // authority defines the custom module authority. If not set, defaults to the governance module.
+ Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
+}
+
+func (x *Module) Reset() {
+ *x = Module{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_epochs_module_module_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Module) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Module) ProtoMessage() {}
+
+// Deprecated: Use Module.ProtoReflect.Descriptor instead.
+func (*Module) Descriptor() ([]byte, []int) {
+ return file_galactica_epochs_module_module_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Module) GetAuthority() string {
+ if x != nil {
+ return x.Authority
+ }
+ return ""
+}
+
+var File_galactica_epochs_module_module_proto protoreflect.FileDescriptor
+
+var file_galactica_epochs_module_module_proto_rawDesc = []byte{
+ 0x0a, 0x24, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63,
+ 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x1a,
+ 0x20, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x61, 0x70, 0x70, 0x2f, 0x76, 0x31, 0x61, 0x6c,
+ 0x70, 0x68, 0x61, 0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x22, 0x5c, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61,
+ 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
+ 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x3a, 0x34, 0xba, 0xc0, 0x96, 0xda, 0x01,
+ 0x2e, 0x0a, 0x2c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x47, 0x61,
+ 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2d, 0x63, 0x6f, 0x72, 0x70, 0x2f, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x78, 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x42,
+ 0xd2, 0x01, 0x0a, 0x1b, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63,
+ 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x42,
+ 0x0b, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x28,
+ 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68,
+ 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0xa2, 0x02, 0x03, 0x47, 0x45, 0x4d, 0xaa, 0x02,
+ 0x17, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68,
+ 0x73, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0xca, 0x02, 0x17, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x5c, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x5c, 0x4d, 0x6f, 0x64, 0x75,
+ 0x6c, 0x65, 0xe2, 0x02, 0x23, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x45,
+ 0x70, 0x6f, 0x63, 0x68, 0x73, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x47, 0x50, 0x42,
+ 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x3a, 0x3a, 0x4d, 0x6f,
+ 0x64, 0x75, 0x6c, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_epochs_module_module_proto_rawDescOnce sync.Once
+ file_galactica_epochs_module_module_proto_rawDescData = file_galactica_epochs_module_module_proto_rawDesc
+)
+
+func file_galactica_epochs_module_module_proto_rawDescGZIP() []byte {
+ file_galactica_epochs_module_module_proto_rawDescOnce.Do(func() {
+ file_galactica_epochs_module_module_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_epochs_module_module_proto_rawDescData)
+ })
+ return file_galactica_epochs_module_module_proto_rawDescData
+}
+
+var file_galactica_epochs_module_module_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_epochs_module_module_proto_goTypes = []interface{}{
+ (*Module)(nil), // 0: galactica.epochs.module.Module
+}
+var file_galactica_epochs_module_module_proto_depIdxs = []int32{
+ 0, // [0:0] is the sub-list for method output_type
+ 0, // [0:0] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_galactica_epochs_module_module_proto_init() }
+func file_galactica_epochs_module_module_proto_init() {
+ if File_galactica_epochs_module_module_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_epochs_module_module_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Module); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_epochs_module_module_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_epochs_module_module_proto_goTypes,
+ DependencyIndexes: file_galactica_epochs_module_module_proto_depIdxs,
+ MessageInfos: file_galactica_epochs_module_module_proto_msgTypes,
+ }.Build()
+ File_galactica_epochs_module_module_proto = out.File
+ file_galactica_epochs_module_module_proto_rawDesc = nil
+ file_galactica_epochs_module_module_proto_goTypes = nil
+ file_galactica_epochs_module_module_proto_depIdxs = nil
+}
diff --git a/api/galactica/epochs/params.pulsar.go b/api/galactica/epochs/params.pulsar.go
new file mode 100644
index 0000000..adf5e8e
--- /dev/null
+++ b/api/galactica/epochs/params.pulsar.go
@@ -0,0 +1,499 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package epochs
+
+import (
+ _ "cosmossdk.io/api/amino"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_Params protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_epochs_params_proto_init()
+ md_Params = File_galactica_epochs_params_proto.Messages().ByName("Params")
+}
+
+var _ protoreflect.Message = (*fastReflection_Params)(nil)
+
+type fastReflection_Params Params
+
+func (x *Params) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_Params)(x)
+}
+
+func (x *Params) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_epochs_params_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_Params_messageType fastReflection_Params_messageType
+var _ protoreflect.MessageType = fastReflection_Params_messageType{}
+
+type fastReflection_Params_messageType struct{}
+
+func (x fastReflection_Params_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_Params)(nil)
+}
+func (x fastReflection_Params_messageType) New() protoreflect.Message {
+ return new(fastReflection_Params)
+}
+func (x fastReflection_Params_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_Params
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_Params) Descriptor() protoreflect.MessageDescriptor {
+ return md_Params
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_Params) Type() protoreflect.MessageType {
+ return _fastReflection_Params_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_Params) New() protoreflect.Message {
+ return new(fastReflection_Params)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_Params) Interface() protoreflect.ProtoMessage {
+ return (*Params)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_Params) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_Params) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.Params"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.Params"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_Params) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.Params"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.Params does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.Params"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.Params"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_Params) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.Params"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_Params) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.epochs.Params", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_Params) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_Params) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Params: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Params: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/epochs/params.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Params defines the parameters for the module.
+type Params struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Params) Reset() {
+ *x = Params{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_epochs_params_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Params) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Params) ProtoMessage() {}
+
+// Deprecated: Use Params.ProtoReflect.Descriptor instead.
+func (*Params) Descriptor() ([]byte, []int) {
+ return file_galactica_epochs_params_proto_rawDescGZIP(), []int{0}
+}
+
+var File_galactica_epochs_params_proto protoreflect.FileDescriptor
+
+var file_galactica_epochs_params_proto_rawDesc = []byte{
+ 0x0a, 0x1d, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
+ 0x10, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68,
+ 0x73, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
+ 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2c, 0x0a, 0x06, 0x50, 0x61,
+ 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x22, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x19, 0x67,
+ 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x78, 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68,
+ 0x73, 0x2f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0xa7, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d,
+ 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68,
+ 0x73, 0x42, 0x0b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
+ 0x5a, 0x21, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61,
+ 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f,
+ 0x63, 0x68, 0x73, 0xa2, 0x02, 0x03, 0x47, 0x45, 0x58, 0xaa, 0x02, 0x10, 0x47, 0x61, 0x6c, 0x61,
+ 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0xca, 0x02, 0x10, 0x47,
+ 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0xe2,
+ 0x02, 0x1c, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x45, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02,
+ 0x11, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a, 0x45, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_epochs_params_proto_rawDescOnce sync.Once
+ file_galactica_epochs_params_proto_rawDescData = file_galactica_epochs_params_proto_rawDesc
+)
+
+func file_galactica_epochs_params_proto_rawDescGZIP() []byte {
+ file_galactica_epochs_params_proto_rawDescOnce.Do(func() {
+ file_galactica_epochs_params_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_epochs_params_proto_rawDescData)
+ })
+ return file_galactica_epochs_params_proto_rawDescData
+}
+
+var file_galactica_epochs_params_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_epochs_params_proto_goTypes = []interface{}{
+ (*Params)(nil), // 0: galactica.epochs.Params
+}
+var file_galactica_epochs_params_proto_depIdxs = []int32{
+ 0, // [0:0] is the sub-list for method output_type
+ 0, // [0:0] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_galactica_epochs_params_proto_init() }
+func file_galactica_epochs_params_proto_init() {
+ if File_galactica_epochs_params_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_epochs_params_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Params); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_epochs_params_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_epochs_params_proto_goTypes,
+ DependencyIndexes: file_galactica_epochs_params_proto_depIdxs,
+ MessageInfos: file_galactica_epochs_params_proto_msgTypes,
+ }.Build()
+ File_galactica_epochs_params_proto = out.File
+ file_galactica_epochs_params_proto_rawDesc = nil
+ file_galactica_epochs_params_proto_goTypes = nil
+ file_galactica_epochs_params_proto_depIdxs = nil
+}
diff --git a/api/galactica/epochs/query.pulsar.go b/api/galactica/epochs/query.pulsar.go
new file mode 100644
index 0000000..c9c1525
--- /dev/null
+++ b/api/galactica/epochs/query.pulsar.go
@@ -0,0 +1,1010 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package epochs
+
+import (
+ _ "cosmossdk.io/api/amino"
+ _ "cosmossdk.io/api/cosmos/base/query/v1beta1"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_QueryParamsRequest protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_epochs_query_proto_init()
+ md_QueryParamsRequest = File_galactica_epochs_query_proto.Messages().ByName("QueryParamsRequest")
+}
+
+var _ protoreflect.Message = (*fastReflection_QueryParamsRequest)(nil)
+
+type fastReflection_QueryParamsRequest QueryParamsRequest
+
+func (x *QueryParamsRequest) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_QueryParamsRequest)(x)
+}
+
+func (x *QueryParamsRequest) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_epochs_query_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_QueryParamsRequest_messageType fastReflection_QueryParamsRequest_messageType
+var _ protoreflect.MessageType = fastReflection_QueryParamsRequest_messageType{}
+
+type fastReflection_QueryParamsRequest_messageType struct{}
+
+func (x fastReflection_QueryParamsRequest_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_QueryParamsRequest)(nil)
+}
+func (x fastReflection_QueryParamsRequest_messageType) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsRequest)
+}
+func (x fastReflection_QueryParamsRequest_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsRequest
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_QueryParamsRequest) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsRequest
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_QueryParamsRequest) Type() protoreflect.MessageType {
+ return _fastReflection_QueryParamsRequest_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_QueryParamsRequest) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsRequest)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_QueryParamsRequest) Interface() protoreflect.ProtoMessage {
+ return (*QueryParamsRequest)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_QueryParamsRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_QueryParamsRequest) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_QueryParamsRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsRequest does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_QueryParamsRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_QueryParamsRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.epochs.QueryParamsRequest", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_QueryParamsRequest) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_QueryParamsRequest) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+var (
+ md_QueryParamsResponse protoreflect.MessageDescriptor
+ fd_QueryParamsResponse_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_epochs_query_proto_init()
+ md_QueryParamsResponse = File_galactica_epochs_query_proto.Messages().ByName("QueryParamsResponse")
+ fd_QueryParamsResponse_params = md_QueryParamsResponse.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_QueryParamsResponse)(nil)
+
+type fastReflection_QueryParamsResponse QueryParamsResponse
+
+func (x *QueryParamsResponse) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_QueryParamsResponse)(x)
+}
+
+func (x *QueryParamsResponse) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_epochs_query_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_QueryParamsResponse_messageType fastReflection_QueryParamsResponse_messageType
+var _ protoreflect.MessageType = fastReflection_QueryParamsResponse_messageType{}
+
+type fastReflection_QueryParamsResponse_messageType struct{}
+
+func (x fastReflection_QueryParamsResponse_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_QueryParamsResponse)(nil)
+}
+func (x fastReflection_QueryParamsResponse_messageType) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsResponse)
+}
+func (x fastReflection_QueryParamsResponse_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsResponse
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_QueryParamsResponse) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsResponse
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_QueryParamsResponse) Type() protoreflect.MessageType {
+ return _fastReflection_QueryParamsResponse_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_QueryParamsResponse) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsResponse)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_QueryParamsResponse) Interface() protoreflect.ProtoMessage {
+ return (*QueryParamsResponse)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_QueryParamsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_QueryParamsResponse_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_QueryParamsResponse) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.epochs.QueryParamsResponse.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.epochs.QueryParamsResponse.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_QueryParamsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.epochs.QueryParamsResponse.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsResponse does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.epochs.QueryParamsResponse.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.epochs.QueryParamsResponse.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_QueryParamsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.epochs.QueryParamsResponse.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_QueryParamsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.epochs.QueryParamsResponse", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_QueryParamsResponse) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_QueryParamsResponse) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/epochs/query.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// QueryParamsRequest is request type for the Query/Params RPC method.
+type QueryParamsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *QueryParamsRequest) Reset() {
+ *x = QueryParamsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_epochs_query_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryParamsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryParamsRequest) ProtoMessage() {}
+
+// Deprecated: Use QueryParamsRequest.ProtoReflect.Descriptor instead.
+func (*QueryParamsRequest) Descriptor() ([]byte, []int) {
+ return file_galactica_epochs_query_proto_rawDescGZIP(), []int{0}
+}
+
+// QueryParamsResponse is response type for the Query/Params RPC method.
+type QueryParamsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // params holds all the parameters of this module.
+ Params *Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *QueryParamsResponse) Reset() {
+ *x = QueryParamsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_epochs_query_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryParamsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryParamsResponse) ProtoMessage() {}
+
+// Deprecated: Use QueryParamsResponse.ProtoReflect.Descriptor instead.
+func (*QueryParamsResponse) Descriptor() ([]byte, []int) {
+ return file_galactica_epochs_query_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *QueryParamsResponse) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+var File_galactica_epochs_query_proto protoreflect.FileDescriptor
+
+var file_galactica_epochs_query_proto_rawDesc = []byte{
+ 0x0a, 0x1c, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10,
+ 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73,
+ 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67,
+ 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f,
+ 0x62, 0x61, 0x73, 0x65, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65,
+ 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x22, 0x14, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x52, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72,
+ 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x18, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8,
+ 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x32, 0x90, 0x01, 0x0a,
+ 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x86, 0x01, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d,
+ 0x73, 0x12, 0x24, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70,
+ 0x6f, 0x63, 0x68, 0x73, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74,
+ 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79,
+ 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x29, 0x12, 0x27, 0x2f, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x2d, 0x63, 0x6f, 0x72, 0x70, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63,
+ 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42,
+ 0xa6, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63,
+ 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x21, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64,
+ 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0xa2, 0x02, 0x03, 0x47, 0x45, 0x58, 0xaa,
+ 0x02, 0x10, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x45, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0xca, 0x02, 0x10, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x45,
+ 0x70, 0x6f, 0x63, 0x68, 0x73, 0xe2, 0x02, 0x1c, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63,
+ 0x61, 0x5c, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x11, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x3a, 0x3a, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_epochs_query_proto_rawDescOnce sync.Once
+ file_galactica_epochs_query_proto_rawDescData = file_galactica_epochs_query_proto_rawDesc
+)
+
+func file_galactica_epochs_query_proto_rawDescGZIP() []byte {
+ file_galactica_epochs_query_proto_rawDescOnce.Do(func() {
+ file_galactica_epochs_query_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_epochs_query_proto_rawDescData)
+ })
+ return file_galactica_epochs_query_proto_rawDescData
+}
+
+var file_galactica_epochs_query_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_galactica_epochs_query_proto_goTypes = []interface{}{
+ (*QueryParamsRequest)(nil), // 0: galactica.epochs.QueryParamsRequest
+ (*QueryParamsResponse)(nil), // 1: galactica.epochs.QueryParamsResponse
+ (*Params)(nil), // 2: galactica.epochs.Params
+}
+var file_galactica_epochs_query_proto_depIdxs = []int32{
+ 2, // 0: galactica.epochs.QueryParamsResponse.params:type_name -> galactica.epochs.Params
+ 0, // 1: galactica.epochs.Query.Params:input_type -> galactica.epochs.QueryParamsRequest
+ 1, // 2: galactica.epochs.Query.Params:output_type -> galactica.epochs.QueryParamsResponse
+ 2, // [2:3] is the sub-list for method output_type
+ 1, // [1:2] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_epochs_query_proto_init() }
+func file_galactica_epochs_query_proto_init() {
+ if File_galactica_epochs_query_proto != nil {
+ return
+ }
+ file_galactica_epochs_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_epochs_query_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryParamsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_galactica_epochs_query_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryParamsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_epochs_query_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_galactica_epochs_query_proto_goTypes,
+ DependencyIndexes: file_galactica_epochs_query_proto_depIdxs,
+ MessageInfos: file_galactica_epochs_query_proto_msgTypes,
+ }.Build()
+ File_galactica_epochs_query_proto = out.File
+ file_galactica_epochs_query_proto_rawDesc = nil
+ file_galactica_epochs_query_proto_goTypes = nil
+ file_galactica_epochs_query_proto_depIdxs = nil
+}
diff --git a/api/galactica/epochs/query_grpc.pb.go b/api/galactica/epochs/query_grpc.pb.go
new file mode 100644
index 0000000..0c504c9
--- /dev/null
+++ b/api/galactica/epochs/query_grpc.pb.go
@@ -0,0 +1,103 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+
+package epochs
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// QueryClient is the client API for Query service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type QueryClient interface {
+ // Parameters queries the parameters of the module.
+ Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error)
+}
+
+type queryClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewQueryClient(cc grpc.ClientConnInterface) QueryClient {
+ return &queryClient{cc}
+}
+
+func (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) {
+ out := new(QueryParamsResponse)
+ err := c.cc.Invoke(ctx, "/galactica.epochs.Query/Params", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// QueryServer is the server API for Query service.
+// All implementations must embed UnimplementedQueryServer
+// for forward compatibility
+type QueryServer interface {
+ // Parameters queries the parameters of the module.
+ Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error)
+ mustEmbedUnimplementedQueryServer()
+}
+
+// UnimplementedQueryServer must be embedded to have forward compatible implementations.
+type UnimplementedQueryServer struct {
+}
+
+func (UnimplementedQueryServer) Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Params not implemented")
+}
+func (UnimplementedQueryServer) mustEmbedUnimplementedQueryServer() {}
+
+// UnsafeQueryServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to QueryServer will
+// result in compilation errors.
+type UnsafeQueryServer interface {
+ mustEmbedUnimplementedQueryServer()
+}
+
+func RegisterQueryServer(s grpc.ServiceRegistrar, srv QueryServer) {
+ s.RegisterService(&Query_ServiceDesc, srv)
+}
+
+func _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(QueryParamsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(QueryServer).Params(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/galactica.epochs.Query/Params",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(QueryServer).Params(ctx, req.(*QueryParamsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// Query_ServiceDesc is the grpc.ServiceDesc for Query service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var Query_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "galactica.epochs.Query",
+ HandlerType: (*QueryServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "Params",
+ Handler: _Query_Params_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "galactica/epochs/query.proto",
+}
diff --git a/api/galactica/epochs/tx.pulsar.go b/api/galactica/epochs/tx.pulsar.go
new file mode 100644
index 0000000..759afd9
--- /dev/null
+++ b/api/galactica/epochs/tx.pulsar.go
@@ -0,0 +1,1093 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package epochs
+
+import (
+ _ "cosmossdk.io/api/amino"
+ _ "cosmossdk.io/api/cosmos/msg/v1"
+ fmt "fmt"
+ _ "github.com/cosmos/cosmos-proto"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_MsgUpdateParams protoreflect.MessageDescriptor
+ fd_MsgUpdateParams_authority protoreflect.FieldDescriptor
+ fd_MsgUpdateParams_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_epochs_tx_proto_init()
+ md_MsgUpdateParams = File_galactica_epochs_tx_proto.Messages().ByName("MsgUpdateParams")
+ fd_MsgUpdateParams_authority = md_MsgUpdateParams.Fields().ByName("authority")
+ fd_MsgUpdateParams_params = md_MsgUpdateParams.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_MsgUpdateParams)(nil)
+
+type fastReflection_MsgUpdateParams MsgUpdateParams
+
+func (x *MsgUpdateParams) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParams)(x)
+}
+
+func (x *MsgUpdateParams) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_epochs_tx_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_MsgUpdateParams_messageType fastReflection_MsgUpdateParams_messageType
+var _ protoreflect.MessageType = fastReflection_MsgUpdateParams_messageType{}
+
+type fastReflection_MsgUpdateParams_messageType struct{}
+
+func (x fastReflection_MsgUpdateParams_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParams)(nil)
+}
+func (x fastReflection_MsgUpdateParams_messageType) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParams)
+}
+func (x fastReflection_MsgUpdateParams_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParams
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_MsgUpdateParams) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParams
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_MsgUpdateParams) Type() protoreflect.MessageType {
+ return _fastReflection_MsgUpdateParams_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_MsgUpdateParams) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParams)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_MsgUpdateParams) Interface() protoreflect.ProtoMessage {
+ return (*MsgUpdateParams)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_MsgUpdateParams) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Authority != "" {
+ value := protoreflect.ValueOfString(x.Authority)
+ if !f(fd_MsgUpdateParams_authority, value) {
+ return
+ }
+ }
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_MsgUpdateParams_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_MsgUpdateParams) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.epochs.MsgUpdateParams.authority":
+ return x.Authority != ""
+ case "galactica.epochs.MsgUpdateParams.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.epochs.MsgUpdateParams.authority":
+ x.Authority = ""
+ case "galactica.epochs.MsgUpdateParams.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_MsgUpdateParams) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.epochs.MsgUpdateParams.authority":
+ value := x.Authority
+ return protoreflect.ValueOfString(value)
+ case "galactica.epochs.MsgUpdateParams.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParams does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.epochs.MsgUpdateParams.authority":
+ x.Authority = value.Interface().(string)
+ case "galactica.epochs.MsgUpdateParams.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.epochs.MsgUpdateParams.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ case "galactica.epochs.MsgUpdateParams.authority":
+ panic(fmt.Errorf("field authority of message galactica.epochs.MsgUpdateParams is not mutable"))
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_MsgUpdateParams) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.epochs.MsgUpdateParams.authority":
+ return protoreflect.ValueOfString("")
+ case "galactica.epochs.MsgUpdateParams.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_MsgUpdateParams) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.epochs.MsgUpdateParams", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_MsgUpdateParams) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_MsgUpdateParams) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_MsgUpdateParams) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ l = len(x.Authority)
+ if l > 0 {
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if len(x.Authority) > 0 {
+ i -= len(x.Authority)
+ copy(dAtA[i:], x.Authority)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParams: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParams: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ x.Authority = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+var (
+ md_MsgUpdateParamsResponse protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_epochs_tx_proto_init()
+ md_MsgUpdateParamsResponse = File_galactica_epochs_tx_proto.Messages().ByName("MsgUpdateParamsResponse")
+}
+
+var _ protoreflect.Message = (*fastReflection_MsgUpdateParamsResponse)(nil)
+
+type fastReflection_MsgUpdateParamsResponse MsgUpdateParamsResponse
+
+func (x *MsgUpdateParamsResponse) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParamsResponse)(x)
+}
+
+func (x *MsgUpdateParamsResponse) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_epochs_tx_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_MsgUpdateParamsResponse_messageType fastReflection_MsgUpdateParamsResponse_messageType
+var _ protoreflect.MessageType = fastReflection_MsgUpdateParamsResponse_messageType{}
+
+type fastReflection_MsgUpdateParamsResponse_messageType struct{}
+
+func (x fastReflection_MsgUpdateParamsResponse_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParamsResponse)(nil)
+}
+func (x fastReflection_MsgUpdateParamsResponse_messageType) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParamsResponse)
+}
+func (x fastReflection_MsgUpdateParamsResponse_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParamsResponse
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_MsgUpdateParamsResponse) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParamsResponse
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_MsgUpdateParamsResponse) Type() protoreflect.MessageType {
+ return _fastReflection_MsgUpdateParamsResponse_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_MsgUpdateParamsResponse) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParamsResponse)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_MsgUpdateParamsResponse) Interface() protoreflect.ProtoMessage {
+ return (*MsgUpdateParamsResponse)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_MsgUpdateParamsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_MsgUpdateParamsResponse) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_MsgUpdateParamsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParamsResponse does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_MsgUpdateParamsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.epochs.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.epochs.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_MsgUpdateParamsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.epochs.MsgUpdateParamsResponse", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_MsgUpdateParamsResponse) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_MsgUpdateParamsResponse) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_MsgUpdateParamsResponse) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParamsResponse: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/epochs/tx.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// MsgUpdateParams is the Msg/UpdateParams request type.
+//
+// Since: cosmos-sdk 0.47
+type MsgUpdateParams struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // authority is the address that controls the module (defaults to x/gov unless overwritten).
+ Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
+ // params defines the module parameters to update.
+ //
+ // NOTE: All parameters must be supplied.
+ Params *Params `protobuf:"bytes,2,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *MsgUpdateParams) Reset() {
+ *x = MsgUpdateParams{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_epochs_tx_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MsgUpdateParams) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MsgUpdateParams) ProtoMessage() {}
+
+// Deprecated: Use MsgUpdateParams.ProtoReflect.Descriptor instead.
+func (*MsgUpdateParams) Descriptor() ([]byte, []int) {
+ return file_galactica_epochs_tx_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *MsgUpdateParams) GetAuthority() string {
+ if x != nil {
+ return x.Authority
+ }
+ return ""
+}
+
+func (x *MsgUpdateParams) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+// MsgUpdateParamsResponse defines the response structure for executing a
+// MsgUpdateParams message.
+//
+// Since: cosmos-sdk 0.47
+type MsgUpdateParamsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *MsgUpdateParamsResponse) Reset() {
+ *x = MsgUpdateParamsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_epochs_tx_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MsgUpdateParamsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MsgUpdateParamsResponse) ProtoMessage() {}
+
+// Deprecated: Use MsgUpdateParamsResponse.ProtoReflect.Descriptor instead.
+func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) {
+ return file_galactica_epochs_tx_proto_rawDescGZIP(), []int{1}
+}
+
+var File_galactica_epochs_tx_proto protoreflect.FileDescriptor
+
+var file_galactica_epochs_tx_proto_rawDesc = []byte{
+ 0x0a, 0x19, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63,
+ 0x68, 0x73, 0x2f, 0x74, 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x1a, 0x11, 0x61,
+ 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x1a, 0x17, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6d, 0x73, 0x67, 0x2f, 0x76, 0x31, 0x2f,
+ 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x63, 0x6f, 0x73, 0x6d, 0x6f,
+ 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
+ 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x61, 0x6c, 0x61,
+ 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2f, 0x70, 0x61, 0x72,
+ 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbd, 0x01, 0x0a, 0x0f, 0x4d, 0x73,
+ 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x36, 0x0a,
+ 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64,
+ 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68,
+ 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63,
+ 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42,
+ 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61,
+ 0x6d, 0x73, 0x3a, 0x35, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69,
+ 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x22, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x2f, 0x78, 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x6a, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x5c, 0x0a, 0x0c, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x21, 0x2e, 0x67, 0x61,
+ 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x2e, 0x4d,
+ 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x29,
+ 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68,
+ 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01,
+ 0x42, 0xa3, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x2e, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x21, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e,
+ 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x2f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x73, 0xa2, 0x02, 0x03, 0x47, 0x45, 0x58, 0xaa, 0x02, 0x10,
+ 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73,
+ 0xca, 0x02, 0x10, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x45, 0x70, 0x6f,
+ 0x63, 0x68, 0x73, 0xe2, 0x02, 0x1c, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c,
+ 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0xea, 0x02, 0x11, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a,
+ 0x45, 0x70, 0x6f, 0x63, 0x68, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_epochs_tx_proto_rawDescOnce sync.Once
+ file_galactica_epochs_tx_proto_rawDescData = file_galactica_epochs_tx_proto_rawDesc
+)
+
+func file_galactica_epochs_tx_proto_rawDescGZIP() []byte {
+ file_galactica_epochs_tx_proto_rawDescOnce.Do(func() {
+ file_galactica_epochs_tx_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_epochs_tx_proto_rawDescData)
+ })
+ return file_galactica_epochs_tx_proto_rawDescData
+}
+
+var file_galactica_epochs_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_galactica_epochs_tx_proto_goTypes = []interface{}{
+ (*MsgUpdateParams)(nil), // 0: galactica.epochs.MsgUpdateParams
+ (*MsgUpdateParamsResponse)(nil), // 1: galactica.epochs.MsgUpdateParamsResponse
+ (*Params)(nil), // 2: galactica.epochs.Params
+}
+var file_galactica_epochs_tx_proto_depIdxs = []int32{
+ 2, // 0: galactica.epochs.MsgUpdateParams.params:type_name -> galactica.epochs.Params
+ 0, // 1: galactica.epochs.Msg.UpdateParams:input_type -> galactica.epochs.MsgUpdateParams
+ 1, // 2: galactica.epochs.Msg.UpdateParams:output_type -> galactica.epochs.MsgUpdateParamsResponse
+ 2, // [2:3] is the sub-list for method output_type
+ 1, // [1:2] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_epochs_tx_proto_init() }
+func file_galactica_epochs_tx_proto_init() {
+ if File_galactica_epochs_tx_proto != nil {
+ return
+ }
+ file_galactica_epochs_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_epochs_tx_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MsgUpdateParams); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_galactica_epochs_tx_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MsgUpdateParamsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_epochs_tx_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_galactica_epochs_tx_proto_goTypes,
+ DependencyIndexes: file_galactica_epochs_tx_proto_depIdxs,
+ MessageInfos: file_galactica_epochs_tx_proto_msgTypes,
+ }.Build()
+ File_galactica_epochs_tx_proto = out.File
+ file_galactica_epochs_tx_proto_rawDesc = nil
+ file_galactica_epochs_tx_proto_goTypes = nil
+ file_galactica_epochs_tx_proto_depIdxs = nil
+}
diff --git a/api/galactica/epochs/tx_grpc.pb.go b/api/galactica/epochs/tx_grpc.pb.go
new file mode 100644
index 0000000..68b93b3
--- /dev/null
+++ b/api/galactica/epochs/tx_grpc.pb.go
@@ -0,0 +1,109 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+
+package epochs
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// MsgClient is the client API for Msg service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type MsgClient interface {
+ // UpdateParams defines a (governance) operation for updating the module
+ // parameters. The authority defaults to the x/gov module account.
+ //
+ // Since: cosmos-sdk 0.47
+ UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
+}
+
+type msgClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewMsgClient(cc grpc.ClientConnInterface) MsgClient {
+ return &msgClient{cc}
+}
+
+func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
+ out := new(MsgUpdateParamsResponse)
+ err := c.cc.Invoke(ctx, "/galactica.epochs.Msg/UpdateParams", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// MsgServer is the server API for Msg service.
+// All implementations must embed UnimplementedMsgServer
+// for forward compatibility
+type MsgServer interface {
+ // UpdateParams defines a (governance) operation for updating the module
+ // parameters. The authority defaults to the x/gov module account.
+ //
+ // Since: cosmos-sdk 0.47
+ UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
+ mustEmbedUnimplementedMsgServer()
+}
+
+// UnimplementedMsgServer must be embedded to have forward compatible implementations.
+type UnimplementedMsgServer struct {
+}
+
+func (UnimplementedMsgServer) UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
+}
+func (UnimplementedMsgServer) mustEmbedUnimplementedMsgServer() {}
+
+// UnsafeMsgServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to MsgServer will
+// result in compilation errors.
+type UnsafeMsgServer interface {
+ mustEmbedUnimplementedMsgServer()
+}
+
+func RegisterMsgServer(s grpc.ServiceRegistrar, srv MsgServer) {
+ s.RegisterService(&Msg_ServiceDesc, srv)
+}
+
+func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(MsgUpdateParams)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(MsgServer).UpdateParams(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/galactica.epochs.Msg/UpdateParams",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// Msg_ServiceDesc is the grpc.ServiceDesc for Msg service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var Msg_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "galactica.epochs.Msg",
+ HandlerType: (*MsgServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "UpdateParams",
+ Handler: _Msg_UpdateParams_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "galactica/epochs/tx.proto",
+}
diff --git a/api/galactica/inflation/genesis.pulsar.go b/api/galactica/inflation/genesis.pulsar.go
new file mode 100644
index 0000000..106fc68
--- /dev/null
+++ b/api/galactica/inflation/genesis.pulsar.go
@@ -0,0 +1,597 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package inflation
+
+import (
+ _ "cosmossdk.io/api/amino"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_GenesisState protoreflect.MessageDescriptor
+ fd_GenesisState_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_inflation_genesis_proto_init()
+ md_GenesisState = File_galactica_inflation_genesis_proto.Messages().ByName("GenesisState")
+ fd_GenesisState_params = md_GenesisState.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_GenesisState)(nil)
+
+type fastReflection_GenesisState GenesisState
+
+func (x *GenesisState) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_GenesisState)(x)
+}
+
+func (x *GenesisState) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_inflation_genesis_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_GenesisState_messageType fastReflection_GenesisState_messageType
+var _ protoreflect.MessageType = fastReflection_GenesisState_messageType{}
+
+type fastReflection_GenesisState_messageType struct{}
+
+func (x fastReflection_GenesisState_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_GenesisState)(nil)
+}
+func (x fastReflection_GenesisState_messageType) New() protoreflect.Message {
+ return new(fastReflection_GenesisState)
+}
+func (x fastReflection_GenesisState_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_GenesisState
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_GenesisState) Descriptor() protoreflect.MessageDescriptor {
+ return md_GenesisState
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_GenesisState) Type() protoreflect.MessageType {
+ return _fastReflection_GenesisState_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_GenesisState) New() protoreflect.Message {
+ return new(fastReflection_GenesisState)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_GenesisState) Interface() protoreflect.ProtoMessage {
+ return (*GenesisState)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_GenesisState) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_GenesisState_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_GenesisState) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.inflation.GenesisState.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.inflation.GenesisState.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_GenesisState) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.inflation.GenesisState.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.GenesisState does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.inflation.GenesisState.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.inflation.GenesisState.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_GenesisState) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.inflation.GenesisState.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_GenesisState) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.inflation.GenesisState", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_GenesisState) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_GenesisState) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_GenesisState) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GenesisState: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GenesisState: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/inflation/genesis.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// GenesisState defines the inflation module's genesis state.
+type GenesisState struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // params defines all the parameters of the module.
+ Params *Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *GenesisState) Reset() {
+ *x = GenesisState{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_inflation_genesis_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GenesisState) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GenesisState) ProtoMessage() {}
+
+// Deprecated: Use GenesisState.ProtoReflect.Descriptor instead.
+func (*GenesisState) Descriptor() ([]byte, []int) {
+ return file_galactica_inflation_genesis_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *GenesisState) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+var File_galactica_inflation_genesis_proto protoreflect.FileDescriptor
+
+var file_galactica_inflation_genesis_proto_rawDesc = []byte{
+ 0x0a, 0x21, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69,
+ 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f,
+ 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67,
+ 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x20, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66,
+ 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x22, 0x4e, 0x0a, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x53, 0x74,
+ 0x61, 0x74, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e,
+ 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
+ 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72,
+ 0x61, 0x6d, 0x73, 0x42, 0xba, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c, 0x61,
+ 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42,
+ 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
+ 0x24, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70,
+ 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x47, 0x49, 0x58, 0xaa, 0x02, 0x13, 0x47, 0x61,
+ 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0xca, 0x02, 0x13, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x49, 0x6e,
+ 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xe2, 0x02, 0x1f, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74,
+ 0x69, 0x63, 0x61, 0x5c, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x47, 0x50,
+ 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61,
+ 0x63, 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_inflation_genesis_proto_rawDescOnce sync.Once
+ file_galactica_inflation_genesis_proto_rawDescData = file_galactica_inflation_genesis_proto_rawDesc
+)
+
+func file_galactica_inflation_genesis_proto_rawDescGZIP() []byte {
+ file_galactica_inflation_genesis_proto_rawDescOnce.Do(func() {
+ file_galactica_inflation_genesis_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_inflation_genesis_proto_rawDescData)
+ })
+ return file_galactica_inflation_genesis_proto_rawDescData
+}
+
+var file_galactica_inflation_genesis_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_inflation_genesis_proto_goTypes = []interface{}{
+ (*GenesisState)(nil), // 0: galactica.inflation.GenesisState
+ (*Params)(nil), // 1: galactica.inflation.Params
+}
+var file_galactica_inflation_genesis_proto_depIdxs = []int32{
+ 1, // 0: galactica.inflation.GenesisState.params:type_name -> galactica.inflation.Params
+ 1, // [1:1] is the sub-list for method output_type
+ 1, // [1:1] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_inflation_genesis_proto_init() }
+func file_galactica_inflation_genesis_proto_init() {
+ if File_galactica_inflation_genesis_proto != nil {
+ return
+ }
+ file_galactica_inflation_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_inflation_genesis_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GenesisState); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_inflation_genesis_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_inflation_genesis_proto_goTypes,
+ DependencyIndexes: file_galactica_inflation_genesis_proto_depIdxs,
+ MessageInfos: file_galactica_inflation_genesis_proto_msgTypes,
+ }.Build()
+ File_galactica_inflation_genesis_proto = out.File
+ file_galactica_inflation_genesis_proto_rawDesc = nil
+ file_galactica_inflation_genesis_proto_goTypes = nil
+ file_galactica_inflation_genesis_proto_depIdxs = nil
+}
diff --git a/api/galactica/inflation/module/module.pulsar.go b/api/galactica/inflation/module/module.pulsar.go
new file mode 100644
index 0000000..1d87fed
--- /dev/null
+++ b/api/galactica/inflation/module/module.pulsar.go
@@ -0,0 +1,580 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package module
+
+import (
+ _ "cosmossdk.io/api/cosmos/app/v1alpha1"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_Module protoreflect.MessageDescriptor
+ fd_Module_authority protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_inflation_module_module_proto_init()
+ md_Module = File_galactica_inflation_module_module_proto.Messages().ByName("Module")
+ fd_Module_authority = md_Module.Fields().ByName("authority")
+}
+
+var _ protoreflect.Message = (*fastReflection_Module)(nil)
+
+type fastReflection_Module Module
+
+func (x *Module) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_Module)(x)
+}
+
+func (x *Module) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_inflation_module_module_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_Module_messageType fastReflection_Module_messageType
+var _ protoreflect.MessageType = fastReflection_Module_messageType{}
+
+type fastReflection_Module_messageType struct{}
+
+func (x fastReflection_Module_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_Module)(nil)
+}
+func (x fastReflection_Module_messageType) New() protoreflect.Message {
+ return new(fastReflection_Module)
+}
+func (x fastReflection_Module_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_Module
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_Module) Descriptor() protoreflect.MessageDescriptor {
+ return md_Module
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_Module) Type() protoreflect.MessageType {
+ return _fastReflection_Module_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_Module) New() protoreflect.Message {
+ return new(fastReflection_Module)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_Module) Interface() protoreflect.ProtoMessage {
+ return (*Module)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Authority != "" {
+ value := protoreflect.ValueOfString(x.Authority)
+ if !f(fd_Module_authority, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.inflation.module.Module.authority":
+ return x.Authority != ""
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.inflation.module.Module.authority":
+ x.Authority = ""
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.inflation.module.Module.authority":
+ value := x.Authority
+ return protoreflect.ValueOfString(value)
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.module.Module does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.inflation.module.Module.authority":
+ x.Authority = value.Interface().(string)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.inflation.module.Module.authority":
+ panic(fmt.Errorf("field authority of message galactica.inflation.module.Module is not mutable"))
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_Module) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.inflation.module.Module.authority":
+ return protoreflect.ValueOfString("")
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_Module) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.inflation.module.Module", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_Module) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_Module) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ l = len(x.Authority)
+ if l > 0 {
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if len(x.Authority) > 0 {
+ i -= len(x.Authority)
+ copy(dAtA[i:], x.Authority)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ x.Authority = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/inflation/module/module.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Module is the config object for the module.
+type Module struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // authority defines the custom module authority. If not set, defaults to the governance module.
+ Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
+}
+
+func (x *Module) Reset() {
+ *x = Module{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_inflation_module_module_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Module) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Module) ProtoMessage() {}
+
+// Deprecated: Use Module.ProtoReflect.Descriptor instead.
+func (*Module) Descriptor() ([]byte, []int) {
+ return file_galactica_inflation_module_module_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Module) GetAuthority() string {
+ if x != nil {
+ return x.Authority
+ }
+ return ""
+}
+
+var File_galactica_inflation_module_module_proto protoreflect.FileDescriptor
+
+var file_galactica_inflation_module_module_proto_rawDesc = []byte{
+ 0x0a, 0x27, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x6d, 0x6f, 0x64,
+ 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x67, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d,
+ 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x1a, 0x20, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x61, 0x70,
+ 0x70, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5f, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
+ 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x3a,
+ 0x37, 0xba, 0xc0, 0x96, 0xda, 0x01, 0x31, 0x0a, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2d, 0x63, 0x6f,
+ 0x72, 0x70, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x78, 0x2f, 0x69,
+ 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0xe4, 0x01, 0x0a, 0x1e, 0x63, 0x6f, 0x6d,
+ 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x42, 0x0b, 0x4d, 0x6f, 0x64,
+ 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2b, 0x63, 0x6f, 0x73, 0x6d,
+ 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0xa2, 0x02, 0x03, 0x47, 0x49, 0x4d, 0xaa, 0x02, 0x1a,
+ 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0xca, 0x02, 0x1a, 0x47, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0xe2, 0x02, 0x26, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74,
+ 0x69, 0x63, 0x61, 0x5c, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x4d, 0x6f,
+ 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0xea, 0x02, 0x1c, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a, 0x49, 0x6e,
+ 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x3a, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x62,
+ 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_inflation_module_module_proto_rawDescOnce sync.Once
+ file_galactica_inflation_module_module_proto_rawDescData = file_galactica_inflation_module_module_proto_rawDesc
+)
+
+func file_galactica_inflation_module_module_proto_rawDescGZIP() []byte {
+ file_galactica_inflation_module_module_proto_rawDescOnce.Do(func() {
+ file_galactica_inflation_module_module_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_inflation_module_module_proto_rawDescData)
+ })
+ return file_galactica_inflation_module_module_proto_rawDescData
+}
+
+var file_galactica_inflation_module_module_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_inflation_module_module_proto_goTypes = []interface{}{
+ (*Module)(nil), // 0: galactica.inflation.module.Module
+}
+var file_galactica_inflation_module_module_proto_depIdxs = []int32{
+ 0, // [0:0] is the sub-list for method output_type
+ 0, // [0:0] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_galactica_inflation_module_module_proto_init() }
+func file_galactica_inflation_module_module_proto_init() {
+ if File_galactica_inflation_module_module_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_inflation_module_module_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Module); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_inflation_module_module_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_inflation_module_module_proto_goTypes,
+ DependencyIndexes: file_galactica_inflation_module_module_proto_depIdxs,
+ MessageInfos: file_galactica_inflation_module_module_proto_msgTypes,
+ }.Build()
+ File_galactica_inflation_module_module_proto = out.File
+ file_galactica_inflation_module_module_proto_rawDesc = nil
+ file_galactica_inflation_module_module_proto_goTypes = nil
+ file_galactica_inflation_module_module_proto_depIdxs = nil
+}
diff --git a/api/galactica/inflation/params.pulsar.go b/api/galactica/inflation/params.pulsar.go
new file mode 100644
index 0000000..c636176
--- /dev/null
+++ b/api/galactica/inflation/params.pulsar.go
@@ -0,0 +1,501 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package inflation
+
+import (
+ _ "cosmossdk.io/api/amino"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_Params protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_inflation_params_proto_init()
+ md_Params = File_galactica_inflation_params_proto.Messages().ByName("Params")
+}
+
+var _ protoreflect.Message = (*fastReflection_Params)(nil)
+
+type fastReflection_Params Params
+
+func (x *Params) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_Params)(x)
+}
+
+func (x *Params) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_inflation_params_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_Params_messageType fastReflection_Params_messageType
+var _ protoreflect.MessageType = fastReflection_Params_messageType{}
+
+type fastReflection_Params_messageType struct{}
+
+func (x fastReflection_Params_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_Params)(nil)
+}
+func (x fastReflection_Params_messageType) New() protoreflect.Message {
+ return new(fastReflection_Params)
+}
+func (x fastReflection_Params_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_Params
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_Params) Descriptor() protoreflect.MessageDescriptor {
+ return md_Params
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_Params) Type() protoreflect.MessageType {
+ return _fastReflection_Params_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_Params) New() protoreflect.Message {
+ return new(fastReflection_Params)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_Params) Interface() protoreflect.ProtoMessage {
+ return (*Params)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_Params) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_Params) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_Params) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.Params does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_Params) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_Params) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.inflation.Params", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_Params) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_Params) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Params: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Params: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/inflation/params.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Params defines the parameters for the module.
+type Params struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Params) Reset() {
+ *x = Params{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_inflation_params_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Params) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Params) ProtoMessage() {}
+
+// Deprecated: Use Params.ProtoReflect.Descriptor instead.
+func (*Params) Descriptor() ([]byte, []int) {
+ return file_galactica_inflation_params_proto_rawDescGZIP(), []int{0}
+}
+
+var File_galactica_inflation_params_proto protoreflect.FileDescriptor
+
+var file_galactica_inflation_params_proto_rawDesc = []byte{
+ 0x0a, 0x20, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x12, 0x13, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e,
+ 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61,
+ 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x22, 0x2f, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x25, 0xe8, 0xa0, 0x1f, 0x01,
+ 0x8a, 0xe7, 0xb0, 0x2a, 0x1c, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x78,
+ 0x2f, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x50, 0x61, 0x72, 0x61, 0x6d,
+ 0x73, 0x42, 0xb9, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74,
+ 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0b, 0x50,
+ 0x61, 0x72, 0x61, 0x6d, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x24, 0x63, 0x6f,
+ 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67,
+ 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x47, 0x49, 0x58, 0xaa, 0x02, 0x13, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xca, 0x02,
+ 0x13, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x49, 0x6e, 0x66, 0x6c, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0xe2, 0x02, 0x1f, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x5c, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x3a, 0x3a, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_inflation_params_proto_rawDescOnce sync.Once
+ file_galactica_inflation_params_proto_rawDescData = file_galactica_inflation_params_proto_rawDesc
+)
+
+func file_galactica_inflation_params_proto_rawDescGZIP() []byte {
+ file_galactica_inflation_params_proto_rawDescOnce.Do(func() {
+ file_galactica_inflation_params_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_inflation_params_proto_rawDescData)
+ })
+ return file_galactica_inflation_params_proto_rawDescData
+}
+
+var file_galactica_inflation_params_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_inflation_params_proto_goTypes = []interface{}{
+ (*Params)(nil), // 0: galactica.inflation.Params
+}
+var file_galactica_inflation_params_proto_depIdxs = []int32{
+ 0, // [0:0] is the sub-list for method output_type
+ 0, // [0:0] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_galactica_inflation_params_proto_init() }
+func file_galactica_inflation_params_proto_init() {
+ if File_galactica_inflation_params_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_inflation_params_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Params); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_inflation_params_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_inflation_params_proto_goTypes,
+ DependencyIndexes: file_galactica_inflation_params_proto_depIdxs,
+ MessageInfos: file_galactica_inflation_params_proto_msgTypes,
+ }.Build()
+ File_galactica_inflation_params_proto = out.File
+ file_galactica_inflation_params_proto_rawDesc = nil
+ file_galactica_inflation_params_proto_goTypes = nil
+ file_galactica_inflation_params_proto_depIdxs = nil
+}
diff --git a/api/galactica/inflation/query.pulsar.go b/api/galactica/inflation/query.pulsar.go
new file mode 100644
index 0000000..20c55af
--- /dev/null
+++ b/api/galactica/inflation/query.pulsar.go
@@ -0,0 +1,1013 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package inflation
+
+import (
+ _ "cosmossdk.io/api/amino"
+ _ "cosmossdk.io/api/cosmos/base/query/v1beta1"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_QueryParamsRequest protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_inflation_query_proto_init()
+ md_QueryParamsRequest = File_galactica_inflation_query_proto.Messages().ByName("QueryParamsRequest")
+}
+
+var _ protoreflect.Message = (*fastReflection_QueryParamsRequest)(nil)
+
+type fastReflection_QueryParamsRequest QueryParamsRequest
+
+func (x *QueryParamsRequest) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_QueryParamsRequest)(x)
+}
+
+func (x *QueryParamsRequest) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_inflation_query_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_QueryParamsRequest_messageType fastReflection_QueryParamsRequest_messageType
+var _ protoreflect.MessageType = fastReflection_QueryParamsRequest_messageType{}
+
+type fastReflection_QueryParamsRequest_messageType struct{}
+
+func (x fastReflection_QueryParamsRequest_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_QueryParamsRequest)(nil)
+}
+func (x fastReflection_QueryParamsRequest_messageType) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsRequest)
+}
+func (x fastReflection_QueryParamsRequest_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsRequest
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_QueryParamsRequest) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsRequest
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_QueryParamsRequest) Type() protoreflect.MessageType {
+ return _fastReflection_QueryParamsRequest_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_QueryParamsRequest) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsRequest)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_QueryParamsRequest) Interface() protoreflect.ProtoMessage {
+ return (*QueryParamsRequest)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_QueryParamsRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_QueryParamsRequest) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_QueryParamsRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsRequest does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_QueryParamsRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_QueryParamsRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.inflation.QueryParamsRequest", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_QueryParamsRequest) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_QueryParamsRequest) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+var (
+ md_QueryParamsResponse protoreflect.MessageDescriptor
+ fd_QueryParamsResponse_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_inflation_query_proto_init()
+ md_QueryParamsResponse = File_galactica_inflation_query_proto.Messages().ByName("QueryParamsResponse")
+ fd_QueryParamsResponse_params = md_QueryParamsResponse.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_QueryParamsResponse)(nil)
+
+type fastReflection_QueryParamsResponse QueryParamsResponse
+
+func (x *QueryParamsResponse) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_QueryParamsResponse)(x)
+}
+
+func (x *QueryParamsResponse) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_inflation_query_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_QueryParamsResponse_messageType fastReflection_QueryParamsResponse_messageType
+var _ protoreflect.MessageType = fastReflection_QueryParamsResponse_messageType{}
+
+type fastReflection_QueryParamsResponse_messageType struct{}
+
+func (x fastReflection_QueryParamsResponse_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_QueryParamsResponse)(nil)
+}
+func (x fastReflection_QueryParamsResponse_messageType) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsResponse)
+}
+func (x fastReflection_QueryParamsResponse_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsResponse
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_QueryParamsResponse) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsResponse
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_QueryParamsResponse) Type() protoreflect.MessageType {
+ return _fastReflection_QueryParamsResponse_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_QueryParamsResponse) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsResponse)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_QueryParamsResponse) Interface() protoreflect.ProtoMessage {
+ return (*QueryParamsResponse)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_QueryParamsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_QueryParamsResponse_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_QueryParamsResponse) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.inflation.QueryParamsResponse.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.inflation.QueryParamsResponse.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_QueryParamsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.inflation.QueryParamsResponse.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsResponse does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.inflation.QueryParamsResponse.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.inflation.QueryParamsResponse.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_QueryParamsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.inflation.QueryParamsResponse.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_QueryParamsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.inflation.QueryParamsResponse", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_QueryParamsResponse) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_QueryParamsResponse) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/inflation/query.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// QueryParamsRequest is request type for the Query/Params RPC method.
+type QueryParamsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *QueryParamsRequest) Reset() {
+ *x = QueryParamsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_inflation_query_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryParamsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryParamsRequest) ProtoMessage() {}
+
+// Deprecated: Use QueryParamsRequest.ProtoReflect.Descriptor instead.
+func (*QueryParamsRequest) Descriptor() ([]byte, []int) {
+ return file_galactica_inflation_query_proto_rawDescGZIP(), []int{0}
+}
+
+// QueryParamsResponse is response type for the Query/Params RPC method.
+type QueryParamsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // params holds all the parameters of this module.
+ Params *Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *QueryParamsResponse) Reset() {
+ *x = QueryParamsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_inflation_query_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryParamsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryParamsResponse) ProtoMessage() {}
+
+// Deprecated: Use QueryParamsResponse.ProtoReflect.Descriptor instead.
+func (*QueryParamsResponse) Descriptor() ([]byte, []int) {
+ return file_galactica_inflation_query_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *QueryParamsResponse) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+var File_galactica_inflation_query_proto protoreflect.FileDescriptor
+
+var file_galactica_inflation_query_proto_rawDesc = []byte{
+ 0x0a, 0x1f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x12, 0x13, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66,
+ 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d,
+ 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2a, 0x63,
+ 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79,
+ 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70,
+ 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x14, 0x0a, 0x12, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x22, 0x55, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61,
+ 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50,
+ 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x32, 0x99, 0x01, 0x0a, 0x05, 0x51, 0x75, 0x65,
+ 0x72, 0x79, 0x12, 0x8f, 0x01, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x27, 0x2e,
+ 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x51, 0x75, 0x65,
+ 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x12, 0x2a, 0x2f, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x2d, 0x63, 0x6f, 0x72, 0x70, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74,
+ 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61,
+ 0x72, 0x61, 0x6d, 0x73, 0x42, 0xb8, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x24,
+ 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x47, 0x49, 0x58, 0xaa, 0x02, 0x13, 0x47, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0xca, 0x02, 0x13, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x49, 0x6e, 0x66,
+ 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xe2, 0x02, 0x1f, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x5c, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42,
+ 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62,
+ 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_inflation_query_proto_rawDescOnce sync.Once
+ file_galactica_inflation_query_proto_rawDescData = file_galactica_inflation_query_proto_rawDesc
+)
+
+func file_galactica_inflation_query_proto_rawDescGZIP() []byte {
+ file_galactica_inflation_query_proto_rawDescOnce.Do(func() {
+ file_galactica_inflation_query_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_inflation_query_proto_rawDescData)
+ })
+ return file_galactica_inflation_query_proto_rawDescData
+}
+
+var file_galactica_inflation_query_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_galactica_inflation_query_proto_goTypes = []interface{}{
+ (*QueryParamsRequest)(nil), // 0: galactica.inflation.QueryParamsRequest
+ (*QueryParamsResponse)(nil), // 1: galactica.inflation.QueryParamsResponse
+ (*Params)(nil), // 2: galactica.inflation.Params
+}
+var file_galactica_inflation_query_proto_depIdxs = []int32{
+ 2, // 0: galactica.inflation.QueryParamsResponse.params:type_name -> galactica.inflation.Params
+ 0, // 1: galactica.inflation.Query.Params:input_type -> galactica.inflation.QueryParamsRequest
+ 1, // 2: galactica.inflation.Query.Params:output_type -> galactica.inflation.QueryParamsResponse
+ 2, // [2:3] is the sub-list for method output_type
+ 1, // [1:2] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_inflation_query_proto_init() }
+func file_galactica_inflation_query_proto_init() {
+ if File_galactica_inflation_query_proto != nil {
+ return
+ }
+ file_galactica_inflation_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_inflation_query_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryParamsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_galactica_inflation_query_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryParamsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_inflation_query_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_galactica_inflation_query_proto_goTypes,
+ DependencyIndexes: file_galactica_inflation_query_proto_depIdxs,
+ MessageInfos: file_galactica_inflation_query_proto_msgTypes,
+ }.Build()
+ File_galactica_inflation_query_proto = out.File
+ file_galactica_inflation_query_proto_rawDesc = nil
+ file_galactica_inflation_query_proto_goTypes = nil
+ file_galactica_inflation_query_proto_depIdxs = nil
+}
diff --git a/api/galactica/inflation/query_grpc.pb.go b/api/galactica/inflation/query_grpc.pb.go
new file mode 100644
index 0000000..79674a9
--- /dev/null
+++ b/api/galactica/inflation/query_grpc.pb.go
@@ -0,0 +1,103 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+
+package inflation
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// QueryClient is the client API for Query service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type QueryClient interface {
+ // Parameters queries the parameters of the module.
+ Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error)
+}
+
+type queryClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewQueryClient(cc grpc.ClientConnInterface) QueryClient {
+ return &queryClient{cc}
+}
+
+func (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) {
+ out := new(QueryParamsResponse)
+ err := c.cc.Invoke(ctx, "/galactica.inflation.Query/Params", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// QueryServer is the server API for Query service.
+// All implementations must embed UnimplementedQueryServer
+// for forward compatibility
+type QueryServer interface {
+ // Parameters queries the parameters of the module.
+ Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error)
+ mustEmbedUnimplementedQueryServer()
+}
+
+// UnimplementedQueryServer must be embedded to have forward compatible implementations.
+type UnimplementedQueryServer struct {
+}
+
+func (UnimplementedQueryServer) Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Params not implemented")
+}
+func (UnimplementedQueryServer) mustEmbedUnimplementedQueryServer() {}
+
+// UnsafeQueryServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to QueryServer will
+// result in compilation errors.
+type UnsafeQueryServer interface {
+ mustEmbedUnimplementedQueryServer()
+}
+
+func RegisterQueryServer(s grpc.ServiceRegistrar, srv QueryServer) {
+ s.RegisterService(&Query_ServiceDesc, srv)
+}
+
+func _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(QueryParamsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(QueryServer).Params(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/galactica.inflation.Query/Params",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(QueryServer).Params(ctx, req.(*QueryParamsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// Query_ServiceDesc is the grpc.ServiceDesc for Query service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var Query_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "galactica.inflation.Query",
+ HandlerType: (*QueryServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "Params",
+ Handler: _Query_Params_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "galactica/inflation/query.proto",
+}
diff --git a/api/galactica/inflation/tx.pulsar.go b/api/galactica/inflation/tx.pulsar.go
new file mode 100644
index 0000000..2f72f43
--- /dev/null
+++ b/api/galactica/inflation/tx.pulsar.go
@@ -0,0 +1,1096 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package inflation
+
+import (
+ _ "cosmossdk.io/api/amino"
+ _ "cosmossdk.io/api/cosmos/msg/v1"
+ fmt "fmt"
+ _ "github.com/cosmos/cosmos-proto"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_MsgUpdateParams protoreflect.MessageDescriptor
+ fd_MsgUpdateParams_authority protoreflect.FieldDescriptor
+ fd_MsgUpdateParams_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_inflation_tx_proto_init()
+ md_MsgUpdateParams = File_galactica_inflation_tx_proto.Messages().ByName("MsgUpdateParams")
+ fd_MsgUpdateParams_authority = md_MsgUpdateParams.Fields().ByName("authority")
+ fd_MsgUpdateParams_params = md_MsgUpdateParams.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_MsgUpdateParams)(nil)
+
+type fastReflection_MsgUpdateParams MsgUpdateParams
+
+func (x *MsgUpdateParams) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParams)(x)
+}
+
+func (x *MsgUpdateParams) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_inflation_tx_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_MsgUpdateParams_messageType fastReflection_MsgUpdateParams_messageType
+var _ protoreflect.MessageType = fastReflection_MsgUpdateParams_messageType{}
+
+type fastReflection_MsgUpdateParams_messageType struct{}
+
+func (x fastReflection_MsgUpdateParams_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParams)(nil)
+}
+func (x fastReflection_MsgUpdateParams_messageType) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParams)
+}
+func (x fastReflection_MsgUpdateParams_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParams
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_MsgUpdateParams) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParams
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_MsgUpdateParams) Type() protoreflect.MessageType {
+ return _fastReflection_MsgUpdateParams_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_MsgUpdateParams) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParams)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_MsgUpdateParams) Interface() protoreflect.ProtoMessage {
+ return (*MsgUpdateParams)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_MsgUpdateParams) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Authority != "" {
+ value := protoreflect.ValueOfString(x.Authority)
+ if !f(fd_MsgUpdateParams_authority, value) {
+ return
+ }
+ }
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_MsgUpdateParams_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_MsgUpdateParams) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.inflation.MsgUpdateParams.authority":
+ return x.Authority != ""
+ case "galactica.inflation.MsgUpdateParams.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.inflation.MsgUpdateParams.authority":
+ x.Authority = ""
+ case "galactica.inflation.MsgUpdateParams.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_MsgUpdateParams) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.inflation.MsgUpdateParams.authority":
+ value := x.Authority
+ return protoreflect.ValueOfString(value)
+ case "galactica.inflation.MsgUpdateParams.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParams does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.inflation.MsgUpdateParams.authority":
+ x.Authority = value.Interface().(string)
+ case "galactica.inflation.MsgUpdateParams.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.inflation.MsgUpdateParams.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ case "galactica.inflation.MsgUpdateParams.authority":
+ panic(fmt.Errorf("field authority of message galactica.inflation.MsgUpdateParams is not mutable"))
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_MsgUpdateParams) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.inflation.MsgUpdateParams.authority":
+ return protoreflect.ValueOfString("")
+ case "galactica.inflation.MsgUpdateParams.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_MsgUpdateParams) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.inflation.MsgUpdateParams", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_MsgUpdateParams) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_MsgUpdateParams) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_MsgUpdateParams) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ l = len(x.Authority)
+ if l > 0 {
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if len(x.Authority) > 0 {
+ i -= len(x.Authority)
+ copy(dAtA[i:], x.Authority)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParams: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParams: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ x.Authority = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+var (
+ md_MsgUpdateParamsResponse protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_inflation_tx_proto_init()
+ md_MsgUpdateParamsResponse = File_galactica_inflation_tx_proto.Messages().ByName("MsgUpdateParamsResponse")
+}
+
+var _ protoreflect.Message = (*fastReflection_MsgUpdateParamsResponse)(nil)
+
+type fastReflection_MsgUpdateParamsResponse MsgUpdateParamsResponse
+
+func (x *MsgUpdateParamsResponse) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParamsResponse)(x)
+}
+
+func (x *MsgUpdateParamsResponse) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_inflation_tx_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_MsgUpdateParamsResponse_messageType fastReflection_MsgUpdateParamsResponse_messageType
+var _ protoreflect.MessageType = fastReflection_MsgUpdateParamsResponse_messageType{}
+
+type fastReflection_MsgUpdateParamsResponse_messageType struct{}
+
+func (x fastReflection_MsgUpdateParamsResponse_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParamsResponse)(nil)
+}
+func (x fastReflection_MsgUpdateParamsResponse_messageType) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParamsResponse)
+}
+func (x fastReflection_MsgUpdateParamsResponse_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParamsResponse
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_MsgUpdateParamsResponse) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParamsResponse
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_MsgUpdateParamsResponse) Type() protoreflect.MessageType {
+ return _fastReflection_MsgUpdateParamsResponse_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_MsgUpdateParamsResponse) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParamsResponse)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_MsgUpdateParamsResponse) Interface() protoreflect.ProtoMessage {
+ return (*MsgUpdateParamsResponse)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_MsgUpdateParamsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_MsgUpdateParamsResponse) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_MsgUpdateParamsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParamsResponse does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_MsgUpdateParamsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.inflation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.inflation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_MsgUpdateParamsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.inflation.MsgUpdateParamsResponse", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_MsgUpdateParamsResponse) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_MsgUpdateParamsResponse) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_MsgUpdateParamsResponse) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParamsResponse: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/inflation/tx.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// MsgUpdateParams is the Msg/UpdateParams request type.
+//
+// Since: cosmos-sdk 0.47
+type MsgUpdateParams struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // authority is the address that controls the module (defaults to x/gov unless overwritten).
+ Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
+ // params defines the module parameters to update.
+ //
+ // NOTE: All parameters must be supplied.
+ Params *Params `protobuf:"bytes,2,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *MsgUpdateParams) Reset() {
+ *x = MsgUpdateParams{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_inflation_tx_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MsgUpdateParams) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MsgUpdateParams) ProtoMessage() {}
+
+// Deprecated: Use MsgUpdateParams.ProtoReflect.Descriptor instead.
+func (*MsgUpdateParams) Descriptor() ([]byte, []int) {
+ return file_galactica_inflation_tx_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *MsgUpdateParams) GetAuthority() string {
+ if x != nil {
+ return x.Authority
+ }
+ return ""
+}
+
+func (x *MsgUpdateParams) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+// MsgUpdateParamsResponse defines the response structure for executing a
+// MsgUpdateParams message.
+//
+// Since: cosmos-sdk 0.47
+type MsgUpdateParamsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *MsgUpdateParamsResponse) Reset() {
+ *x = MsgUpdateParamsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_inflation_tx_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MsgUpdateParamsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MsgUpdateParamsResponse) ProtoMessage() {}
+
+// Deprecated: Use MsgUpdateParamsResponse.ProtoReflect.Descriptor instead.
+func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) {
+ return file_galactica_inflation_tx_proto_rawDescGZIP(), []int{1}
+}
+
+var File_galactica_inflation_tx_proto protoreflect.FileDescriptor
+
+var file_galactica_inflation_tx_proto_rawDesc = []byte{
+ 0x0a, 0x1c, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13,
+ 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6d,
+ 0x73, 0x67, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x19, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f,
+ 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x1a, 0x20, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x22, 0xc3, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72,
+ 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63,
+ 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72,
+ 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x3e,
+ 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b,
+ 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, 0xde, 0x1f,
+ 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x38,
+ 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7,
+ 0xb0, 0x2a, 0x25, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x78, 0x2f, 0x69,
+ 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x32, 0x70, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x62, 0x0a, 0x0c, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x24, 0x2e, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
+ 0x1a, 0x2c, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66,
+ 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05,
+ 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0xb5, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61,
+ 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x24, 0x63, 0x6f,
+ 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67,
+ 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x69, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x47, 0x49, 0x58, 0xaa, 0x02, 0x13, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x2e, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xca, 0x02,
+ 0x13, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x49, 0x6e, 0x66, 0x6c, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0xe2, 0x02, 0x1f, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x5c, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x3a, 0x3a, 0x49, 0x6e, 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_inflation_tx_proto_rawDescOnce sync.Once
+ file_galactica_inflation_tx_proto_rawDescData = file_galactica_inflation_tx_proto_rawDesc
+)
+
+func file_galactica_inflation_tx_proto_rawDescGZIP() []byte {
+ file_galactica_inflation_tx_proto_rawDescOnce.Do(func() {
+ file_galactica_inflation_tx_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_inflation_tx_proto_rawDescData)
+ })
+ return file_galactica_inflation_tx_proto_rawDescData
+}
+
+var file_galactica_inflation_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_galactica_inflation_tx_proto_goTypes = []interface{}{
+ (*MsgUpdateParams)(nil), // 0: galactica.inflation.MsgUpdateParams
+ (*MsgUpdateParamsResponse)(nil), // 1: galactica.inflation.MsgUpdateParamsResponse
+ (*Params)(nil), // 2: galactica.inflation.Params
+}
+var file_galactica_inflation_tx_proto_depIdxs = []int32{
+ 2, // 0: galactica.inflation.MsgUpdateParams.params:type_name -> galactica.inflation.Params
+ 0, // 1: galactica.inflation.Msg.UpdateParams:input_type -> galactica.inflation.MsgUpdateParams
+ 1, // 2: galactica.inflation.Msg.UpdateParams:output_type -> galactica.inflation.MsgUpdateParamsResponse
+ 2, // [2:3] is the sub-list for method output_type
+ 1, // [1:2] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_inflation_tx_proto_init() }
+func file_galactica_inflation_tx_proto_init() {
+ if File_galactica_inflation_tx_proto != nil {
+ return
+ }
+ file_galactica_inflation_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_inflation_tx_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MsgUpdateParams); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_galactica_inflation_tx_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MsgUpdateParamsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_inflation_tx_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_galactica_inflation_tx_proto_goTypes,
+ DependencyIndexes: file_galactica_inflation_tx_proto_depIdxs,
+ MessageInfos: file_galactica_inflation_tx_proto_msgTypes,
+ }.Build()
+ File_galactica_inflation_tx_proto = out.File
+ file_galactica_inflation_tx_proto_rawDesc = nil
+ file_galactica_inflation_tx_proto_goTypes = nil
+ file_galactica_inflation_tx_proto_depIdxs = nil
+}
diff --git a/api/galactica/inflation/tx_grpc.pb.go b/api/galactica/inflation/tx_grpc.pb.go
new file mode 100644
index 0000000..6ccb3dc
--- /dev/null
+++ b/api/galactica/inflation/tx_grpc.pb.go
@@ -0,0 +1,109 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+
+package inflation
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// MsgClient is the client API for Msg service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type MsgClient interface {
+ // UpdateParams defines a (governance) operation for updating the module
+ // parameters. The authority defaults to the x/gov module account.
+ //
+ // Since: cosmos-sdk 0.47
+ UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
+}
+
+type msgClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewMsgClient(cc grpc.ClientConnInterface) MsgClient {
+ return &msgClient{cc}
+}
+
+func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
+ out := new(MsgUpdateParamsResponse)
+ err := c.cc.Invoke(ctx, "/galactica.inflation.Msg/UpdateParams", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// MsgServer is the server API for Msg service.
+// All implementations must embed UnimplementedMsgServer
+// for forward compatibility
+type MsgServer interface {
+ // UpdateParams defines a (governance) operation for updating the module
+ // parameters. The authority defaults to the x/gov module account.
+ //
+ // Since: cosmos-sdk 0.47
+ UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
+ mustEmbedUnimplementedMsgServer()
+}
+
+// UnimplementedMsgServer must be embedded to have forward compatible implementations.
+type UnimplementedMsgServer struct {
+}
+
+func (UnimplementedMsgServer) UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
+}
+func (UnimplementedMsgServer) mustEmbedUnimplementedMsgServer() {}
+
+// UnsafeMsgServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to MsgServer will
+// result in compilation errors.
+type UnsafeMsgServer interface {
+ mustEmbedUnimplementedMsgServer()
+}
+
+func RegisterMsgServer(s grpc.ServiceRegistrar, srv MsgServer) {
+ s.RegisterService(&Msg_ServiceDesc, srv)
+}
+
+func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(MsgUpdateParams)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(MsgServer).UpdateParams(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/galactica.inflation.Msg/UpdateParams",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// Msg_ServiceDesc is the grpc.ServiceDesc for Msg service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var Msg_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "galactica.inflation.Msg",
+ HandlerType: (*MsgServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "UpdateParams",
+ Handler: _Msg_UpdateParams_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "galactica/inflation/tx.proto",
+}
diff --git a/api/galactica/reputation/genesis.pulsar.go b/api/galactica/reputation/genesis.pulsar.go
new file mode 100644
index 0000000..2e8eac1
--- /dev/null
+++ b/api/galactica/reputation/genesis.pulsar.go
@@ -0,0 +1,598 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package reputation
+
+import (
+ _ "cosmossdk.io/api/amino"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_GenesisState protoreflect.MessageDescriptor
+ fd_GenesisState_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_reputation_genesis_proto_init()
+ md_GenesisState = File_galactica_reputation_genesis_proto.Messages().ByName("GenesisState")
+ fd_GenesisState_params = md_GenesisState.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_GenesisState)(nil)
+
+type fastReflection_GenesisState GenesisState
+
+func (x *GenesisState) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_GenesisState)(x)
+}
+
+func (x *GenesisState) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_reputation_genesis_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_GenesisState_messageType fastReflection_GenesisState_messageType
+var _ protoreflect.MessageType = fastReflection_GenesisState_messageType{}
+
+type fastReflection_GenesisState_messageType struct{}
+
+func (x fastReflection_GenesisState_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_GenesisState)(nil)
+}
+func (x fastReflection_GenesisState_messageType) New() protoreflect.Message {
+ return new(fastReflection_GenesisState)
+}
+func (x fastReflection_GenesisState_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_GenesisState
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_GenesisState) Descriptor() protoreflect.MessageDescriptor {
+ return md_GenesisState
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_GenesisState) Type() protoreflect.MessageType {
+ return _fastReflection_GenesisState_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_GenesisState) New() protoreflect.Message {
+ return new(fastReflection_GenesisState)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_GenesisState) Interface() protoreflect.ProtoMessage {
+ return (*GenesisState)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_GenesisState) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_GenesisState_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_GenesisState) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.reputation.GenesisState.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.reputation.GenesisState.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_GenesisState) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.reputation.GenesisState.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.GenesisState does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.reputation.GenesisState.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.reputation.GenesisState.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_GenesisState) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.reputation.GenesisState.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.GenesisState"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.GenesisState does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_GenesisState) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.reputation.GenesisState", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_GenesisState) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_GenesisState) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_GenesisState) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_GenesisState) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*GenesisState)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GenesisState: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GenesisState: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/reputation/genesis.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// GenesisState defines the reputation module's genesis state.
+type GenesisState struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // params defines all the parameters of the module.
+ Params *Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *GenesisState) Reset() {
+ *x = GenesisState{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_reputation_genesis_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GenesisState) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GenesisState) ProtoMessage() {}
+
+// Deprecated: Use GenesisState.ProtoReflect.Descriptor instead.
+func (*GenesisState) Descriptor() ([]byte, []int) {
+ return file_galactica_reputation_genesis_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *GenesisState) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+var File_galactica_reputation_genesis_proto protoreflect.FileDescriptor
+
+var file_galactica_reputation_genesis_proto_rawDesc = []byte{
+ 0x0a, 0x22, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x14, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e,
+ 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e,
+ 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67,
+ 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72,
+ 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x4f, 0x0a, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69,
+ 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61,
+ 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52,
+ 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0xc0, 0x01, 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x2e,
+ 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x25, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e,
+ 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x47, 0x52,
+ 0x58, 0xaa, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x52, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xca, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xe2,
+ 0x02, 0x20, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0xea, 0x02, 0x15, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a,
+ 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x33,
+}
+
+var (
+ file_galactica_reputation_genesis_proto_rawDescOnce sync.Once
+ file_galactica_reputation_genesis_proto_rawDescData = file_galactica_reputation_genesis_proto_rawDesc
+)
+
+func file_galactica_reputation_genesis_proto_rawDescGZIP() []byte {
+ file_galactica_reputation_genesis_proto_rawDescOnce.Do(func() {
+ file_galactica_reputation_genesis_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_reputation_genesis_proto_rawDescData)
+ })
+ return file_galactica_reputation_genesis_proto_rawDescData
+}
+
+var file_galactica_reputation_genesis_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_reputation_genesis_proto_goTypes = []interface{}{
+ (*GenesisState)(nil), // 0: galactica.reputation.GenesisState
+ (*Params)(nil), // 1: galactica.reputation.Params
+}
+var file_galactica_reputation_genesis_proto_depIdxs = []int32{
+ 1, // 0: galactica.reputation.GenesisState.params:type_name -> galactica.reputation.Params
+ 1, // [1:1] is the sub-list for method output_type
+ 1, // [1:1] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_reputation_genesis_proto_init() }
+func file_galactica_reputation_genesis_proto_init() {
+ if File_galactica_reputation_genesis_proto != nil {
+ return
+ }
+ file_galactica_reputation_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_reputation_genesis_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GenesisState); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_reputation_genesis_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_reputation_genesis_proto_goTypes,
+ DependencyIndexes: file_galactica_reputation_genesis_proto_depIdxs,
+ MessageInfos: file_galactica_reputation_genesis_proto_msgTypes,
+ }.Build()
+ File_galactica_reputation_genesis_proto = out.File
+ file_galactica_reputation_genesis_proto_rawDesc = nil
+ file_galactica_reputation_genesis_proto_goTypes = nil
+ file_galactica_reputation_genesis_proto_depIdxs = nil
+}
diff --git a/api/galactica/reputation/module/module.pulsar.go b/api/galactica/reputation/module/module.pulsar.go
new file mode 100644
index 0000000..9eeab73
--- /dev/null
+++ b/api/galactica/reputation/module/module.pulsar.go
@@ -0,0 +1,580 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package module
+
+import (
+ _ "cosmossdk.io/api/cosmos/app/v1alpha1"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_Module protoreflect.MessageDescriptor
+ fd_Module_authority protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_reputation_module_module_proto_init()
+ md_Module = File_galactica_reputation_module_module_proto.Messages().ByName("Module")
+ fd_Module_authority = md_Module.Fields().ByName("authority")
+}
+
+var _ protoreflect.Message = (*fastReflection_Module)(nil)
+
+type fastReflection_Module Module
+
+func (x *Module) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_Module)(x)
+}
+
+func (x *Module) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_reputation_module_module_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_Module_messageType fastReflection_Module_messageType
+var _ protoreflect.MessageType = fastReflection_Module_messageType{}
+
+type fastReflection_Module_messageType struct{}
+
+func (x fastReflection_Module_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_Module)(nil)
+}
+func (x fastReflection_Module_messageType) New() protoreflect.Message {
+ return new(fastReflection_Module)
+}
+func (x fastReflection_Module_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_Module
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_Module) Descriptor() protoreflect.MessageDescriptor {
+ return md_Module
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_Module) Type() protoreflect.MessageType {
+ return _fastReflection_Module_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_Module) New() protoreflect.Message {
+ return new(fastReflection_Module)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_Module) Interface() protoreflect.ProtoMessage {
+ return (*Module)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_Module) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Authority != "" {
+ value := protoreflect.ValueOfString(x.Authority)
+ if !f(fd_Module_authority, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_Module) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.reputation.module.Module.authority":
+ return x.Authority != ""
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.reputation.module.Module.authority":
+ x.Authority = ""
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_Module) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.reputation.module.Module.authority":
+ value := x.Authority
+ return protoreflect.ValueOfString(value)
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.module.Module does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.reputation.module.Module.authority":
+ x.Authority = value.Interface().(string)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.reputation.module.Module.authority":
+ panic(fmt.Errorf("field authority of message galactica.reputation.module.Module is not mutable"))
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_Module) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.reputation.module.Module.authority":
+ return protoreflect.ValueOfString("")
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.module.Module"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.module.Module does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_Module) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.reputation.module.Module", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_Module) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Module) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_Module) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_Module) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ l = len(x.Authority)
+ if l > 0 {
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if len(x.Authority) > 0 {
+ i -= len(x.Authority)
+ copy(dAtA[i:], x.Authority)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*Module)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Module: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ x.Authority = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/reputation/module/module.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Module is the config object for the module.
+type Module struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // authority defines the custom module authority. If not set, defaults to the governance module.
+ Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
+}
+
+func (x *Module) Reset() {
+ *x = Module{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_reputation_module_module_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Module) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Module) ProtoMessage() {}
+
+// Deprecated: Use Module.ProtoReflect.Descriptor instead.
+func (*Module) Descriptor() ([]byte, []int) {
+ return file_galactica_reputation_module_module_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Module) GetAuthority() string {
+ if x != nil {
+ return x.Authority
+ }
+ return ""
+}
+
+var File_galactica_reputation_module_module_proto protoreflect.FileDescriptor
+
+var file_galactica_reputation_module_module_proto_rawDesc = []byte{
+ 0x0a, 0x28, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x6d, 0x6f,
+ 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1b, 0x67, 0x61, 0x6c, 0x61,
+ 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x1a, 0x20, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f,
+ 0x61, 0x70, 0x70, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x6d, 0x6f, 0x64,
+ 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x60, 0x0a, 0x06, 0x4d, 0x6f, 0x64,
+ 0x75, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74,
+ 0x79, 0x3a, 0x38, 0xba, 0xc0, 0x96, 0xda, 0x01, 0x32, 0x0a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75,
+ 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2d,
+ 0x63, 0x6f, 0x72, 0x70, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x78,
+ 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0xea, 0x01, 0x0a, 0x1f,
+ 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x42,
+ 0x0b, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2c,
+ 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0xa2, 0x02, 0x03, 0x47,
+ 0x52, 0x4d, 0xaa, 0x02, 0x1b, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x52,
+ 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
+ 0xca, 0x02, 0x1b, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65, 0x70,
+ 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0xe2, 0x02,
+ 0x27, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65, 0x70, 0x75, 0x74,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x47, 0x50, 0x42,
+ 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1d, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x3a, 0x3a, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_reputation_module_module_proto_rawDescOnce sync.Once
+ file_galactica_reputation_module_module_proto_rawDescData = file_galactica_reputation_module_module_proto_rawDesc
+)
+
+func file_galactica_reputation_module_module_proto_rawDescGZIP() []byte {
+ file_galactica_reputation_module_module_proto_rawDescOnce.Do(func() {
+ file_galactica_reputation_module_module_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_reputation_module_module_proto_rawDescData)
+ })
+ return file_galactica_reputation_module_module_proto_rawDescData
+}
+
+var file_galactica_reputation_module_module_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_reputation_module_module_proto_goTypes = []interface{}{
+ (*Module)(nil), // 0: galactica.reputation.module.Module
+}
+var file_galactica_reputation_module_module_proto_depIdxs = []int32{
+ 0, // [0:0] is the sub-list for method output_type
+ 0, // [0:0] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_galactica_reputation_module_module_proto_init() }
+func file_galactica_reputation_module_module_proto_init() {
+ if File_galactica_reputation_module_module_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_reputation_module_module_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Module); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_reputation_module_module_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_reputation_module_module_proto_goTypes,
+ DependencyIndexes: file_galactica_reputation_module_module_proto_depIdxs,
+ MessageInfos: file_galactica_reputation_module_module_proto_msgTypes,
+ }.Build()
+ File_galactica_reputation_module_module_proto = out.File
+ file_galactica_reputation_module_module_proto_rawDesc = nil
+ file_galactica_reputation_module_module_proto_goTypes = nil
+ file_galactica_reputation_module_module_proto_depIdxs = nil
+}
diff --git a/api/galactica/reputation/params.pulsar.go b/api/galactica/reputation/params.pulsar.go
new file mode 100644
index 0000000..5f907fc
--- /dev/null
+++ b/api/galactica/reputation/params.pulsar.go
@@ -0,0 +1,501 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package reputation
+
+import (
+ _ "cosmossdk.io/api/amino"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_Params protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_reputation_params_proto_init()
+ md_Params = File_galactica_reputation_params_proto.Messages().ByName("Params")
+}
+
+var _ protoreflect.Message = (*fastReflection_Params)(nil)
+
+type fastReflection_Params Params
+
+func (x *Params) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_Params)(x)
+}
+
+func (x *Params) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_reputation_params_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_Params_messageType fastReflection_Params_messageType
+var _ protoreflect.MessageType = fastReflection_Params_messageType{}
+
+type fastReflection_Params_messageType struct{}
+
+func (x fastReflection_Params_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_Params)(nil)
+}
+func (x fastReflection_Params_messageType) New() protoreflect.Message {
+ return new(fastReflection_Params)
+}
+func (x fastReflection_Params_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_Params
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_Params) Descriptor() protoreflect.MessageDescriptor {
+ return md_Params
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_Params) Type() protoreflect.MessageType {
+ return _fastReflection_Params_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_Params) New() protoreflect.Message {
+ return new(fastReflection_Params)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_Params) Interface() protoreflect.ProtoMessage {
+ return (*Params)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_Params) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_Params) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_Params) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.Params does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_Params) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.Params"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.Params does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_Params) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.reputation.Params", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_Params) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_Params) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_Params) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*Params)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Params: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Params: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/reputation/params.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Params defines the parameters for the module.
+type Params struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Params) Reset() {
+ *x = Params{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_reputation_params_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Params) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Params) ProtoMessage() {}
+
+// Deprecated: Use Params.ProtoReflect.Descriptor instead.
+func (*Params) Descriptor() ([]byte, []int) {
+ return file_galactica_reputation_params_proto_rawDescGZIP(), []int{0}
+}
+
+var File_galactica_reputation_params_proto protoreflect.FileDescriptor
+
+var file_galactica_reputation_params_proto_rawDesc = []byte{
+ 0x0a, 0x21, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x12, 0x14, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72,
+ 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f,
+ 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f,
+ 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x22, 0x30, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x26, 0xe8, 0xa0,
+ 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x1d, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x2f, 0x78, 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x50, 0x61,
+ 0x72, 0x61, 0x6d, 0x73, 0x42, 0xbf, 0x01, 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x42, 0x0b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
+ 0x5a, 0x25, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61,
+ 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70,
+ 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x47, 0x52, 0x58, 0xaa, 0x02, 0x14,
+ 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0xca, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x5c, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xe2, 0x02, 0x20, 0x47, 0x61,
+ 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02,
+ 0x15, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a, 0x52, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_reputation_params_proto_rawDescOnce sync.Once
+ file_galactica_reputation_params_proto_rawDescData = file_galactica_reputation_params_proto_rawDesc
+)
+
+func file_galactica_reputation_params_proto_rawDescGZIP() []byte {
+ file_galactica_reputation_params_proto_rawDescOnce.Do(func() {
+ file_galactica_reputation_params_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_reputation_params_proto_rawDescData)
+ })
+ return file_galactica_reputation_params_proto_rawDescData
+}
+
+var file_galactica_reputation_params_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_galactica_reputation_params_proto_goTypes = []interface{}{
+ (*Params)(nil), // 0: galactica.reputation.Params
+}
+var file_galactica_reputation_params_proto_depIdxs = []int32{
+ 0, // [0:0] is the sub-list for method output_type
+ 0, // [0:0] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_galactica_reputation_params_proto_init() }
+func file_galactica_reputation_params_proto_init() {
+ if File_galactica_reputation_params_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_reputation_params_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Params); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_reputation_params_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_galactica_reputation_params_proto_goTypes,
+ DependencyIndexes: file_galactica_reputation_params_proto_depIdxs,
+ MessageInfos: file_galactica_reputation_params_proto_msgTypes,
+ }.Build()
+ File_galactica_reputation_params_proto = out.File
+ file_galactica_reputation_params_proto_rawDesc = nil
+ file_galactica_reputation_params_proto_goTypes = nil
+ file_galactica_reputation_params_proto_depIdxs = nil
+}
diff --git a/api/galactica/reputation/query.pulsar.go b/api/galactica/reputation/query.pulsar.go
new file mode 100644
index 0000000..a92efcb
--- /dev/null
+++ b/api/galactica/reputation/query.pulsar.go
@@ -0,0 +1,1014 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package reputation
+
+import (
+ _ "cosmossdk.io/api/amino"
+ _ "cosmossdk.io/api/cosmos/base/query/v1beta1"
+ fmt "fmt"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_QueryParamsRequest protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_reputation_query_proto_init()
+ md_QueryParamsRequest = File_galactica_reputation_query_proto.Messages().ByName("QueryParamsRequest")
+}
+
+var _ protoreflect.Message = (*fastReflection_QueryParamsRequest)(nil)
+
+type fastReflection_QueryParamsRequest QueryParamsRequest
+
+func (x *QueryParamsRequest) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_QueryParamsRequest)(x)
+}
+
+func (x *QueryParamsRequest) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_reputation_query_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_QueryParamsRequest_messageType fastReflection_QueryParamsRequest_messageType
+var _ protoreflect.MessageType = fastReflection_QueryParamsRequest_messageType{}
+
+type fastReflection_QueryParamsRequest_messageType struct{}
+
+func (x fastReflection_QueryParamsRequest_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_QueryParamsRequest)(nil)
+}
+func (x fastReflection_QueryParamsRequest_messageType) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsRequest)
+}
+func (x fastReflection_QueryParamsRequest_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsRequest
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_QueryParamsRequest) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsRequest
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_QueryParamsRequest) Type() protoreflect.MessageType {
+ return _fastReflection_QueryParamsRequest_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_QueryParamsRequest) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsRequest)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_QueryParamsRequest) Interface() protoreflect.ProtoMessage {
+ return (*QueryParamsRequest)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_QueryParamsRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_QueryParamsRequest) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_QueryParamsRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsRequest does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_QueryParamsRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsRequest"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsRequest does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_QueryParamsRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.reputation.QueryParamsRequest", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_QueryParamsRequest) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsRequest) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_QueryParamsRequest) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsRequest)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+var (
+ md_QueryParamsResponse protoreflect.MessageDescriptor
+ fd_QueryParamsResponse_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_reputation_query_proto_init()
+ md_QueryParamsResponse = File_galactica_reputation_query_proto.Messages().ByName("QueryParamsResponse")
+ fd_QueryParamsResponse_params = md_QueryParamsResponse.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_QueryParamsResponse)(nil)
+
+type fastReflection_QueryParamsResponse QueryParamsResponse
+
+func (x *QueryParamsResponse) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_QueryParamsResponse)(x)
+}
+
+func (x *QueryParamsResponse) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_reputation_query_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_QueryParamsResponse_messageType fastReflection_QueryParamsResponse_messageType
+var _ protoreflect.MessageType = fastReflection_QueryParamsResponse_messageType{}
+
+type fastReflection_QueryParamsResponse_messageType struct{}
+
+func (x fastReflection_QueryParamsResponse_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_QueryParamsResponse)(nil)
+}
+func (x fastReflection_QueryParamsResponse_messageType) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsResponse)
+}
+func (x fastReflection_QueryParamsResponse_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsResponse
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_QueryParamsResponse) Descriptor() protoreflect.MessageDescriptor {
+ return md_QueryParamsResponse
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_QueryParamsResponse) Type() protoreflect.MessageType {
+ return _fastReflection_QueryParamsResponse_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_QueryParamsResponse) New() protoreflect.Message {
+ return new(fastReflection_QueryParamsResponse)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_QueryParamsResponse) Interface() protoreflect.ProtoMessage {
+ return (*QueryParamsResponse)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_QueryParamsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_QueryParamsResponse_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_QueryParamsResponse) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.reputation.QueryParamsResponse.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.reputation.QueryParamsResponse.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_QueryParamsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.reputation.QueryParamsResponse.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsResponse does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.reputation.QueryParamsResponse.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.reputation.QueryParamsResponse.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_QueryParamsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.reputation.QueryParamsResponse.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.QueryParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.QueryParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_QueryParamsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.reputation.QueryParamsResponse", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_QueryParamsResponse) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_QueryParamsResponse) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_QueryParamsResponse) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*QueryParamsResponse)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/reputation/query.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// QueryParamsRequest is request type for the Query/Params RPC method.
+type QueryParamsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *QueryParamsRequest) Reset() {
+ *x = QueryParamsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_reputation_query_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryParamsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryParamsRequest) ProtoMessage() {}
+
+// Deprecated: Use QueryParamsRequest.ProtoReflect.Descriptor instead.
+func (*QueryParamsRequest) Descriptor() ([]byte, []int) {
+ return file_galactica_reputation_query_proto_rawDescGZIP(), []int{0}
+}
+
+// QueryParamsResponse is response type for the Query/Params RPC method.
+type QueryParamsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // params holds all the parameters of this module.
+ Params *Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *QueryParamsResponse) Reset() {
+ *x = QueryParamsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_reputation_query_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryParamsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryParamsResponse) ProtoMessage() {}
+
+// Deprecated: Use QueryParamsResponse.ProtoReflect.Descriptor instead.
+func (*QueryParamsResponse) Descriptor() ([]byte, []int) {
+ return file_galactica_reputation_query_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *QueryParamsResponse) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+var File_galactica_reputation_query_proto protoreflect.FileDescriptor
+
+var file_galactica_reputation_query_proto_rawDesc = []byte{
+ 0x0a, 0x20, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x12, 0x14, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f,
+ 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67,
+ 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e,
+ 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x2a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x71, 0x75, 0x65,
+ 0x72, 0x79, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x67, 0x69, 0x6e,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x67, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x14,
+ 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x22, 0x56, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72,
+ 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x06, 0x70,
+ 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x61,
+ 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8,
+ 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x32, 0x9c, 0x01, 0x0a,
+ 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x92, 0x01, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d,
+ 0x73, 0x12, 0x28, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61,
+ 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x67, 0x61,
+ 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x33, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x12, 0x2b,
+ 0x2f, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2d, 0x63, 0x6f, 0x72, 0x70, 0x2f,
+ 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0xbe, 0x01, 0x0a, 0x18,
+ 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x25, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64,
+ 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xa2, 0x02, 0x03,
+ 0x47, 0x52, 0x58, 0xaa, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e,
+ 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xca, 0x02, 0x14, 0x47, 0x61, 0x6c,
+ 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0xe2, 0x02, 0x20, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x15, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x3a, 0x3a, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_galactica_reputation_query_proto_rawDescOnce sync.Once
+ file_galactica_reputation_query_proto_rawDescData = file_galactica_reputation_query_proto_rawDesc
+)
+
+func file_galactica_reputation_query_proto_rawDescGZIP() []byte {
+ file_galactica_reputation_query_proto_rawDescOnce.Do(func() {
+ file_galactica_reputation_query_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_reputation_query_proto_rawDescData)
+ })
+ return file_galactica_reputation_query_proto_rawDescData
+}
+
+var file_galactica_reputation_query_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_galactica_reputation_query_proto_goTypes = []interface{}{
+ (*QueryParamsRequest)(nil), // 0: galactica.reputation.QueryParamsRequest
+ (*QueryParamsResponse)(nil), // 1: galactica.reputation.QueryParamsResponse
+ (*Params)(nil), // 2: galactica.reputation.Params
+}
+var file_galactica_reputation_query_proto_depIdxs = []int32{
+ 2, // 0: galactica.reputation.QueryParamsResponse.params:type_name -> galactica.reputation.Params
+ 0, // 1: galactica.reputation.Query.Params:input_type -> galactica.reputation.QueryParamsRequest
+ 1, // 2: galactica.reputation.Query.Params:output_type -> galactica.reputation.QueryParamsResponse
+ 2, // [2:3] is the sub-list for method output_type
+ 1, // [1:2] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_reputation_query_proto_init() }
+func file_galactica_reputation_query_proto_init() {
+ if File_galactica_reputation_query_proto != nil {
+ return
+ }
+ file_galactica_reputation_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_reputation_query_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryParamsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_galactica_reputation_query_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryParamsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_reputation_query_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_galactica_reputation_query_proto_goTypes,
+ DependencyIndexes: file_galactica_reputation_query_proto_depIdxs,
+ MessageInfos: file_galactica_reputation_query_proto_msgTypes,
+ }.Build()
+ File_galactica_reputation_query_proto = out.File
+ file_galactica_reputation_query_proto_rawDesc = nil
+ file_galactica_reputation_query_proto_goTypes = nil
+ file_galactica_reputation_query_proto_depIdxs = nil
+}
diff --git a/api/galactica/reputation/query_grpc.pb.go b/api/galactica/reputation/query_grpc.pb.go
new file mode 100644
index 0000000..462fd48
--- /dev/null
+++ b/api/galactica/reputation/query_grpc.pb.go
@@ -0,0 +1,103 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+
+package reputation
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// QueryClient is the client API for Query service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type QueryClient interface {
+ // Parameters queries the parameters of the module.
+ Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error)
+}
+
+type queryClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewQueryClient(cc grpc.ClientConnInterface) QueryClient {
+ return &queryClient{cc}
+}
+
+func (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) {
+ out := new(QueryParamsResponse)
+ err := c.cc.Invoke(ctx, "/galactica.reputation.Query/Params", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// QueryServer is the server API for Query service.
+// All implementations must embed UnimplementedQueryServer
+// for forward compatibility
+type QueryServer interface {
+ // Parameters queries the parameters of the module.
+ Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error)
+ mustEmbedUnimplementedQueryServer()
+}
+
+// UnimplementedQueryServer must be embedded to have forward compatible implementations.
+type UnimplementedQueryServer struct {
+}
+
+func (UnimplementedQueryServer) Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Params not implemented")
+}
+func (UnimplementedQueryServer) mustEmbedUnimplementedQueryServer() {}
+
+// UnsafeQueryServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to QueryServer will
+// result in compilation errors.
+type UnsafeQueryServer interface {
+ mustEmbedUnimplementedQueryServer()
+}
+
+func RegisterQueryServer(s grpc.ServiceRegistrar, srv QueryServer) {
+ s.RegisterService(&Query_ServiceDesc, srv)
+}
+
+func _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(QueryParamsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(QueryServer).Params(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/galactica.reputation.Query/Params",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(QueryServer).Params(ctx, req.(*QueryParamsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// Query_ServiceDesc is the grpc.ServiceDesc for Query service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var Query_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "galactica.reputation.Query",
+ HandlerType: (*QueryServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "Params",
+ Handler: _Query_Params_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "galactica/reputation/query.proto",
+}
diff --git a/api/galactica/reputation/tx.pulsar.go b/api/galactica/reputation/tx.pulsar.go
new file mode 100644
index 0000000..a9e16a8
--- /dev/null
+++ b/api/galactica/reputation/tx.pulsar.go
@@ -0,0 +1,1097 @@
+// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
+package reputation
+
+import (
+ _ "cosmossdk.io/api/amino"
+ _ "cosmossdk.io/api/cosmos/msg/v1"
+ fmt "fmt"
+ _ "github.com/cosmos/cosmos-proto"
+ runtime "github.com/cosmos/cosmos-proto/runtime"
+ _ "github.com/cosmos/gogoproto/gogoproto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoiface "google.golang.org/protobuf/runtime/protoiface"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ reflect "reflect"
+ sync "sync"
+)
+
+var (
+ md_MsgUpdateParams protoreflect.MessageDescriptor
+ fd_MsgUpdateParams_authority protoreflect.FieldDescriptor
+ fd_MsgUpdateParams_params protoreflect.FieldDescriptor
+)
+
+func init() {
+ file_galactica_reputation_tx_proto_init()
+ md_MsgUpdateParams = File_galactica_reputation_tx_proto.Messages().ByName("MsgUpdateParams")
+ fd_MsgUpdateParams_authority = md_MsgUpdateParams.Fields().ByName("authority")
+ fd_MsgUpdateParams_params = md_MsgUpdateParams.Fields().ByName("params")
+}
+
+var _ protoreflect.Message = (*fastReflection_MsgUpdateParams)(nil)
+
+type fastReflection_MsgUpdateParams MsgUpdateParams
+
+func (x *MsgUpdateParams) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParams)(x)
+}
+
+func (x *MsgUpdateParams) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_reputation_tx_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_MsgUpdateParams_messageType fastReflection_MsgUpdateParams_messageType
+var _ protoreflect.MessageType = fastReflection_MsgUpdateParams_messageType{}
+
+type fastReflection_MsgUpdateParams_messageType struct{}
+
+func (x fastReflection_MsgUpdateParams_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParams)(nil)
+}
+func (x fastReflection_MsgUpdateParams_messageType) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParams)
+}
+func (x fastReflection_MsgUpdateParams_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParams
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_MsgUpdateParams) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParams
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_MsgUpdateParams) Type() protoreflect.MessageType {
+ return _fastReflection_MsgUpdateParams_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_MsgUpdateParams) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParams)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_MsgUpdateParams) Interface() protoreflect.ProtoMessage {
+ return (*MsgUpdateParams)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_MsgUpdateParams) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+ if x.Authority != "" {
+ value := protoreflect.ValueOfString(x.Authority)
+ if !f(fd_MsgUpdateParams_authority, value) {
+ return
+ }
+ }
+ if x.Params != nil {
+ value := protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ if !f(fd_MsgUpdateParams_params, value) {
+ return
+ }
+ }
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_MsgUpdateParams) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ case "galactica.reputation.MsgUpdateParams.authority":
+ return x.Authority != ""
+ case "galactica.reputation.MsgUpdateParams.params":
+ return x.Params != nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ case "galactica.reputation.MsgUpdateParams.authority":
+ x.Authority = ""
+ case "galactica.reputation.MsgUpdateParams.params":
+ x.Params = nil
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_MsgUpdateParams) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ case "galactica.reputation.MsgUpdateParams.authority":
+ value := x.Authority
+ return protoreflect.ValueOfString(value)
+ case "galactica.reputation.MsgUpdateParams.params":
+ value := x.Params
+ return protoreflect.ValueOfMessage(value.ProtoReflect())
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParams does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ case "galactica.reputation.MsgUpdateParams.authority":
+ x.Authority = value.Interface().(string)
+ case "galactica.reputation.MsgUpdateParams.params":
+ x.Params = value.Message().Interface().(*Params)
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.reputation.MsgUpdateParams.params":
+ if x.Params == nil {
+ x.Params = new(Params)
+ }
+ return protoreflect.ValueOfMessage(x.Params.ProtoReflect())
+ case "galactica.reputation.MsgUpdateParams.authority":
+ panic(fmt.Errorf("field authority of message galactica.reputation.MsgUpdateParams is not mutable"))
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_MsgUpdateParams) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ case "galactica.reputation.MsgUpdateParams.authority":
+ return protoreflect.ValueOfString("")
+ case "galactica.reputation.MsgUpdateParams.params":
+ m := new(Params)
+ return protoreflect.ValueOfMessage(m.ProtoReflect())
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParams"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParams does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_MsgUpdateParams) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.reputation.MsgUpdateParams", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_MsgUpdateParams) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParams) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_MsgUpdateParams) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_MsgUpdateParams) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ l = len(x.Authority)
+ if l > 0 {
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.Params != nil {
+ l = options.Size(x.Params)
+ n += 1 + l + runtime.Sov(uint64(l))
+ }
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if x.Params != nil {
+ encoded, err := options.Marshal(x.Params)
+ if err != nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, err
+ }
+ i -= len(encoded)
+ copy(dAtA[i:], encoded)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if len(x.Authority) > 0 {
+ i -= len(x.Authority)
+ copy(dAtA[i:], x.Authority)
+ i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority)))
+ i--
+ dAtA[i] = 0xa
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParams)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParams: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParams: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ x.Authority = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if postIndex > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if x.Params == nil {
+ x.Params = &Params{}
+ }
+ if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+var (
+ md_MsgUpdateParamsResponse protoreflect.MessageDescriptor
+)
+
+func init() {
+ file_galactica_reputation_tx_proto_init()
+ md_MsgUpdateParamsResponse = File_galactica_reputation_tx_proto.Messages().ByName("MsgUpdateParamsResponse")
+}
+
+var _ protoreflect.Message = (*fastReflection_MsgUpdateParamsResponse)(nil)
+
+type fastReflection_MsgUpdateParamsResponse MsgUpdateParamsResponse
+
+func (x *MsgUpdateParamsResponse) ProtoReflect() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParamsResponse)(x)
+}
+
+func (x *MsgUpdateParamsResponse) slowProtoReflect() protoreflect.Message {
+ mi := &file_galactica_reputation_tx_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+var _fastReflection_MsgUpdateParamsResponse_messageType fastReflection_MsgUpdateParamsResponse_messageType
+var _ protoreflect.MessageType = fastReflection_MsgUpdateParamsResponse_messageType{}
+
+type fastReflection_MsgUpdateParamsResponse_messageType struct{}
+
+func (x fastReflection_MsgUpdateParamsResponse_messageType) Zero() protoreflect.Message {
+ return (*fastReflection_MsgUpdateParamsResponse)(nil)
+}
+func (x fastReflection_MsgUpdateParamsResponse_messageType) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParamsResponse)
+}
+func (x fastReflection_MsgUpdateParamsResponse_messageType) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParamsResponse
+}
+
+// Descriptor returns message descriptor, which contains only the protobuf
+// type information for the message.
+func (x *fastReflection_MsgUpdateParamsResponse) Descriptor() protoreflect.MessageDescriptor {
+ return md_MsgUpdateParamsResponse
+}
+
+// Type returns the message type, which encapsulates both Go and protobuf
+// type information. If the Go type information is not needed,
+// it is recommended that the message descriptor be used instead.
+func (x *fastReflection_MsgUpdateParamsResponse) Type() protoreflect.MessageType {
+ return _fastReflection_MsgUpdateParamsResponse_messageType
+}
+
+// New returns a newly allocated and mutable empty message.
+func (x *fastReflection_MsgUpdateParamsResponse) New() protoreflect.Message {
+ return new(fastReflection_MsgUpdateParamsResponse)
+}
+
+// Interface unwraps the message reflection interface and
+// returns the underlying ProtoMessage interface.
+func (x *fastReflection_MsgUpdateParamsResponse) Interface() protoreflect.ProtoMessage {
+ return (*MsgUpdateParamsResponse)(x)
+}
+
+// Range iterates over every populated field in an undefined order,
+// calling f for each field descriptor and value encountered.
+// Range returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current field descriptor.
+func (x *fastReflection_MsgUpdateParamsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+}
+
+// Has reports whether a field is populated.
+//
+// Some fields have the property of nullability where it is possible to
+// distinguish between the default value of a field and whether the field
+// was explicitly populated with the default value. Singular message fields,
+// member fields of a oneof, and proto2 scalar fields are nullable. Such
+// fields are populated only if explicitly set.
+//
+// In other cases (aside from the nullable cases above),
+// a proto3 scalar field is populated if it contains a non-zero value, and
+// a repeated field is populated if it is non-empty.
+func (x *fastReflection_MsgUpdateParamsResponse) Has(fd protoreflect.FieldDescriptor) bool {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Clear clears the field such that a subsequent Has call reports false.
+//
+// Clearing an extension field clears both the extension type and value
+// associated with the given field number.
+//
+// Clear is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Clear(fd protoreflect.FieldDescriptor) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Get retrieves the value for a field.
+//
+// For unpopulated scalars, it returns the default value, where
+// the default value of a bytes scalar is guaranteed to be a copy.
+// For unpopulated composite types, it returns an empty, read-only view
+// of the value; to obtain a mutable reference, use Mutable.
+func (x *fastReflection_MsgUpdateParamsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
+ switch descriptor.FullName() {
+ default:
+ if descriptor.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParamsResponse does not contain field %s", descriptor.FullName()))
+ }
+}
+
+// Set stores the value for a field.
+//
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType.
+// When setting a composite type, it is unspecified whether the stored value
+// aliases the source's memory in any way. If the composite value is an
+// empty, read-only value, then it panics.
+//
+// Set is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// Mutable returns a mutable reference to a composite type.
+//
+// If the field is unpopulated, it may allocate a composite value.
+// For a field belonging to a oneof, it implicitly clears any other field
+// that may be currently set within the same oneof.
+// For extension fields, it implicitly stores the provided ExtensionType
+// if not already stored.
+// It panics if the field does not contain a composite type.
+//
+// Mutable is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// NewField returns a new value that is assignable to the field
+// for the given descriptor. For scalars, this returns the default value.
+// For lists, maps, and messages, this returns a new, empty, mutable value.
+func (x *fastReflection_MsgUpdateParamsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+ switch fd.FullName() {
+ default:
+ if fd.IsExtension() {
+ panic(fmt.Errorf("proto3 declared messages do not support extensions: galactica.reputation.MsgUpdateParamsResponse"))
+ }
+ panic(fmt.Errorf("message galactica.reputation.MsgUpdateParamsResponse does not contain field %s", fd.FullName()))
+ }
+}
+
+// WhichOneof reports which field within the oneof is populated,
+// returning nil if none are populated.
+// It panics if the oneof descriptor does not belong to this message.
+func (x *fastReflection_MsgUpdateParamsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+ switch d.FullName() {
+ default:
+ panic(fmt.Errorf("%s is not a oneof field in galactica.reputation.MsgUpdateParamsResponse", d.FullName()))
+ }
+ panic("unreachable")
+}
+
+// GetUnknown retrieves the entire list of unknown fields.
+// The caller may only mutate the contents of the RawFields
+// if the mutated bytes are stored back into the message with SetUnknown.
+func (x *fastReflection_MsgUpdateParamsResponse) GetUnknown() protoreflect.RawFields {
+ return x.unknownFields
+}
+
+// SetUnknown stores an entire list of unknown fields.
+// The raw fields must be syntactically valid according to the wire format.
+// An implementation may panic if this is not the case.
+// Once stored, the caller must not mutate the content of the RawFields.
+// An empty RawFields may be passed to clear the fields.
+//
+// SetUnknown is a mutating operation and unsafe for concurrent use.
+func (x *fastReflection_MsgUpdateParamsResponse) SetUnknown(fields protoreflect.RawFields) {
+ x.unknownFields = fields
+}
+
+// IsValid reports whether the message is valid.
+//
+// An invalid message is an empty, read-only value.
+//
+// An invalid message often corresponds to a nil pointer of the concrete
+// message type, but the details are implementation dependent.
+// Validity is not part of the protobuf data model, and may not
+// be preserved in marshaling or other operations.
+func (x *fastReflection_MsgUpdateParamsResponse) IsValid() bool {
+ return x != nil
+}
+
+// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
+// This method may return nil.
+//
+// The returned methods type is identical to
+// "google.golang.org/protobuf/runtime/protoiface".Methods.
+// Consult the protoiface package documentation for details.
+func (x *fastReflection_MsgUpdateParamsResponse) ProtoMethods() *protoiface.Methods {
+ size := func(input protoiface.SizeInput) protoiface.SizeOutput {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: 0,
+ }
+ }
+ options := runtime.SizeInputToOptions(input)
+ _ = options
+ var n int
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ n += len(x.unknownFields)
+ }
+ return protoiface.SizeOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Size: n,
+ }
+ }
+
+ marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ options := runtime.MarshalInputToOptions(input)
+ _ = options
+ size := options.Size(x)
+ dAtA := make([]byte, size)
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if x.unknownFields != nil {
+ i -= len(x.unknownFields)
+ copy(dAtA[i:], x.unknownFields)
+ }
+ if input.Buf != nil {
+ input.Buf = append(input.Buf, dAtA...)
+ } else {
+ input.Buf = dAtA
+ }
+ return protoiface.MarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Buf: input.Buf,
+ }, nil
+ }
+ unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+ x := input.Message.Interface().(*MsgUpdateParamsResponse)
+ if x == nil {
+ return protoiface.UnmarshalOutput{
+ NoUnkeyedLiterals: input.NoUnkeyedLiterals,
+ Flags: input.Flags,
+ }, nil
+ }
+ options := runtime.UnmarshalInputToOptions(input)
+ _ = options
+ dAtA := input.Buf
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParamsResponse: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := runtime.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ if !options.DiscardUnknown {
+ x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
+ }
+ return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil
+ }
+ return &protoiface.Methods{
+ NoUnkeyedLiterals: struct{}{},
+ Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown,
+ Size: size,
+ Marshal: marshal,
+ Unmarshal: unmarshal,
+ Merge: nil,
+ CheckInitialized: nil,
+ }
+}
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.27.0
+// protoc (unknown)
+// source: galactica/reputation/tx.proto
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// MsgUpdateParams is the Msg/UpdateParams request type.
+//
+// Since: cosmos-sdk 0.47
+type MsgUpdateParams struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // authority is the address that controls the module (defaults to x/gov unless overwritten).
+ Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
+ // params defines the module parameters to update.
+ //
+ // NOTE: All parameters must be supplied.
+ Params *Params `protobuf:"bytes,2,opt,name=params,proto3" json:"params,omitempty"`
+}
+
+func (x *MsgUpdateParams) Reset() {
+ *x = MsgUpdateParams{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_reputation_tx_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MsgUpdateParams) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MsgUpdateParams) ProtoMessage() {}
+
+// Deprecated: Use MsgUpdateParams.ProtoReflect.Descriptor instead.
+func (*MsgUpdateParams) Descriptor() ([]byte, []int) {
+ return file_galactica_reputation_tx_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *MsgUpdateParams) GetAuthority() string {
+ if x != nil {
+ return x.Authority
+ }
+ return ""
+}
+
+func (x *MsgUpdateParams) GetParams() *Params {
+ if x != nil {
+ return x.Params
+ }
+ return nil
+}
+
+// MsgUpdateParamsResponse defines the response structure for executing a
+// MsgUpdateParams message.
+//
+// Since: cosmos-sdk 0.47
+type MsgUpdateParamsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *MsgUpdateParamsResponse) Reset() {
+ *x = MsgUpdateParamsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_galactica_reputation_tx_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MsgUpdateParamsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MsgUpdateParamsResponse) ProtoMessage() {}
+
+// Deprecated: Use MsgUpdateParamsResponse.ProtoReflect.Descriptor instead.
+func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) {
+ return file_galactica_reputation_tx_proto_rawDescGZIP(), []int{1}
+}
+
+var File_galactica_reputation_tx_proto protoreflect.FileDescriptor
+
+var file_galactica_reputation_tx_proto_rawDesc = []byte{
+ 0x0a, 0x1d, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
+ 0x14, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75, 0x74,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69,
+ 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73,
+ 0x2f, 0x6d, 0x73, 0x67, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x19, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
+ 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f,
+ 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x21, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2f, 0x72, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc5, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74,
+ 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4,
+ 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
+ 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74,
+ 0x79, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42,
+ 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61,
+ 0x6d, 0x73, 0x3a, 0x39, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69,
+ 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x26, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x2f, 0x78, 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x4d, 0x73,
+ 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a,
+ 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x72, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12,
+ 0x64, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12,
+ 0x25, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x2d, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69,
+ 0x63, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 0x73,
+ 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0xbb, 0x01, 0x0a,
+ 0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x72,
+ 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x25, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e,
+ 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61,
+ 0x2f, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x47, 0x52,
+ 0x58, 0xaa, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x2e, 0x52, 0x65,
+ 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xca, 0x02, 0x14, 0x47, 0x61, 0x6c, 0x61, 0x63,
+ 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xe2,
+ 0x02, 0x20, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x5c, 0x52, 0x65, 0x70, 0x75,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0xea, 0x02, 0x15, 0x47, 0x61, 0x6c, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x3a, 0x3a,
+ 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x33,
+}
+
+var (
+ file_galactica_reputation_tx_proto_rawDescOnce sync.Once
+ file_galactica_reputation_tx_proto_rawDescData = file_galactica_reputation_tx_proto_rawDesc
+)
+
+func file_galactica_reputation_tx_proto_rawDescGZIP() []byte {
+ file_galactica_reputation_tx_proto_rawDescOnce.Do(func() {
+ file_galactica_reputation_tx_proto_rawDescData = protoimpl.X.CompressGZIP(file_galactica_reputation_tx_proto_rawDescData)
+ })
+ return file_galactica_reputation_tx_proto_rawDescData
+}
+
+var file_galactica_reputation_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_galactica_reputation_tx_proto_goTypes = []interface{}{
+ (*MsgUpdateParams)(nil), // 0: galactica.reputation.MsgUpdateParams
+ (*MsgUpdateParamsResponse)(nil), // 1: galactica.reputation.MsgUpdateParamsResponse
+ (*Params)(nil), // 2: galactica.reputation.Params
+}
+var file_galactica_reputation_tx_proto_depIdxs = []int32{
+ 2, // 0: galactica.reputation.MsgUpdateParams.params:type_name -> galactica.reputation.Params
+ 0, // 1: galactica.reputation.Msg.UpdateParams:input_type -> galactica.reputation.MsgUpdateParams
+ 1, // 2: galactica.reputation.Msg.UpdateParams:output_type -> galactica.reputation.MsgUpdateParamsResponse
+ 2, // [2:3] is the sub-list for method output_type
+ 1, // [1:2] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_galactica_reputation_tx_proto_init() }
+func file_galactica_reputation_tx_proto_init() {
+ if File_galactica_reputation_tx_proto != nil {
+ return
+ }
+ file_galactica_reputation_params_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_galactica_reputation_tx_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MsgUpdateParams); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_galactica_reputation_tx_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MsgUpdateParamsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_galactica_reputation_tx_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_galactica_reputation_tx_proto_goTypes,
+ DependencyIndexes: file_galactica_reputation_tx_proto_depIdxs,
+ MessageInfos: file_galactica_reputation_tx_proto_msgTypes,
+ }.Build()
+ File_galactica_reputation_tx_proto = out.File
+ file_galactica_reputation_tx_proto_rawDesc = nil
+ file_galactica_reputation_tx_proto_goTypes = nil
+ file_galactica_reputation_tx_proto_depIdxs = nil
+}
diff --git a/api/galactica/reputation/tx_grpc.pb.go b/api/galactica/reputation/tx_grpc.pb.go
new file mode 100644
index 0000000..013f147
--- /dev/null
+++ b/api/galactica/reputation/tx_grpc.pb.go
@@ -0,0 +1,109 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+
+package reputation
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// MsgClient is the client API for Msg service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type MsgClient interface {
+ // UpdateParams defines a (governance) operation for updating the module
+ // parameters. The authority defaults to the x/gov module account.
+ //
+ // Since: cosmos-sdk 0.47
+ UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error)
+}
+
+type msgClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewMsgClient(cc grpc.ClientConnInterface) MsgClient {
+ return &msgClient{cc}
+}
+
+func (c *msgClient) UpdateParams(ctx context.Context, in *MsgUpdateParams, opts ...grpc.CallOption) (*MsgUpdateParamsResponse, error) {
+ out := new(MsgUpdateParamsResponse)
+ err := c.cc.Invoke(ctx, "/galactica.reputation.Msg/UpdateParams", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// MsgServer is the server API for Msg service.
+// All implementations must embed UnimplementedMsgServer
+// for forward compatibility
+type MsgServer interface {
+ // UpdateParams defines a (governance) operation for updating the module
+ // parameters. The authority defaults to the x/gov module account.
+ //
+ // Since: cosmos-sdk 0.47
+ UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error)
+ mustEmbedUnimplementedMsgServer()
+}
+
+// UnimplementedMsgServer must be embedded to have forward compatible implementations.
+type UnimplementedMsgServer struct {
+}
+
+func (UnimplementedMsgServer) UpdateParams(context.Context, *MsgUpdateParams) (*MsgUpdateParamsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateParams not implemented")
+}
+func (UnimplementedMsgServer) mustEmbedUnimplementedMsgServer() {}
+
+// UnsafeMsgServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to MsgServer will
+// result in compilation errors.
+type UnsafeMsgServer interface {
+ mustEmbedUnimplementedMsgServer()
+}
+
+func RegisterMsgServer(s grpc.ServiceRegistrar, srv MsgServer) {
+ s.RegisterService(&Msg_ServiceDesc, srv)
+}
+
+func _Msg_UpdateParams_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(MsgUpdateParams)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(MsgServer).UpdateParams(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/galactica.reputation.Msg/UpdateParams",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(MsgServer).UpdateParams(ctx, req.(*MsgUpdateParams))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// Msg_ServiceDesc is the grpc.ServiceDesc for Msg service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var Msg_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "galactica.reputation.Msg",
+ HandlerType: (*MsgServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "UpdateParams",
+ Handler: _Msg_UpdateParams_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "galactica/reputation/tx.proto",
+}
diff --git a/app/app.go b/app/app.go
new file mode 100644
index 0000000..df4a3f6
--- /dev/null
+++ b/app/app.go
@@ -0,0 +1,657 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package app
+
+import (
+ _ "embed"
+ "fmt"
+ "io"
+ "os"
+ "path/filepath"
+
+ vestingtypes "github.com/cosmos/cosmos-sdk/x/auth/vesting/types"
+ "github.com/evmos/ethermint/app/ante"
+ enccodec "github.com/evmos/ethermint/encoding/codec"
+ "github.com/evmos/ethermint/x/evm/vm/geth"
+
+ "cosmossdk.io/depinject"
+ dbm "github.com/cometbft/cometbft-db"
+ abci "github.com/cometbft/cometbft/abci/types"
+ tmjson "github.com/cometbft/cometbft/libs/json"
+ "github.com/cometbft/cometbft/libs/log"
+ "github.com/cosmos/cosmos-sdk/baseapp"
+ "github.com/cosmos/cosmos-sdk/client"
+ "github.com/cosmos/cosmos-sdk/codec"
+ codectypes "github.com/cosmos/cosmos-sdk/codec/types"
+ "github.com/cosmos/cosmos-sdk/runtime"
+ "github.com/cosmos/cosmos-sdk/server"
+ "github.com/cosmos/cosmos-sdk/server/api"
+ "github.com/cosmos/cosmos-sdk/server/config"
+ servertypes "github.com/cosmos/cosmos-sdk/server/types"
+ "github.com/cosmos/cosmos-sdk/store/streaming"
+ storetypes "github.com/cosmos/cosmos-sdk/store/types"
+ testdata_pulsar "github.com/cosmos/cosmos-sdk/testutil/testdata/testpb"
+ "github.com/cosmos/cosmos-sdk/types/module"
+ "github.com/cosmos/cosmos-sdk/x/auth"
+ authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper"
+ authsims "github.com/cosmos/cosmos-sdk/x/auth/simulation"
+ _ "github.com/cosmos/cosmos-sdk/x/auth/tx/config" // import for side-effects
+ authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
+ "github.com/cosmos/cosmos-sdk/x/auth/vesting"
+ authzkeeper "github.com/cosmos/cosmos-sdk/x/authz/keeper"
+ authzmodule "github.com/cosmos/cosmos-sdk/x/authz/module"
+ "github.com/cosmos/cosmos-sdk/x/bank"
+ bankkeeper "github.com/cosmos/cosmos-sdk/x/bank/keeper"
+ "github.com/cosmos/cosmos-sdk/x/capability"
+ capabilitykeeper "github.com/cosmos/cosmos-sdk/x/capability/keeper"
+ "github.com/cosmos/cosmos-sdk/x/consensus"
+ consensuskeeper "github.com/cosmos/cosmos-sdk/x/consensus/keeper"
+ "github.com/cosmos/cosmos-sdk/x/crisis"
+ crisiskeeper "github.com/cosmos/cosmos-sdk/x/crisis/keeper"
+ distr "github.com/cosmos/cosmos-sdk/x/distribution"
+ distrkeeper "github.com/cosmos/cosmos-sdk/x/distribution/keeper"
+ "github.com/cosmos/cosmos-sdk/x/evidence"
+ evidencekeeper "github.com/cosmos/cosmos-sdk/x/evidence/keeper"
+ feegrantkeeper "github.com/cosmos/cosmos-sdk/x/feegrant/keeper"
+ feegrantmodule "github.com/cosmos/cosmos-sdk/x/feegrant/module"
+ "github.com/cosmos/cosmos-sdk/x/genutil"
+ genutiltypes "github.com/cosmos/cosmos-sdk/x/genutil/types"
+ "github.com/cosmos/cosmos-sdk/x/gov"
+ govclient "github.com/cosmos/cosmos-sdk/x/gov/client"
+ govkeeper "github.com/cosmos/cosmos-sdk/x/gov/keeper"
+ govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
+ groupkeeper "github.com/cosmos/cosmos-sdk/x/group/keeper"
+ groupmodule "github.com/cosmos/cosmos-sdk/x/group/module"
+ "github.com/cosmos/cosmos-sdk/x/mint"
+ mintkeeper "github.com/cosmos/cosmos-sdk/x/mint/keeper"
+ "github.com/cosmos/cosmos-sdk/x/params"
+ paramsclient "github.com/cosmos/cosmos-sdk/x/params/client"
+ paramskeeper "github.com/cosmos/cosmos-sdk/x/params/keeper"
+ paramstypes "github.com/cosmos/cosmos-sdk/x/params/types"
+ "github.com/cosmos/cosmos-sdk/x/slashing"
+ slashingkeeper "github.com/cosmos/cosmos-sdk/x/slashing/keeper"
+ "github.com/cosmos/cosmos-sdk/x/staking"
+ stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
+ "github.com/cosmos/cosmos-sdk/x/upgrade"
+ upgradeclient "github.com/cosmos/cosmos-sdk/x/upgrade/client"
+ upgradekeeper "github.com/cosmos/cosmos-sdk/x/upgrade/keeper"
+ ica "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts"
+ icacontrollerkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller/keeper"
+ icahostkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host/keeper"
+ ibcfeekeeper "github.com/cosmos/ibc-go/v7/modules/apps/29-fee/keeper"
+ ibctransfer "github.com/cosmos/ibc-go/v7/modules/apps/transfer"
+ ibctransferkeeper "github.com/cosmos/ibc-go/v7/modules/apps/transfer/keeper"
+ ibc "github.com/cosmos/ibc-go/v7/modules/core"
+ ibcclientclient "github.com/cosmos/ibc-go/v7/modules/core/02-client/client"
+ ibckeeper "github.com/cosmos/ibc-go/v7/modules/core/keeper"
+ solomachine "github.com/cosmos/ibc-go/v7/modules/light-clients/06-solomachine"
+ ibctm "github.com/cosmos/ibc-go/v7/modules/light-clients/07-tendermint"
+ "github.com/spf13/cast"
+
+ sdk "github.com/cosmos/cosmos-sdk/types"
+ srvflags "github.com/evmos/ethermint/server/flags"
+ ethermint "github.com/evmos/ethermint/types"
+ "github.com/evmos/ethermint/x/evm"
+ evmkeeper "github.com/evmos/ethermint/x/evm/keeper"
+ evmtypes "github.com/evmos/ethermint/x/evm/types"
+ "github.com/evmos/ethermint/x/feemarket"
+ feemarketkeeper "github.com/evmos/ethermint/x/feemarket/keeper"
+ feemarkettypes "github.com/evmos/ethermint/x/feemarket/types"
+
+ epochsmodule "github.com/Galactica-corp/galactica/x/epochs"
+ epochsmodulekeeper "github.com/Galactica-corp/galactica/x/epochs/keeper"
+ inflationmodule "github.com/Galactica-corp/galactica/x/inflation"
+ inflationmodulekeeper "github.com/Galactica-corp/galactica/x/inflation/keeper"
+ reputationmodule "github.com/Galactica-corp/galactica/x/reputation"
+ reputationmodulekeeper "github.com/Galactica-corp/galactica/x/reputation/keeper"
+
+ // this line is used by starport scaffolding # stargate/app/moduleImport
+
+ "github.com/Galactica-corp/galactica/docs"
+)
+
+const (
+ AccountAddressPrefix = "gala"
+ Name = "galactica"
+)
+
+func getGovProposalHandlers() []govclient.ProposalHandler {
+ var govProposalHandlers []govclient.ProposalHandler
+ // this line is used by starport scaffolding # stargate/app/govProposalHandlers
+
+ govProposalHandlers = append(govProposalHandlers,
+ paramsclient.ProposalHandler,
+ upgradeclient.LegacyProposalHandler,
+ upgradeclient.LegacyCancelProposalHandler,
+ ibcclientclient.UpdateClientProposalHandler,
+ ibcclientclient.UpgradeProposalHandler,
+ // this line is used by starport scaffolding # stargate/app/govProposalHandler
+ )
+
+ return govProposalHandlers
+}
+
+var (
+ // DefaultNodeHome default home directories for the application daemon
+ DefaultNodeHome string
+
+ // ModuleBasics defines the module BasicManager is in charge of setting up basic,
+ // non-dependant module elements, such as codec registration
+ // and genesis verification.
+ ModuleBasics = module.NewBasicManager(
+ auth.AppModuleBasic{},
+ authzmodule.AppModuleBasic{},
+ genutil.NewAppModuleBasic(genutiltypes.DefaultMessageValidator),
+ bank.AppModuleBasic{},
+ capability.AppModuleBasic{},
+ staking.AppModuleBasic{},
+ mint.AppModuleBasic{},
+ distr.AppModuleBasic{},
+ gov.NewAppModuleBasic(getGovProposalHandlers()),
+ params.AppModuleBasic{},
+ crisis.AppModuleBasic{},
+ slashing.AppModuleBasic{},
+ feegrantmodule.AppModuleBasic{},
+ groupmodule.AppModuleBasic{},
+ ibc.AppModuleBasic{},
+ ibctm.AppModuleBasic{},
+ solomachine.AppModuleBasic{},
+ upgrade.AppModuleBasic{},
+ evidence.AppModuleBasic{},
+ ibctransfer.AppModuleBasic{},
+ ica.AppModuleBasic{},
+ vesting.AppModuleBasic{},
+ consensus.AppModuleBasic{},
+ evm.AppModuleBasic{},
+ feemarket.AppModuleBasic{},
+ reputationmodule.AppModuleBasic{},
+ inflationmodule.AppModuleBasic{},
+ epochsmodule.AppModuleBasic{},
+ // this line is used by starport scaffolding # stargate/app/moduleBasic
+ )
+
+ // module account permissions
+ maccPerms = map[string][]string{
+ authtypes.FeeCollectorName: nil,
+ govtypes.ModuleName: {authtypes.Burner},
+ evmtypes.ModuleName: {authtypes.Minter, authtypes.Burner}, // used for secure addition and subtraction of balance using module account
+ }
+)
+
+var (
+ _ runtime.AppI = (*App)(nil)
+ _ servertypes.Application = (*App)(nil)
+)
+
+// App extends an ABCI application, but with most of its parameters exported.
+// They are exported for convenience in creating helper functions, as object
+// capabilities aren't needed for testing.
+type App struct {
+ *runtime.App
+ legacyAmino *codec.LegacyAmino
+ appCodec codec.Codec
+ txConfig client.TxConfig
+ interfaceRegistry codectypes.InterfaceRegistry
+
+ // non depinject support modules store keys
+ keys map[string]*storetypes.KVStoreKey
+
+ // keepers
+ AccountKeeper authkeeper.AccountKeeper
+ BankKeeper bankkeeper.Keeper
+ CapabilityKeeper *capabilitykeeper.Keeper
+ StakingKeeper *stakingkeeper.Keeper
+ SlashingKeeper slashingkeeper.Keeper
+ MintKeeper mintkeeper.Keeper
+ DistrKeeper distrkeeper.Keeper
+ GovKeeper *govkeeper.Keeper
+ CrisisKeeper *crisiskeeper.Keeper
+ UpgradeKeeper *upgradekeeper.Keeper
+ ParamsKeeper paramskeeper.Keeper
+ AuthzKeeper authzkeeper.Keeper
+ EvidenceKeeper evidencekeeper.Keeper
+ FeeGrantKeeper feegrantkeeper.Keeper
+ GroupKeeper groupkeeper.Keeper
+ ConsensusParamsKeeper consensuskeeper.Keeper
+
+ // IBC
+ IBCKeeper *ibckeeper.Keeper // IBC Keeper must be a pointer in the app, so we can SetRouter on it correctly
+ IBCFeeKeeper ibcfeekeeper.Keeper
+ ICAControllerKeeper icacontrollerkeeper.Keeper
+ ICAHostKeeper icahostkeeper.Keeper
+ TransferKeeper ibctransferkeeper.Keeper
+
+ // Scoped IBC
+ ScopedIBCKeeper capabilitykeeper.ScopedKeeper
+ ScopedIBCTransferKeeper capabilitykeeper.ScopedKeeper
+ ScopedICAControllerKeeper capabilitykeeper.ScopedKeeper
+ ScopedICAHostKeeper capabilitykeeper.ScopedKeeper
+
+ // Ethermint keepers
+ EvmKeeper *evmkeeper.Keeper
+ FeeMarketKeeper *feemarketkeeper.Keeper
+
+ ReputationKeeper reputationmodulekeeper.Keeper
+ InflationKeeper inflationmodulekeeper.Keeper
+ EpochsKeeper *epochsmodulekeeper.Keeper
+ // this line is used by starport scaffolding # stargate/app/keeperDeclaration
+
+ // simulation manager
+ sm *module.SimulationManager
+}
+
+func init() {
+ userHomeDir, err := os.UserHomeDir()
+ if err != nil {
+ panic(err)
+ }
+
+ DefaultNodeHome = filepath.Join(userHomeDir, "."+Name)
+}
+
+// New returns a reference to an initialized App.
+func New(
+ logger log.Logger,
+ db dbm.DB,
+ traceStore io.Writer,
+ loadLatest bool,
+ appOpts servertypes.AppOptions,
+ baseAppOptions ...func(*baseapp.BaseApp),
+) *App {
+ var (
+ app = &App{}
+ appBuilder *runtime.AppBuilder
+
+ // merge the AppConfig and other configuration in one config
+ appConfig = depinject.Configs(
+ AppConfig,
+ depinject.Supply(
+ // supply the application options
+ appOpts,
+ // supply ibc keeper getter for the IBC modules
+ app.GetIBCeKeeper,
+
+ // supply the evm keeper getter for the EVM module
+ // app.GetEVMKeeper,
+
+ // ADVANCED CONFIGURATION
+ //
+ // AUTH
+ //
+ // For providing a custom function required in auth to generate custom account types
+ // add it below. By default the auth module uses simulation.RandomGenesisAccounts.
+ //
+ // authtypes.RandomGenesisAccountsFn(simulation.RandomGenesisAccounts),
+
+ // For providing a custom a base account type add it below.
+ // By default the auth module uses authtypes.ProtoBaseAccount().
+ //
+ // func() authtypes.AccountI { return authtypes.ProtoBaseAccount() },
+
+ //
+ // MINT
+ //
+
+ // For providing a custom inflation function for x/mint add here your
+ // custom function that implements the minttypes.InflationCalculationFn
+ // interface.
+ ),
+ )
+ )
+
+ if err := depinject.Inject(appConfig,
+ &appBuilder,
+ &app.appCodec,
+ &app.legacyAmino,
+ &app.txConfig,
+ &app.interfaceRegistry,
+ &app.AccountKeeper,
+ &app.BankKeeper,
+ &app.CapabilityKeeper,
+ &app.StakingKeeper,
+ &app.SlashingKeeper,
+ &app.MintKeeper,
+ &app.DistrKeeper,
+ &app.GovKeeper,
+ &app.CrisisKeeper,
+ &app.UpgradeKeeper,
+ &app.ParamsKeeper,
+ &app.AuthzKeeper,
+ &app.EvidenceKeeper,
+ &app.FeeGrantKeeper,
+ &app.GroupKeeper,
+ &app.ConsensusParamsKeeper,
+ &app.ReputationKeeper,
+ &app.InflationKeeper,
+ &app.EpochsKeeper,
+ // this line is used by starport scaffolding # stargate/app/keeperDefinition
+ ); err != nil {
+ panic(err)
+ }
+
+ // Below we could construct and set an application specific mempool and
+ // ABCI 1.0 PrepareProposal and ProcessProposal handlers. These defaults are
+ // already set in the SDK's BaseApp, this shows an example of how to override
+ // them.
+ //
+ // Example:
+ //
+ // app.App = appBuilder.Build(...)
+ // nonceMempool := mempool.NewSenderNonceMempool()
+ // abciPropHandler := NewDefaultProposalHandler(nonceMempool, app.App.BaseApp)
+ //
+ // app.App.BaseApp.SetMempool(nonceMempool)
+ // app.App.BaseApp.SetPrepareProposal(abciPropHandler.PrepareProposalHandler())
+ // app.App.BaseApp.SetProcessProposal(abciPropHandler.ProcessProposalHandler())
+ //
+ // Alternatively, you can construct BaseApp options, append those to
+ // baseAppOptions and pass them to the appBuilder.
+ //
+ // Example:
+ //
+ // prepareOpt = func(app *baseapp.BaseApp) {
+ // abciPropHandler := baseapp.NewDefaultProposalHandler(nonceMempool, app)
+ // app.SetPrepareProposal(abciPropHandler.PrepareProposalHandler())
+ // }
+ // baseAppOptions = append(baseAppOptions, prepareOpt)
+
+ app.App = appBuilder.Build(logger, db, traceStore, baseAppOptions...)
+
+ encConfig := MakeEncodingConfig()
+ app.appCodec = encConfig.Marshaler
+ enccodec.RegisterInterfaces(app.interfaceRegistry)
+ app.SetTxEncoder(encConfig.TxConfig.TxEncoder())
+ app.SetTxDecoder(encConfig.TxConfig.TxDecoder())
+
+ initParamsKeeper(app.ParamsKeeper)
+
+ if err := app.RegisterStores(
+ sdk.NewKVStoreKey(evmtypes.StoreKey),
+ sdk.NewKVStoreKey(feemarkettypes.StoreKey),
+
+ sdk.NewTransientStoreKey(evmtypes.TransientKey),
+ sdk.NewTransientStoreKey(feemarkettypes.TransientKey),
+ ); err != nil {
+ panic(err)
+ }
+
+ // Register legacy modules
+ // app.registerIBCModules() // @TODO: register IBC modules without a conflict with the app wiring
+
+ // A custom InitChainer can be set if extra pre-init-genesis logic is required.
+ // By default, when using app wiring enabled module, this is not required.
+ // For instance, the upgrade module will set automatically the module version map in its init genesis thanks to app wiring.
+ // However, when registering a module manually (i.e. that does not support app wiring), the module version map
+ // must be set manually as follow. The upgrade module will de-duplicate the module version map.
+ app.SetInitChainer(app.InitChainer)
+
+ // get authority address
+ authAddr := authtypes.NewModuleAddress(govtypes.ModuleName).String()
+
+ app.AccountKeeper = authkeeper.NewAccountKeeper(
+ app.appCodec, app.GetKey(authtypes.StoreKey), ethermint.ProtoAccount,
+ maccPerms, sdk.GetConfig().GetBech32AccountAddrPrefix(), authAddr,
+ )
+
+ // Create Ethermint keepers
+ tracer := cast.ToString(appOpts.Get(srvflags.EVMTracer))
+
+ // Create Ethermint keepers
+ feeMarketS := app.GetSubspace(feemarkettypes.ModuleName)
+ feeMarketKeeper := feemarketkeeper.NewKeeper(
+ app.appCodec,
+ authtypes.NewModuleAddress(govtypes.ModuleName),
+ app.GetKey(feemarkettypes.StoreKey),
+ app.GetTransientKey(feemarkettypes.TransientKey),
+ feeMarketS,
+ )
+ app.FeeMarketKeeper = &feeMarketKeeper
+
+ // Set authority to x/gov module account to only expect the module account to update params
+ evmS := app.GetSubspace(evmtypes.ModuleName)
+ app.EvmKeeper = evmkeeper.NewKeeper(
+ app.appCodec,
+ app.GetKey(evmtypes.StoreKey),
+ app.GetTransientKey(evmtypes.TransientKey),
+ authtypes.NewModuleAddress(govtypes.ModuleName),
+ app.AccountKeeper, app.BankKeeper, app.StakingKeeper,
+ app.FeeMarketKeeper,
+ // TODO: precompiled contract could be added here
+ nil, geth.NewEVM, tracer, evmS,
+ )
+
+ evmModule := evm.NewAppModule(app.EvmKeeper, app.AccountKeeper, evmS)
+ feemarketModule := feemarket.NewAppModule(*app.FeeMarketKeeper, feeMarketS)
+ if err := app.RegisterModules(evmModule, feemarketModule); err != nil {
+ panic(fmt.Errorf("failed to register custom modules: %w", err))
+ }
+
+ app.EpochsKeeper = app.EpochsKeeper.SetHooks(
+ epochsmodulekeeper.NewMultiEpochHooks(
+ app.InflationKeeper.Hooks(),
+ ),
+ )
+
+ app.setAnteHandler(
+ encConfig.TxConfig,
+ cast.ToUint64(appOpts.Get(srvflags.EVMMaxTxGasWanted)),
+ )
+
+ // load state streaming if enabled
+ if _, _, err := streaming.LoadStreamingServices(app.App.BaseApp, appOpts, app.appCodec, logger, app.kvStoreKeys()); err != nil {
+ logger.Error("failed to load state streaming", "err", err)
+ os.Exit(1)
+ }
+
+ /**** Module Options ****/
+
+ app.ModuleManager.RegisterInvariants(app.CrisisKeeper)
+
+ // add test gRPC service for testing gRPC queries in isolation
+ testdata_pulsar.RegisterQueryServer(app.GRPCQueryRouter(), testdata_pulsar.QueryImpl{})
+
+ // create the simulation manager and define the order of the modules for deterministic simulations
+ //
+ // NOTE: this is not required apps that don't use the simulator for fuzz testing
+ // transactions
+ overrideModules := map[string]module.AppModuleSimulation{
+ authtypes.ModuleName: auth.NewAppModule(app.appCodec, app.AccountKeeper, authsims.RandomGenesisAccounts, app.GetSubspace(authtypes.ModuleName)),
+ feemarkettypes.ModuleName: feemarket.NewAppModule(*app.FeeMarketKeeper, feeMarketS),
+ evmtypes.ModuleName: evm.NewAppModule(app.EvmKeeper, app.AccountKeeper, evmS),
+ }
+ app.sm = module.NewSimulationManagerFromAppModules(app.ModuleManager.Modules, overrideModules)
+
+ app.sm.RegisterStoreDecoders()
+
+ if err := app.Load(loadLatest); err != nil {
+ panic(err)
+ }
+
+ return app
+}
+
+// Name returns the name of the App
+func (app *App) Name() string { return app.BaseApp.Name() }
+
+// LegacyAmino returns App's amino codec.
+//
+// NOTE: This is solely to be used for testing purposes as it may be desirable
+// for modules to register their own custom testing types.
+func (app *App) LegacyAmino() *codec.LegacyAmino {
+ return app.legacyAmino
+}
+
+// AppCodec returns App's app codec.
+//
+// NOTE: This is solely to be used for testing purposes as it may be desirable
+// for modules to register their own custom testing types.
+func (app *App) AppCodec() codec.Codec {
+ return app.appCodec
+}
+
+// InterfaceRegistry returns App's InterfaceRegistry
+func (app *App) InterfaceRegistry() codectypes.InterfaceRegistry {
+ return app.interfaceRegistry
+}
+
+// TxConfig returns App's TxConfig
+func (app *App) TxConfig() client.TxConfig {
+ return app.txConfig
+}
+
+// GetKey returns the KVStoreKey for the provided store key.
+func (app *App) GetKey(storeKey string) *storetypes.KVStoreKey {
+ if key, ok := app.keys[storeKey]; ok {
+ return key
+ }
+
+ sk := app.UnsafeFindStoreKey(storeKey)
+ kvStoreKey, ok := sk.(*storetypes.KVStoreKey)
+ if !ok {
+ return nil
+ }
+ return kvStoreKey
+}
+
+// GetTransientKey returns the TransientStoreKey for the provided store key.
+func (app *App) GetTransientKey(storeKey string) *storetypes.TransientStoreKey {
+ sk := app.UnsafeFindStoreKey(storeKey)
+ transientStoreKey, ok := sk.(*storetypes.TransientStoreKey)
+ if !ok {
+ return nil
+ }
+ return transientStoreKey
+}
+
+// kvStoreKeys returns all the kv store keys registered inside App.
+func (app *App) kvStoreKeys() map[string]*storetypes.KVStoreKey {
+ keys := make(map[string]*storetypes.KVStoreKey)
+ for _, k := range app.GetStoreKeys() {
+ if kv, ok := k.(*storetypes.KVStoreKey); ok {
+ keys[kv.Name()] = kv
+ }
+ }
+
+ for _, kv := range app.keys {
+ keys[kv.Name()] = kv
+ }
+
+ return keys
+}
+
+// GetSubspace returns a param subspace for a given module name.
+func (app *App) GetSubspace(moduleName string) paramstypes.Subspace {
+ subspace, _ := app.ParamsKeeper.GetSubspace(moduleName)
+ return subspace
+}
+
+// SimulationManager implements the SimulationApp interface.
+func (app *App) SimulationManager() *module.SimulationManager {
+ return app.sm
+}
+
+// RegisterAPIRoutes registers all application module routes with the provided
+// API server.
+func (app *App) RegisterAPIRoutes(apiSvr *api.Server, apiConfig config.APIConfig) {
+ app.App.RegisterAPIRoutes(apiSvr, apiConfig)
+ // register swagger API in app.go so that other applications can override easily
+ if err := server.RegisterSwaggerAPI(apiSvr.ClientCtx, apiSvr.Router, apiConfig.Swagger); err != nil {
+ panic(err)
+ }
+
+ // register app's OpenAPI routes.
+ docs.RegisterOpenAPIService(Name, apiSvr.Router)
+}
+
+// GetIBCeKeeper returns the IBC keeper
+func (app *App) GetIBCeKeeper() *ibckeeper.Keeper {
+ return app.IBCKeeper
+}
+
+func (app *App) GetEVMKeeper() *evmkeeper.Keeper {
+ return app.EvmKeeper
+}
+
+// GetMaccPerms returns a copy of the module account permissions
+//
+// NOTE: This is solely to be used for testing purposes.
+func GetMaccPerms() map[string][]string {
+ dup := make(map[string][]string)
+ for _, perms := range moduleAccPerms {
+ dup[perms.Account] = perms.Permissions
+ }
+ return dup
+}
+
+// BlockedAddresses returns all the app's blocked account addresses.
+func BlockedAddresses() map[string]bool {
+ result := make(map[string]bool)
+ if len(blockAccAddrs) > 0 {
+ for _, addr := range blockAccAddrs {
+ result[addr] = true
+ }
+ } else {
+ for addr := range GetMaccPerms() {
+ result[addr] = true
+ }
+ }
+ return result
+}
+
+// InitChainer application update at chain initialization
+func (app *App) InitChainer(ctx sdk.Context, req abci.RequestInitChain) abci.ResponseInitChain {
+ var genesisState GenesisState
+ if err := tmjson.Unmarshal(req.AppStateBytes, &genesisState); err != nil {
+ panic(err)
+ }
+ app.UpgradeKeeper.SetModuleVersionMap(ctx, app.ModuleManager.GetVersionMap())
+ return app.ModuleManager.InitGenesis(ctx, app.appCodec, genesisState)
+}
+
+func (app *App) setAnteHandler(txConfig client.TxConfig, maxGasWanted uint64) {
+ anteHandler, err := ante.NewAnteHandler(ante.HandlerOptions{
+ AccountKeeper: app.AccountKeeper,
+ BankKeeper: app.BankKeeper,
+ SignModeHandler: txConfig.SignModeHandler(),
+ FeegrantKeeper: app.FeeGrantKeeper,
+ SigGasConsumer: ante.DefaultSigVerificationGasConsumer,
+ IBCKeeper: app.IBCKeeper,
+ EvmKeeper: app.EvmKeeper,
+ FeeMarketKeeper: app.FeeMarketKeeper,
+ MaxTxGasWanted: maxGasWanted,
+ ExtensionOptionChecker: ethermint.HasDynamicFeeExtensionOption,
+ TxFeeChecker: ante.NewDynamicFeeChecker(app.EvmKeeper),
+ DisabledAuthzMsgs: []string{
+ sdk.MsgTypeURL(&evmtypes.MsgEthereumTx{}),
+ sdk.MsgTypeURL(&vestingtypes.MsgCreateVestingAccount{}),
+ },
+ })
+ if err != nil {
+ panic(err)
+ }
+
+ app.SetAnteHandler(anteHandler)
+}
+
+// initParamsKeeper init params keeper and its subspaces
+func initParamsKeeper(
+ paramsKeeper paramskeeper.Keeper,
+) paramskeeper.Keeper {
+ // ethermint subspaces
+ paramsKeeper.Subspace(evmtypes.ModuleName).WithKeyTable(evmtypes.ParamKeyTable()) // nolint: staticcheck
+ paramsKeeper.Subspace(feemarkettypes.ModuleName).WithKeyTable(feemarkettypes.ParamKeyTable())
+
+ return paramsKeeper
+}
diff --git a/app/app_config.go b/app/app_config.go
new file mode 100644
index 0000000..c530dbb
--- /dev/null
+++ b/app/app_config.go
@@ -0,0 +1,353 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package app
+
+import (
+ "time"
+
+ runtimev1alpha1 "cosmossdk.io/api/cosmos/app/runtime/v1alpha1"
+ appv1alpha1 "cosmossdk.io/api/cosmos/app/v1alpha1"
+ authmodulev1 "cosmossdk.io/api/cosmos/auth/module/v1"
+ authzmodulev1 "cosmossdk.io/api/cosmos/authz/module/v1"
+ bankmodulev1 "cosmossdk.io/api/cosmos/bank/module/v1"
+ capabilitymodulev1 "cosmossdk.io/api/cosmos/capability/module/v1"
+ consensusmodulev1 "cosmossdk.io/api/cosmos/consensus/module/v1"
+ crisismodulev1 "cosmossdk.io/api/cosmos/crisis/module/v1"
+ distrmodulev1 "cosmossdk.io/api/cosmos/distribution/module/v1"
+ evidencemodulev1 "cosmossdk.io/api/cosmos/evidence/module/v1"
+ feegrantmodulev1 "cosmossdk.io/api/cosmos/feegrant/module/v1"
+ genutilmodulev1 "cosmossdk.io/api/cosmos/genutil/module/v1"
+ govmodulev1 "cosmossdk.io/api/cosmos/gov/module/v1"
+ groupmodulev1 "cosmossdk.io/api/cosmos/group/module/v1"
+ mintmodulev1 "cosmossdk.io/api/cosmos/mint/module/v1"
+ paramsmodulev1 "cosmossdk.io/api/cosmos/params/module/v1"
+ slashingmodulev1 "cosmossdk.io/api/cosmos/slashing/module/v1"
+ stakingmodulev1 "cosmossdk.io/api/cosmos/staking/module/v1"
+ txconfigv1 "cosmossdk.io/api/cosmos/tx/config/v1"
+ upgrademodulev1 "cosmossdk.io/api/cosmos/upgrade/module/v1"
+ vestingmodulev1 "cosmossdk.io/api/cosmos/vesting/module/v1"
+ "cosmossdk.io/core/appconfig"
+ authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
+ vestingtypes "github.com/cosmos/cosmos-sdk/x/auth/vesting/types"
+ "github.com/cosmos/cosmos-sdk/x/authz"
+ banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
+ capabilitytypes "github.com/cosmos/cosmos-sdk/x/capability/types"
+ consensustypes "github.com/cosmos/cosmos-sdk/x/consensus/types"
+ crisistypes "github.com/cosmos/cosmos-sdk/x/crisis/types"
+ distrtypes "github.com/cosmos/cosmos-sdk/x/distribution/types"
+ evidencetypes "github.com/cosmos/cosmos-sdk/x/evidence/types"
+ "github.com/cosmos/cosmos-sdk/x/feegrant"
+ genutiltypes "github.com/cosmos/cosmos-sdk/x/genutil/types"
+ govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
+ "github.com/cosmos/cosmos-sdk/x/group"
+ minttypes "github.com/cosmos/cosmos-sdk/x/mint/types"
+ paramstypes "github.com/cosmos/cosmos-sdk/x/params/types"
+ slashingtypes "github.com/cosmos/cosmos-sdk/x/slashing/types"
+ stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types"
+ upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types"
+ icatypes "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/types"
+ ibcfeetypes "github.com/cosmos/ibc-go/v7/modules/apps/29-fee/types"
+ ibctransfertypes "github.com/cosmos/ibc-go/v7/modules/apps/transfer/types"
+ ibcexported "github.com/cosmos/ibc-go/v7/modules/core/exported"
+ evmtypes "github.com/evmos/ethermint/x/evm/types"
+ feemarkettypes "github.com/evmos/ethermint/x/feemarket/types"
+ "google.golang.org/protobuf/types/known/durationpb"
+
+ epochsmodulev1 "github.com/Galactica-corp/galactica/api/galactica/epochs/module"
+ inflationmodulev1 "github.com/Galactica-corp/galactica/api/galactica/inflation/module"
+ reputationmodulev1 "github.com/Galactica-corp/galactica/api/galactica/reputation/module"
+ epochsmoduletypes "github.com/Galactica-corp/galactica/x/epochs/types"
+ inflationmoduletypes "github.com/Galactica-corp/galactica/x/inflation/types"
+ reputationmoduletypes "github.com/Galactica-corp/galactica/x/reputation/types"
+ // this line is used by starport scaffolding # stargate/app/moduleImport
+)
+
+var (
+ // NOTE: The genutils module must occur after staking so that pools are
+ // properly initialized with tokens from genesis accounts.
+ // NOTE: The genutils module must also occur after auth so that it can access the params from auth.
+ // NOTE: Capability module must occur first so that it can initialize any capabilities
+ // so that other modules that want to create or claim capabilities afterwards in InitChain
+ // can do so safely.
+ genesisModuleOrder = []string{
+ capabilitytypes.ModuleName,
+ authtypes.ModuleName,
+ banktypes.ModuleName,
+ distrtypes.ModuleName,
+ stakingtypes.ModuleName,
+ ibcexported.ModuleName,
+ ibctransfertypes.ModuleName,
+ slashingtypes.ModuleName,
+ govtypes.ModuleName,
+ minttypes.ModuleName,
+ evidencetypes.ModuleName,
+ authz.ModuleName,
+ feegrant.ModuleName,
+ group.ModuleName,
+ paramstypes.ModuleName,
+ upgradetypes.ModuleName,
+ vestingtypes.ModuleName,
+ icatypes.ModuleName,
+ ibcfeetypes.ModuleName,
+ evmtypes.ModuleName,
+ feemarkettypes.ModuleName,
+ // NOTE: genutil module must be after feemarket module
+ genutiltypes.ModuleName,
+ consensustypes.ModuleName,
+ reputationmoduletypes.ModuleName,
+ inflationmoduletypes.ModuleName,
+ epochsmoduletypes.ModuleName,
+ // NOTE: crisis module must go at the end to check for invariants on each module
+ crisistypes.ModuleName,
+ // this line is used by starport scaffolding # stargate/app/initGenesis
+ }
+
+ // During begin block slashing happens after distr.BeginBlocker so that
+ // there is nothing left over in the validator fee pool, so as to keep the
+ // CanWithdrawInvariant invariant.
+ // NOTE: staking module is required if HistoricalEntries param > 0
+ // NOTE: capability module's beginblocker must come before any modules using capabilities (e.g. IBC)
+ beginBlockers = []string{
+ upgradetypes.ModuleName,
+ capabilitytypes.ModuleName,
+ // Note: epochs' begin should be "real" start of epochs, we keep epochs beginblock at the beginning
+ epochsmoduletypes.ModuleName,
+ feemarkettypes.ModuleName,
+ evmtypes.ModuleName,
+ minttypes.ModuleName,
+ distrtypes.ModuleName,
+ slashingtypes.ModuleName,
+ evidencetypes.ModuleName,
+ stakingtypes.ModuleName,
+ ibcexported.ModuleName,
+ authtypes.ModuleName,
+ ibctransfertypes.ModuleName,
+ banktypes.ModuleName,
+ govtypes.ModuleName,
+ crisistypes.ModuleName,
+ ibctransfertypes.ModuleName,
+ icatypes.ModuleName,
+ genutiltypes.ModuleName,
+ authz.ModuleName,
+ feegrant.ModuleName,
+ group.ModuleName,
+ paramstypes.ModuleName,
+ vestingtypes.ModuleName,
+ icatypes.ModuleName,
+ ibcfeetypes.ModuleName,
+ consensustypes.ModuleName,
+ reputationmoduletypes.ModuleName,
+ inflationmoduletypes.ModuleName,
+ // this line is used by starport scaffolding # stargate/app/beginBlockers
+ }
+
+ endBlockers = []string{
+ crisistypes.ModuleName,
+ govtypes.ModuleName,
+ stakingtypes.ModuleName,
+ evmtypes.ModuleName,
+ feemarkettypes.ModuleName,
+ ibcexported.ModuleName,
+ ibctransfertypes.ModuleName,
+ capabilitytypes.ModuleName,
+ authtypes.ModuleName,
+ banktypes.ModuleName,
+ distrtypes.ModuleName,
+ slashingtypes.ModuleName,
+ minttypes.ModuleName,
+ genutiltypes.ModuleName,
+ evidencetypes.ModuleName,
+ authz.ModuleName,
+ feegrant.ModuleName,
+ group.ModuleName,
+ paramstypes.ModuleName,
+ consensustypes.ModuleName,
+ upgradetypes.ModuleName,
+ vestingtypes.ModuleName,
+ icatypes.ModuleName,
+ ibcfeetypes.ModuleName,
+ consensustypes.ModuleName,
+ reputationmoduletypes.ModuleName,
+ inflationmoduletypes.ModuleName,
+ epochsmoduletypes.ModuleName,
+ // this line is used by starport scaffolding # stargate/app/endBlockers
+ }
+
+ // module account permissions
+ moduleAccPerms = []*authmodulev1.ModuleAccountPermission{
+ {Account: authtypes.FeeCollectorName},
+ {Account: distrtypes.ModuleName},
+ {Account: icatypes.ModuleName},
+ {Account: minttypes.ModuleName, Permissions: []string{authtypes.Minter}},
+ {Account: stakingtypes.BondedPoolName, Permissions: []string{authtypes.Burner, stakingtypes.ModuleName}},
+ {Account: stakingtypes.NotBondedPoolName, Permissions: []string{authtypes.Burner, stakingtypes.ModuleName}},
+ {Account: govtypes.ModuleName, Permissions: []string{authtypes.Burner}},
+ {Account: ibctransfertypes.ModuleName, Permissions: []string{authtypes.Minter, authtypes.Burner}},
+ {Account: inflationmoduletypes.ModuleName, Permissions: []string{authtypes.Minter, authtypes.Burner, authtypes.Staking}},
+ {Account: evmtypes.ModuleName, Permissions: []string{authtypes.Minter, authtypes.Burner}},
+ // this line is used by starport scaffolding # stargate/app/maccPerms
+ }
+
+ // blocked account addresses
+ blockAccAddrs = []string{
+ authtypes.FeeCollectorName,
+ distrtypes.ModuleName,
+ minttypes.ModuleName,
+ stakingtypes.BondedPoolName,
+ stakingtypes.NotBondedPoolName,
+ // We allow the following module accounts to receive funds:
+ // govtypes.ModuleName
+ }
+
+ // AppConfig application configuration (used by depinject)
+ AppConfig = appconfig.Compose(&appv1alpha1.Config{
+ Modules: []*appv1alpha1.ModuleConfig{
+ {
+ Name: "runtime",
+ Config: appconfig.WrapAny(&runtimev1alpha1.Module{
+ AppName: Name,
+ BeginBlockers: beginBlockers,
+ EndBlockers: endBlockers,
+ OverrideStoreKeys: []*runtimev1alpha1.StoreKeyConfig{
+ {
+ ModuleName: authtypes.ModuleName,
+ KvStoreKey: "acc",
+ },
+ },
+ InitGenesis: genesisModuleOrder,
+ // When ExportGenesis is not specified, the export genesis module order
+ // is equal to the init genesis order
+ // ExportGenesis: genesisModuleOrder,
+ // Uncomment if you want to set a custom migration order here.
+ // OrderMigrations: nil,
+ }),
+ },
+ {
+ Name: authtypes.ModuleName,
+ Config: appconfig.WrapAny(&authmodulev1.Module{
+ Bech32Prefix: "cosmos",
+ ModuleAccountPermissions: moduleAccPerms,
+ // By default modules authority is the governance module. This is configurable with the following:
+ // Authority: "group", // A custom module authority can be set using a module name
+ // Authority: "cosmos1cwwv22j5ca08ggdv9c2uky355k908694z577tv", // or a specific address
+ }),
+ },
+ {
+ Name: vestingtypes.ModuleName,
+ Config: appconfig.WrapAny(&vestingmodulev1.Module{}),
+ },
+ {
+ Name: banktypes.ModuleName,
+ Config: appconfig.WrapAny(&bankmodulev1.Module{
+ BlockedModuleAccountsOverride: blockAccAddrs,
+ }),
+ },
+ {
+ Name: stakingtypes.ModuleName,
+ Config: appconfig.WrapAny(&stakingmodulev1.Module{}),
+ },
+ {
+ Name: slashingtypes.ModuleName,
+ Config: appconfig.WrapAny(&slashingmodulev1.Module{}),
+ },
+ {
+ Name: paramstypes.ModuleName,
+ Config: appconfig.WrapAny(¶msmodulev1.Module{}),
+ },
+ {
+ Name: "tx",
+ Config: appconfig.WrapAny(&txconfigv1.Config{}),
+ },
+ {
+ Name: genutiltypes.ModuleName,
+ Config: appconfig.WrapAny(&genutilmodulev1.Module{}),
+ },
+ {
+ Name: authz.ModuleName,
+ Config: appconfig.WrapAny(&authzmodulev1.Module{}),
+ },
+ {
+ Name: upgradetypes.ModuleName,
+ Config: appconfig.WrapAny(&upgrademodulev1.Module{}),
+ },
+ {
+ Name: distrtypes.ModuleName,
+ Config: appconfig.WrapAny(&distrmodulev1.Module{}),
+ },
+ {
+ Name: capabilitytypes.ModuleName,
+ Config: appconfig.WrapAny(&capabilitymodulev1.Module{
+ SealKeeper: true,
+ }),
+ },
+ {
+ Name: evidencetypes.ModuleName,
+ Config: appconfig.WrapAny(&evidencemodulev1.Module{}),
+ },
+ {
+ Name: minttypes.ModuleName,
+ Config: appconfig.WrapAny(&mintmodulev1.Module{}),
+ },
+ {
+ Name: group.ModuleName,
+ Config: appconfig.WrapAny(&groupmodulev1.Module{
+ MaxExecutionPeriod: durationpb.New(time.Second * 1209600),
+ MaxMetadataLen: 255,
+ }),
+ },
+ {
+ Name: feegrant.ModuleName,
+ Config: appconfig.WrapAny(&feegrantmodulev1.Module{}),
+ },
+ {
+ Name: govtypes.ModuleName,
+ Config: appconfig.WrapAny(&govmodulev1.Module{}),
+ },
+ {
+ Name: crisistypes.ModuleName,
+ Config: appconfig.WrapAny(&crisismodulev1.Module{}),
+ },
+ {
+ Name: consensustypes.ModuleName,
+ Config: appconfig.WrapAny(&consensusmodulev1.Module{}),
+ },
+ {
+ Name: reputationmoduletypes.ModuleName,
+ Config: appconfig.WrapAny(&reputationmodulev1.Module{}),
+ },
+ {
+ Name: inflationmoduletypes.ModuleName,
+ Config: appconfig.WrapAny(&inflationmodulev1.Module{}),
+ },
+ {
+ Name: epochsmoduletypes.ModuleName,
+ Config: appconfig.WrapAny(&epochsmodulev1.Module{}),
+ },
+
+ // TODO: needs to be fixed
+ // {
+ // Name: evmtypes.ModuleName,
+ // Config: appconfig.WrapAny(&galaevmtypes.ParamsWrapped{}),
+ // },
+ //
+ // {
+ // Name: feemarkettypes.ModuleName,
+ // Config: appconfig.WrapAny(&feemarkettypes.Params{}),
+ // },
+
+ // this line is used by starport scaffolding # stargate/app/moduleConfig
+ },
+ })
+)
diff --git a/app/encoding.go b/app/encoding.go
new file mode 100644
index 0000000..411016f
--- /dev/null
+++ b/app/encoding.go
@@ -0,0 +1,53 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package app
+
+import (
+ "github.com/cosmos/cosmos-sdk/codec"
+ "github.com/cosmos/cosmos-sdk/codec/types"
+ "github.com/cosmos/cosmos-sdk/std"
+ "github.com/cosmos/cosmos-sdk/x/auth/tx"
+
+ enccodec "github.com/evmos/ethermint/encoding/codec"
+
+ "github.com/Galactica-corp/galactica/app/params"
+)
+
+// makeEncodingConfig creates an EncodingConfig for an amino based test configuration.
+func makeEncodingConfig() params.EncodingConfig {
+ amino := codec.NewLegacyAmino()
+ interfaceRegistry := types.NewInterfaceRegistry()
+ marshaler := codec.NewProtoCodec(interfaceRegistry)
+ txCfg := tx.NewTxConfig(marshaler, tx.DefaultSignModes)
+
+ return params.EncodingConfig{
+ InterfaceRegistry: interfaceRegistry,
+ Marshaler: marshaler,
+ TxConfig: txCfg,
+ Amino: amino,
+ }
+}
+
+// MakeEncodingConfig creates an EncodingConfig for testing
+func MakeEncodingConfig() params.EncodingConfig {
+ encodingConfig := makeEncodingConfig()
+ std.RegisterLegacyAminoCodec(encodingConfig.Amino)
+ std.RegisterInterfaces(encodingConfig.InterfaceRegistry)
+ ModuleBasics.RegisterLegacyAminoCodec(encodingConfig.Amino)
+ ModuleBasics.RegisterInterfaces(encodingConfig.InterfaceRegistry)
+ enccodec.RegisterInterfaces(encodingConfig.InterfaceRegistry)
+
+ return encodingConfig
+}
diff --git a/app/export.go b/app/export.go
new file mode 100644
index 0000000..190d01a
--- /dev/null
+++ b/app/export.go
@@ -0,0 +1,214 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package app
+
+import (
+ "encoding/json"
+ "fmt"
+ "log"
+
+ tmproto "github.com/cometbft/cometbft/proto/tendermint/types"
+ servertypes "github.com/cosmos/cosmos-sdk/server/types"
+ sdk "github.com/cosmos/cosmos-sdk/types"
+ slashingtypes "github.com/cosmos/cosmos-sdk/x/slashing/types"
+ "github.com/cosmos/cosmos-sdk/x/staking"
+ stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types"
+)
+
+// ExportAppStateAndValidators exports the state of the application for a genesis
+// file.
+func (app *App) ExportAppStateAndValidators(forZeroHeight bool, jailAllowedAddrs []string, modulesToExport []string) (servertypes.ExportedApp, error) {
+ // as if they could withdraw from the start of the next block
+ ctx := app.NewContext(true, tmproto.Header{Height: app.LastBlockHeight()})
+
+ // We export at last height + 1, because that's the height at which
+ // Tendermint will start InitChain.
+ height := app.LastBlockHeight() + 1
+ if forZeroHeight {
+ height = 0
+ app.prepForZeroHeightGenesis(ctx, jailAllowedAddrs)
+ }
+
+ genState := app.ModuleManager.ExportGenesisForModules(ctx, app.appCodec, modulesToExport)
+ appState, err := json.MarshalIndent(genState, "", " ")
+ if err != nil {
+ return servertypes.ExportedApp{}, err
+ }
+
+ validators, err := staking.WriteValidators(ctx, app.StakingKeeper)
+ return servertypes.ExportedApp{
+ AppState: appState,
+ Validators: validators,
+ Height: height,
+ ConsensusParams: app.BaseApp.GetConsensusParams(ctx),
+ }, err
+}
+
+// prepare for fresh start at zero height
+// NOTE zero height genesis is a temporary feature which will be deprecated
+//
+// in favour of export at a block height
+func (app *App) prepForZeroHeightGenesis(ctx sdk.Context, jailAllowedAddrs []string) {
+ applyAllowedAddrs := false
+
+ // check if there is a allowed address list
+ if len(jailAllowedAddrs) > 0 {
+ applyAllowedAddrs = true
+ }
+
+ allowedAddrsMap := make(map[string]bool)
+
+ for _, addr := range jailAllowedAddrs {
+ _, err := sdk.ValAddressFromBech32(addr)
+ if err != nil {
+ log.Fatal(err)
+ }
+ allowedAddrsMap[addr] = true
+ }
+
+ /* Just to be safe, assert the invariants on current state. */
+ app.CrisisKeeper.AssertInvariants(ctx)
+
+ /* Handle fee distribution state. */
+
+ // withdraw all validator commission
+ app.StakingKeeper.IterateValidators(ctx, func(_ int64, val stakingtypes.ValidatorI) (stop bool) {
+ _, _ = app.DistrKeeper.WithdrawValidatorCommission(ctx, val.GetOperator())
+ return false
+ })
+
+ // withdraw all delegator rewards
+ dels := app.StakingKeeper.GetAllDelegations(ctx)
+ for _, delegation := range dels {
+ valAddr, err := sdk.ValAddressFromBech32(delegation.ValidatorAddress)
+ if err != nil {
+ panic(err)
+ }
+
+ delAddr := sdk.MustAccAddressFromBech32(delegation.DelegatorAddress)
+
+ _, _ = app.DistrKeeper.WithdrawDelegationRewards(ctx, delAddr, valAddr)
+ }
+
+ // clear validator slash events
+ app.DistrKeeper.DeleteAllValidatorSlashEvents(ctx)
+
+ // clear validator historical rewards
+ app.DistrKeeper.DeleteAllValidatorHistoricalRewards(ctx)
+
+ // set context height to zero
+ height := ctx.BlockHeight()
+ ctx = ctx.WithBlockHeight(0)
+
+ // reinitialize all validators
+ app.StakingKeeper.IterateValidators(ctx, func(_ int64, val stakingtypes.ValidatorI) (stop bool) {
+ // donate any unwithdrawn outstanding reward fraction tokens to the community pool
+ scraps := app.DistrKeeper.GetValidatorOutstandingRewardsCoins(ctx, val.GetOperator())
+ feePool := app.DistrKeeper.GetFeePool(ctx)
+ feePool.CommunityPool = feePool.CommunityPool.Add(scraps...)
+ app.DistrKeeper.SetFeePool(ctx, feePool)
+
+ if err := app.DistrKeeper.Hooks().AfterValidatorCreated(ctx, val.GetOperator()); err != nil {
+ panic(err)
+ }
+ return false
+ })
+
+ // reinitialize all delegations
+ for _, del := range dels {
+ valAddr, err := sdk.ValAddressFromBech32(del.ValidatorAddress)
+ if err != nil {
+ panic(err)
+ }
+ delAddr := sdk.MustAccAddressFromBech32(del.DelegatorAddress)
+
+ if err := app.DistrKeeper.Hooks().BeforeDelegationCreated(ctx, delAddr, valAddr); err != nil {
+ // never called as BeforeDelegationCreated always returns nil
+ panic(fmt.Errorf("error while incrementing period: %w", err))
+ }
+
+ if err := app.DistrKeeper.Hooks().AfterDelegationModified(ctx, delAddr, valAddr); err != nil {
+ // never called as AfterDelegationModified always returns nil
+ panic(fmt.Errorf("error while creating a new delegation period record: %w", err))
+ }
+ }
+
+ // reset context height
+ ctx = ctx.WithBlockHeight(height)
+
+ /* Handle staking state. */
+
+ // iterate through redelegations, reset creation height
+ app.StakingKeeper.IterateRedelegations(ctx, func(_ int64, red stakingtypes.Redelegation) (stop bool) {
+ for i := range red.Entries {
+ red.Entries[i].CreationHeight = 0
+ }
+ app.StakingKeeper.SetRedelegation(ctx, red)
+ return false
+ })
+
+ // iterate through unbonding delegations, reset creation height
+ app.StakingKeeper.IterateUnbondingDelegations(ctx, func(_ int64, ubd stakingtypes.UnbondingDelegation) (stop bool) {
+ for i := range ubd.Entries {
+ ubd.Entries[i].CreationHeight = 0
+ }
+ app.StakingKeeper.SetUnbondingDelegation(ctx, ubd)
+ return false
+ })
+
+ // Iterate through validators by power descending, reset bond heights, and
+ // update bond intra-tx counters.
+ store := ctx.KVStore(app.GetKey(stakingtypes.StoreKey))
+ iter := sdk.KVStoreReversePrefixIterator(store, stakingtypes.ValidatorsKey)
+ counter := int16(0)
+
+ for ; iter.Valid(); iter.Next() {
+ addr := sdk.ValAddress(stakingtypes.AddressFromValidatorsKey(iter.Key()))
+ validator, found := app.StakingKeeper.GetValidator(ctx, addr)
+ if !found {
+ panic("expected validator, not found")
+ }
+
+ validator.UnbondingHeight = 0
+ if applyAllowedAddrs && !allowedAddrsMap[addr.String()] {
+ validator.Jailed = true
+ }
+
+ app.StakingKeeper.SetValidator(ctx, validator)
+ counter++
+ }
+
+ if err := iter.Close(); err != nil {
+ app.Logger().Error("error while closing the key-value store reverse prefix iterator: ", err)
+ return
+ }
+
+ _, err := app.StakingKeeper.ApplyAndReturnValidatorSetUpdates(ctx)
+ if err != nil {
+ log.Fatal(err)
+ }
+
+ /* Handle slashing state. */
+
+ // reset start height on signing infos
+ app.SlashingKeeper.IterateValidatorSigningInfos(
+ ctx,
+ func(addr sdk.ConsAddress, info slashingtypes.ValidatorSigningInfo) (stop bool) {
+ info.StartHeight = 0
+ app.SlashingKeeper.SetValidatorSigningInfo(ctx, addr, info)
+ return false
+ },
+ )
+}
diff --git a/app/genesis.go b/app/genesis.go
new file mode 100644
index 0000000..35ad87c
--- /dev/null
+++ b/app/genesis.go
@@ -0,0 +1,35 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package app
+
+import (
+ "encoding/json"
+
+ "github.com/cosmos/cosmos-sdk/codec"
+)
+
+// The genesis state of the blockchain is represented here as a map of raw json
+// messages key'd by a identifier string.
+// The identifier is used to determine which module genesis information belongs
+// to so it may be appropriately routed during init chain.
+// Within this application default genesis information is retrieved from
+// the ModuleBasicManager which populates json from each BasicModule
+// object provided to it during init.
+type GenesisState map[string]json.RawMessage
+
+// NewDefaultGenesisState generates the default state for the application.
+func NewDefaultGenesisState(cdc codec.JSONCodec) GenesisState {
+ return ModuleBasics.DefaultGenesis(cdc)
+}
diff --git a/app/ibc.go b/app/ibc.go
new file mode 100644
index 0000000..d9100cc
--- /dev/null
+++ b/app/ibc.go
@@ -0,0 +1,177 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package app
+
+import (
+ sdk "github.com/cosmos/cosmos-sdk/types"
+ "github.com/cosmos/cosmos-sdk/types/module"
+ govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
+ govv1beta1 "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1"
+ "github.com/cosmos/cosmos-sdk/x/upgrade"
+ upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types"
+ ica "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts"
+ icacontroller "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller"
+ icacontrollerkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller/keeper"
+ icacontrollertypes "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller/types"
+ icahost "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host"
+ icahostkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host/keeper"
+ icahosttypes "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host/types"
+ ibcfee "github.com/cosmos/ibc-go/v7/modules/apps/29-fee"
+ ibcfeekeeper "github.com/cosmos/ibc-go/v7/modules/apps/29-fee/keeper"
+ ibcfeetypes "github.com/cosmos/ibc-go/v7/modules/apps/29-fee/types"
+ ibctransfer "github.com/cosmos/ibc-go/v7/modules/apps/transfer"
+ ibctransferkeeper "github.com/cosmos/ibc-go/v7/modules/apps/transfer/keeper"
+ ibctransfertypes "github.com/cosmos/ibc-go/v7/modules/apps/transfer/types"
+ ibc "github.com/cosmos/ibc-go/v7/modules/core"
+ ibcclient "github.com/cosmos/ibc-go/v7/modules/core/02-client"
+ ibcclienttypes "github.com/cosmos/ibc-go/v7/modules/core/02-client/types"
+ porttypes "github.com/cosmos/ibc-go/v7/modules/core/05-port/types"
+ ibcexported "github.com/cosmos/ibc-go/v7/modules/core/exported"
+ ibckeeper "github.com/cosmos/ibc-go/v7/modules/core/keeper"
+ solomachine "github.com/cosmos/ibc-go/v7/modules/light-clients/06-solomachine"
+ ibctm "github.com/cosmos/ibc-go/v7/modules/light-clients/07-tendermint"
+ // this line is used by starport scaffolding # ibc/app/import
+)
+
+func (app *App) registerIBCModules() {
+ // set up non depinject support modules store keys
+ app.keys = sdk.NewKVStoreKeys(
+ ibcexported.StoreKey,
+ ibctransfertypes.StoreKey,
+ ibcfeetypes.StoreKey,
+ icahosttypes.StoreKey,
+ icacontrollertypes.StoreKey,
+ )
+ app.MountKVStores(app.keys)
+
+ // set params subspaces
+ for _, m := range []string{ibctransfertypes.ModuleName, ibcexported.ModuleName, icahosttypes.SubModuleName, icacontrollertypes.SubModuleName} {
+ app.ParamsKeeper.Subspace(m)
+ }
+
+ // add capability keeper and ScopeToModule for ibc module
+ scopedIBCKeeper := app.CapabilityKeeper.ScopeToModule(ibcexported.ModuleName)
+ scopedIBCTransferKeeper := app.CapabilityKeeper.ScopeToModule(ibctransfertypes.ModuleName)
+ scopedICAControllerKeeper := app.CapabilityKeeper.ScopeToModule(icacontrollertypes.SubModuleName)
+ scopedICAHostKeeper := app.CapabilityKeeper.ScopeToModule(icahosttypes.SubModuleName)
+
+ // Create IBC keeper
+ app.IBCKeeper = ibckeeper.NewKeeper(
+ app.appCodec, app.GetKey(ibcexported.StoreKey), app.GetSubspace(ibcexported.ModuleName), app.StakingKeeper, app.UpgradeKeeper, scopedIBCKeeper,
+ )
+
+ // Register the proposal types
+ // Deprecated: Avoid adding new handlers, instead use the new proposal flow
+ // by granting the governance module the right to execute the message.
+ // See: https://docs.cosmos.network/main/modules/gov#proposal-messages
+ govRouter := govv1beta1.NewRouter()
+ govRouter.AddRoute(govtypes.RouterKey, govv1beta1.ProposalHandler).
+ AddRoute(upgradetypes.RouterKey, upgrade.NewSoftwareUpgradeProposalHandler(app.UpgradeKeeper)).
+ AddRoute(ibcclienttypes.RouterKey, ibcclient.NewClientProposalHandler(app.IBCKeeper.ClientKeeper))
+
+ app.IBCFeeKeeper = ibcfeekeeper.NewKeeper(
+ app.appCodec, app.GetKey(ibcfeetypes.StoreKey),
+ app.IBCKeeper.ChannelKeeper, // may be replaced with IBC middleware
+ app.IBCKeeper.ChannelKeeper,
+ &app.IBCKeeper.PortKeeper, app.AccountKeeper, app.BankKeeper,
+ )
+
+ // Create IBC transfer keeper
+ app.TransferKeeper = ibctransferkeeper.NewKeeper(
+ app.appCodec,
+ app.GetKey(ibctransfertypes.StoreKey),
+ app.GetSubspace(ibctransfertypes.ModuleName),
+ app.IBCKeeper.ChannelKeeper,
+ app.IBCKeeper.ChannelKeeper,
+ &app.IBCKeeper.PortKeeper,
+ app.AccountKeeper,
+ app.BankKeeper,
+ scopedIBCTransferKeeper,
+ )
+
+ // Create interchain account keepers
+ app.ICAHostKeeper = icahostkeeper.NewKeeper(
+ app.appCodec,
+ app.GetKey(icahosttypes.StoreKey),
+ app.GetSubspace(icahosttypes.SubModuleName),
+ app.IBCFeeKeeper, // use ics29 fee as ics4Wrapper in middleware stack
+ app.IBCKeeper.ChannelKeeper,
+ &app.IBCKeeper.PortKeeper,
+ app.AccountKeeper,
+ scopedICAHostKeeper,
+ app.MsgServiceRouter(),
+ )
+ app.ICAControllerKeeper = icacontrollerkeeper.NewKeeper(
+ app.appCodec,
+ app.GetKey(icacontrollertypes.StoreKey),
+ app.GetSubspace(icacontrollertypes.SubModuleName),
+ app.IBCFeeKeeper, // use ics29 fee as ics4Wrapper in middleware stack
+ app.IBCKeeper.ChannelKeeper,
+ &app.IBCKeeper.PortKeeper,
+ scopedICAControllerKeeper,
+ app.MsgServiceRouter(),
+ )
+ app.GovKeeper.SetLegacyRouter(govRouter)
+
+ // Create IBC modules with ibcfee middleware
+ transferIBCModule := ibcfee.NewIBCMiddleware(ibctransfer.NewIBCModule(app.TransferKeeper), app.IBCFeeKeeper)
+
+ // integration point for custom authentication modules
+ var noAuthzModule porttypes.IBCModule
+ icaControllerIBCModule := ibcfee.NewIBCMiddleware(
+ icacontroller.NewIBCMiddleware(noAuthzModule, app.ICAControllerKeeper),
+ app.IBCFeeKeeper,
+ )
+
+ icaHostIBCModule := ibcfee.NewIBCMiddleware(icahost.NewIBCModule(app.ICAHostKeeper), app.IBCFeeKeeper)
+
+ // Create static IBC router, add transfer route, then set and seal it
+ ibcRouter := porttypes.NewRouter().
+ AddRoute(ibctransfertypes.ModuleName, transferIBCModule).
+ AddRoute(icacontrollertypes.SubModuleName, icaControllerIBCModule).
+ AddRoute(icahosttypes.SubModuleName, icaHostIBCModule)
+
+ // this line is used by starport scaffolding # ibc/app/module
+
+ app.IBCKeeper.SetRouter(ibcRouter)
+
+ // NOTE: Any module instantiated in the module manager that is later modified
+ // must be passed by reference here.
+ legacyModules := []module.AppModule{
+ ibc.NewAppModule(app.IBCKeeper),
+ ibctransfer.NewAppModule(app.TransferKeeper),
+ ibcfee.NewAppModule(app.IBCFeeKeeper),
+ ica.NewAppModule(&app.ICAControllerKeeper, &app.ICAHostKeeper),
+ }
+ if err := app.RegisterModules(legacyModules...); err != nil {
+ panic(err)
+ }
+
+ cfg := app.Configurator()
+ for _, m := range legacyModules {
+ if s, ok := m.(module.HasServices); ok {
+ s.RegisterServices(cfg)
+ }
+ }
+
+ // register additional types
+ ibctm.AppModuleBasic{}.RegisterInterfaces(app.interfaceRegistry)
+ solomachine.AppModuleBasic{}.RegisterInterfaces(app.interfaceRegistry)
+
+ app.ScopedIBCKeeper = scopedIBCKeeper
+ app.ScopedIBCTransferKeeper = scopedIBCTransferKeeper
+ app.ScopedICAHostKeeper = scopedICAHostKeeper
+ app.ScopedICAControllerKeeper = scopedICAControllerKeeper
+}
diff --git a/app/params/encoding.go b/app/params/encoding.go
new file mode 100644
index 0000000..57eed9a
--- /dev/null
+++ b/app/params/encoding.go
@@ -0,0 +1,30 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package params
+
+import (
+ "github.com/cosmos/cosmos-sdk/client"
+ "github.com/cosmos/cosmos-sdk/codec"
+ "github.com/cosmos/cosmos-sdk/codec/types"
+)
+
+// EncodingConfig specifies the concrete encoding types to use for a given app.
+// This is provided for compatibility between protobuf and amino implementations.
+type EncodingConfig struct {
+ InterfaceRegistry types.InterfaceRegistry
+ Marshaler codec.Codec
+ TxConfig client.TxConfig
+ Amino *codec.LegacyAmino
+}
diff --git a/app/sim_bench_test.go b/app/sim_bench_test.go
new file mode 100644
index 0000000..ef10368
--- /dev/null
+++ b/app/sim_bench_test.go
@@ -0,0 +1,162 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package app_test
+
+import (
+ "fmt"
+ "os"
+ "testing"
+
+ tmproto "github.com/cometbft/cometbft/proto/tendermint/types"
+ "github.com/cosmos/cosmos-sdk/client/flags"
+ "github.com/cosmos/cosmos-sdk/server"
+ simtestutil "github.com/cosmos/cosmos-sdk/testutil/sims"
+ simtypes "github.com/cosmos/cosmos-sdk/types/simulation"
+ "github.com/cosmos/cosmos-sdk/x/simulation"
+ simcli "github.com/cosmos/cosmos-sdk/x/simulation/client/cli"
+ "github.com/stretchr/testify/require"
+
+ "github.com/Galactica-corp/galactica/app"
+)
+
+// Profile with:
+// `go test -benchmem -run=^$ -bench ^BenchmarkFullAppSimulation ./app -Commit=true -cpuprofile cpu.out`
+func BenchmarkFullAppSimulation(b *testing.B) {
+ b.ReportAllocs()
+
+ config := simcli.NewConfigFromFlags()
+ config.ChainID = SimAppChainID
+
+ db, dir, logger, skip, err := simtestutil.SetupSimulation(config, "goleveldb-app-sim", "Simulation", simcli.FlagVerboseValue, simcli.FlagEnabledValue)
+ if err != nil {
+ b.Fatalf("simulation setup failed: %s", err.Error())
+ }
+
+ if skip {
+ b.Skip("skipping benchmark application simulation")
+ }
+
+ defer func() {
+ require.NoError(b, db.Close())
+ require.NoError(b, os.RemoveAll(dir))
+ }()
+
+ appOptions := make(simtestutil.AppOptionsMap, 0)
+ appOptions[flags.FlagHome] = app.DefaultNodeHome
+ appOptions[server.FlagInvCheckPeriod] = simcli.FlagPeriodValue
+
+ bApp := app.New(logger, db, nil, true, appOptions, interBlockCacheOpt())
+ require.Equal(b, app.Name, bApp.Name())
+
+ // run randomized simulation
+ _, simParams, simErr := simulation.SimulateFromSeed(
+ b,
+ os.Stdout,
+ bApp.BaseApp,
+ simtestutil.AppStateFn(bApp.AppCodec(), bApp.SimulationManager(), bApp.DefaultGenesis()),
+ simtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1
+ simtestutil.SimulationOperations(bApp, bApp.AppCodec(), config),
+ app.BlockedAddresses(),
+ config,
+ bApp.AppCodec(),
+ )
+
+ // export state and simParams before the simulation error is checked
+ if err = simtestutil.CheckExportSimulation(bApp, config, simParams); err != nil {
+ b.Fatal(err)
+ }
+
+ if simErr != nil {
+ b.Fatal(simErr)
+ }
+
+ if config.Commit {
+ simtestutil.PrintStats(db)
+ }
+}
+
+func BenchmarkInvariants(b *testing.B) {
+ b.ReportAllocs()
+
+ config := simcli.NewConfigFromFlags()
+ config.ChainID = SimAppChainID
+
+ db, dir, logger, skip, err := simtestutil.SetupSimulation(config, "leveldb-app-invariant-bench", "Simulation", simcli.FlagVerboseValue, simcli.FlagEnabledValue)
+ if err != nil {
+ b.Fatalf("simulation setup failed: %s", err.Error())
+ }
+
+ if skip {
+ b.Skip("skipping benchmark application simulation")
+ }
+
+ config.AllInvariants = false
+
+ defer func() {
+ require.NoError(b, db.Close())
+ require.NoError(b, os.RemoveAll(dir))
+ }()
+
+ appOptions := make(simtestutil.AppOptionsMap, 0)
+ appOptions[flags.FlagHome] = app.DefaultNodeHome
+ appOptions[server.FlagInvCheckPeriod] = simcli.FlagPeriodValue
+
+ bApp := app.New(logger, db, nil, true, appOptions, interBlockCacheOpt())
+ require.Equal(b, app.Name, bApp.Name())
+
+ // run randomized simulation
+ _, simParams, simErr := simulation.SimulateFromSeed(
+ b,
+ os.Stdout,
+ bApp.BaseApp,
+ simtestutil.AppStateFn(bApp.AppCodec(), bApp.SimulationManager(), bApp.DefaultGenesis()),
+ simtypes.RandomAccounts, // Replace with own random account function if using keys other than secp256k1
+ simtestutil.SimulationOperations(bApp, bApp.AppCodec(), config),
+ app.BlockedAddresses(),
+ config,
+ bApp.AppCodec(),
+ )
+
+ // export state and simParams before the simulation error is checked
+ if err = simtestutil.CheckExportSimulation(bApp, config, simParams); err != nil {
+ b.Fatal(err)
+ }
+
+ if simErr != nil {
+ b.Fatal(simErr)
+ }
+
+ if config.Commit {
+ simtestutil.PrintStats(db)
+ }
+
+ ctx := bApp.NewContext(true, tmproto.Header{Height: bApp.LastBlockHeight() + 1})
+
+ // 3. Benchmark each invariant separately
+ //
+ // NOTE: We use the crisis keeper as it has all the invariants registered with
+ // their respective metadata which makes it useful for testing/benchmarking.
+ for _, cr := range bApp.CrisisKeeper.Routes() {
+ cr := cr
+ b.Run(fmt.Sprintf("%s/%s", cr.ModuleName, cr.Route), func(b *testing.B) {
+ if res, stop := cr.Invar(ctx); stop {
+ b.Fatalf(
+ "broken invariant at block %d of %d\n%s",
+ ctx.BlockHeight()-1, config.NumBlocks, res,
+ )
+ }
+ })
+ }
+}
diff --git a/app/sim_test.go b/app/sim_test.go
new file mode 100644
index 0000000..5fe8d5a
--- /dev/null
+++ b/app/sim_test.go
@@ -0,0 +1,429 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package app_test
+
+import (
+ "encoding/json"
+ "fmt"
+ "math/rand"
+ "os"
+ "runtime/debug"
+ "strings"
+ "testing"
+ "time"
+
+ dbm "github.com/cometbft/cometbft-db"
+ abci "github.com/cometbft/cometbft/abci/types"
+ "github.com/cometbft/cometbft/libs/log"
+ tmproto "github.com/cometbft/cometbft/proto/tendermint/types"
+ "github.com/cosmos/cosmos-sdk/baseapp"
+ "github.com/cosmos/cosmos-sdk/client/flags"
+ "github.com/cosmos/cosmos-sdk/server"
+ "github.com/cosmos/cosmos-sdk/store"
+ storetypes "github.com/cosmos/cosmos-sdk/store/types"
+ simtestutil "github.com/cosmos/cosmos-sdk/testutil/sims"
+ sdk "github.com/cosmos/cosmos-sdk/types"
+ simulationtypes "github.com/cosmos/cosmos-sdk/types/simulation"
+ authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
+ authzkeeper "github.com/cosmos/cosmos-sdk/x/authz/keeper"
+ banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
+ capabilitytypes "github.com/cosmos/cosmos-sdk/x/capability/types"
+ distrtypes "github.com/cosmos/cosmos-sdk/x/distribution/types"
+ evidencetypes "github.com/cosmos/cosmos-sdk/x/evidence/types"
+ govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
+ minttypes "github.com/cosmos/cosmos-sdk/x/mint/types"
+ paramstypes "github.com/cosmos/cosmos-sdk/x/params/types"
+ "github.com/cosmos/cosmos-sdk/x/simulation"
+ simcli "github.com/cosmos/cosmos-sdk/x/simulation/client/cli"
+ slashingtypes "github.com/cosmos/cosmos-sdk/x/slashing/types"
+ stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types"
+ "github.com/stretchr/testify/require"
+
+ "github.com/Galactica-corp/galactica/app"
+)
+
+const (
+ SimAppChainID = "galactica-simapp"
+)
+
+type StoreKeysPrefixes struct {
+ A storetypes.StoreKey
+ B storetypes.StoreKey
+ Prefixes [][]byte
+}
+
+// Get flags every time the simulator is run
+func init() {
+ simcli.GetSimulatorFlags()
+}
+
+// fauxMerkleModeOpt returns a BaseApp option to use a dbStoreAdapter instead of
+// an IAVLStore for faster simulation speed.
+func fauxMerkleModeOpt(bapp *baseapp.BaseApp) {
+ bapp.SetFauxMerkleMode()
+}
+
+// interBlockCacheOpt returns a BaseApp option function that sets the persistent
+// inter-block write-through cache.
+func interBlockCacheOpt() func(*baseapp.BaseApp) {
+ return baseapp.SetInterBlockCache(store.NewCommitKVStoreCacheManager())
+}
+
+// BenchmarkSimulation run the chain simulation
+// Running using starport command:
+// `ignite chain simulate -v --numBlocks 200 --blockSize 50`
+// Running as go benchmark test:
+// `go test -benchmem -run=^$ -bench ^BenchmarkSimulation ./app -NumBlocks=200 -BlockSize 50 -Commit=true -Verbose=true -Enabled=true`
+func BenchmarkSimulation(b *testing.B) {
+ simcli.FlagSeedValue = time.Now().Unix()
+ simcli.FlagVerboseValue = true
+ simcli.FlagCommitValue = true
+ simcli.FlagEnabledValue = true
+
+ config := simcli.NewConfigFromFlags()
+ config.ChainID = SimAppChainID
+
+ db, dir, logger, skip, err := simtestutil.SetupSimulation(config, "leveldb-app-sim", "Simulation", simcli.FlagVerboseValue, simcli.FlagEnabledValue)
+ if skip {
+ b.Skip("skipping application simulation")
+ }
+ require.NoError(b, err, "simulation setup failed")
+
+ defer func() {
+ require.NoError(b, db.Close())
+ require.NoError(b, os.RemoveAll(dir))
+ }()
+
+ appOptions := make(simtestutil.AppOptionsMap, 0)
+ appOptions[flags.FlagHome] = app.DefaultNodeHome
+ appOptions[server.FlagInvCheckPeriod] = simcli.FlagPeriodValue
+
+ bApp := app.New(logger, db, nil, true, appOptions, fauxMerkleModeOpt, baseapp.SetChainID(SimAppChainID))
+ require.Equal(b, app.Name, bApp.Name())
+
+ // run randomized simulation
+ _, simParams, simErr := simulation.SimulateFromSeed(
+ b,
+ os.Stdout,
+ bApp.BaseApp,
+ simtestutil.AppStateFn(bApp.AppCodec(), bApp.SimulationManager(), bApp.DefaultGenesis()),
+ simulationtypes.RandomAccounts,
+ simtestutil.SimulationOperations(bApp, bApp.AppCodec(), config),
+ app.BlockedAddresses(),
+ config,
+ bApp.AppCodec(),
+ )
+
+ // export state and simParams before the simulation error is checked
+ err = simtestutil.CheckExportSimulation(bApp, config, simParams)
+ require.NoError(b, err)
+ require.NoError(b, simErr)
+
+ if config.Commit {
+ simtestutil.PrintStats(db)
+ }
+}
+
+func TestAppImportExport(t *testing.T) {
+ config := simcli.NewConfigFromFlags()
+ config.ChainID = SimAppChainID
+
+ db, dir, logger, skip, err := simtestutil.SetupSimulation(config, "leveldb-app-sim", "Simulation", simcli.FlagVerboseValue, simcli.FlagEnabledValue)
+ if skip {
+ t.Skip("skipping application import/export simulation")
+ }
+ require.NoError(t, err, "simulation setup failed")
+
+ defer func() {
+ require.NoError(t, db.Close())
+ require.NoError(t, os.RemoveAll(dir))
+ }()
+
+ appOptions := make(simtestutil.AppOptionsMap, 0)
+ appOptions[flags.FlagHome] = app.DefaultNodeHome
+ appOptions[server.FlagInvCheckPeriod] = simcli.FlagPeriodValue
+
+ bApp := app.New(logger, db, nil, true, appOptions, fauxMerkleModeOpt, baseapp.SetChainID(SimAppChainID))
+ require.Equal(t, app.Name, bApp.Name())
+
+ // Run randomized simulation
+ _, simParams, simErr := simulation.SimulateFromSeed(
+ t,
+ os.Stdout,
+ bApp.BaseApp,
+ simtestutil.AppStateFn(bApp.AppCodec(), bApp.SimulationManager(), bApp.DefaultGenesis()),
+ simulationtypes.RandomAccounts,
+ simtestutil.SimulationOperations(bApp, bApp.AppCodec(), config),
+ app.BlockedAddresses(),
+ config,
+ bApp.AppCodec(),
+ )
+
+ // export state and simParams before the simulation error is checked
+ err = simtestutil.CheckExportSimulation(bApp, config, simParams)
+ require.NoError(t, err)
+ require.NoError(t, simErr)
+
+ if config.Commit {
+ simtestutil.PrintStats(db)
+ }
+
+ fmt.Printf("exporting genesis...\n")
+
+ exported, err := bApp.ExportAppStateAndValidators(false, []string{}, []string{})
+ require.NoError(t, err)
+
+ fmt.Printf("importing genesis...\n")
+
+ newDB, newDir, _, _, err := simtestutil.SetupSimulation(config, "leveldb-app-sim-2", "Simulation-2", simcli.FlagVerboseValue, simcli.FlagEnabledValue)
+ require.NoError(t, err, "simulation setup failed")
+
+ defer func() {
+ require.NoError(t, newDB.Close())
+ require.NoError(t, os.RemoveAll(newDir))
+ }()
+
+ newApp := app.New(log.NewNopLogger(), newDB, nil, true, appOptions, fauxMerkleModeOpt, baseapp.SetChainID(SimAppChainID))
+ require.Equal(t, app.Name, newApp.Name())
+
+ var genesisState app.GenesisState
+ err = json.Unmarshal(exported.AppState, &genesisState)
+ require.NoError(t, err)
+
+ defer func() {
+ if r := recover(); r != nil {
+ err := fmt.Sprintf("%v", r)
+ if !strings.Contains(err, "validator set is empty after InitGenesis") {
+ panic(r)
+ }
+ logger.Info("Skipping simulation as all validators have been unbonded")
+ logger.Info("err", err, "stacktrace", string(debug.Stack()))
+ }
+ }()
+
+ ctxA := bApp.NewContext(true, tmproto.Header{Height: bApp.LastBlockHeight()})
+ ctxB := newApp.NewContext(true, tmproto.Header{Height: bApp.LastBlockHeight()})
+ newApp.ModuleManager.InitGenesis(ctxB, bApp.AppCodec(), genesisState)
+ newApp.StoreConsensusParams(ctxB, exported.ConsensusParams)
+
+ fmt.Printf("comparing stores...\n")
+
+ storeKeysPrefixes := []StoreKeysPrefixes{
+ {bApp.GetKey(authtypes.StoreKey), newApp.GetKey(authtypes.StoreKey), [][]byte{}},
+ {
+ bApp.GetKey(stakingtypes.StoreKey), newApp.GetKey(stakingtypes.StoreKey),
+ [][]byte{
+ stakingtypes.UnbondingQueueKey, stakingtypes.RedelegationQueueKey, stakingtypes.ValidatorQueueKey,
+ stakingtypes.HistoricalInfoKey, stakingtypes.UnbondingIDKey, stakingtypes.UnbondingIndexKey, stakingtypes.UnbondingTypeKey, stakingtypes.ValidatorUpdatesKey,
+ },
+ }, // ordering may change but it doesn't matter
+ {bApp.GetKey(slashingtypes.StoreKey), newApp.GetKey(slashingtypes.StoreKey), [][]byte{}},
+ {bApp.GetKey(minttypes.StoreKey), newApp.GetKey(minttypes.StoreKey), [][]byte{}},
+ {bApp.GetKey(distrtypes.StoreKey), newApp.GetKey(distrtypes.StoreKey), [][]byte{}},
+ {bApp.GetKey(banktypes.StoreKey), newApp.GetKey(banktypes.StoreKey), [][]byte{banktypes.BalancesPrefix}},
+ {bApp.GetKey(paramstypes.StoreKey), newApp.GetKey(paramstypes.StoreKey), [][]byte{}},
+ {bApp.GetKey(govtypes.StoreKey), newApp.GetKey(govtypes.StoreKey), [][]byte{}},
+ {bApp.GetKey(evidencetypes.StoreKey), newApp.GetKey(evidencetypes.StoreKey), [][]byte{}},
+ {bApp.GetKey(capabilitytypes.StoreKey), newApp.GetKey(capabilitytypes.StoreKey), [][]byte{}},
+ {bApp.GetKey(authzkeeper.StoreKey), newApp.GetKey(authzkeeper.StoreKey), [][]byte{authzkeeper.GrantKey, authzkeeper.GrantQueuePrefix}},
+ }
+
+ for _, skp := range storeKeysPrefixes {
+ storeA := ctxA.KVStore(skp.A)
+ storeB := ctxB.KVStore(skp.B)
+
+ failedKVAs, failedKVBs := sdk.DiffKVStores(storeA, storeB, skp.Prefixes)
+ require.Equal(t, len(failedKVAs), len(failedKVBs), "unequal sets of key-values to compare")
+
+ fmt.Printf("compared %d different key/value pairs between %s and %s\n", len(failedKVAs), skp.A, skp.B)
+ require.Equal(t, 0, len(failedKVAs), simtestutil.GetSimulationLog(skp.A.Name(), bApp.SimulationManager().StoreDecoders, failedKVAs, failedKVBs))
+ }
+}
+
+func TestAppSimulationAfterImport(t *testing.T) {
+ config := simcli.NewConfigFromFlags()
+ config.ChainID = SimAppChainID
+
+ db, dir, logger, skip, err := simtestutil.SetupSimulation(config, "leveldb-app-sim", "Simulation", simcli.FlagVerboseValue, simcli.FlagEnabledValue)
+ if skip {
+ t.Skip("skipping application simulation after import")
+ }
+ require.NoError(t, err, "simulation setup failed")
+
+ defer func() {
+ require.NoError(t, db.Close())
+ require.NoError(t, os.RemoveAll(dir))
+ }()
+
+ appOptions := make(simtestutil.AppOptionsMap, 0)
+ appOptions[flags.FlagHome] = app.DefaultNodeHome
+ appOptions[server.FlagInvCheckPeriod] = simcli.FlagPeriodValue
+
+ bApp := app.New(logger, db, nil, true, appOptions, fauxMerkleModeOpt, baseapp.SetChainID(SimAppChainID))
+ require.Equal(t, app.Name, bApp.Name())
+
+ // Run randomized simulation
+ stopEarly, simParams, simErr := simulation.SimulateFromSeed(
+ t,
+ os.Stdout,
+ bApp.BaseApp,
+ simtestutil.AppStateFn(bApp.AppCodec(), bApp.SimulationManager(), bApp.DefaultGenesis()),
+ simulationtypes.RandomAccounts,
+ simtestutil.SimulationOperations(bApp, bApp.AppCodec(), config),
+ app.BlockedAddresses(),
+ config,
+ bApp.AppCodec(),
+ )
+
+ // export state and simParams before the simulation error is checked
+ err = simtestutil.CheckExportSimulation(bApp, config, simParams)
+ require.NoError(t, err)
+ require.NoError(t, simErr)
+
+ if config.Commit {
+ simtestutil.PrintStats(db)
+ }
+
+ if stopEarly {
+ fmt.Println("can't export or import a zero-validator genesis, exiting test...")
+ return
+ }
+
+ fmt.Printf("exporting genesis...\n")
+
+ exported, err := bApp.ExportAppStateAndValidators(true, []string{}, []string{})
+ require.NoError(t, err)
+
+ fmt.Printf("importing genesis...\n")
+
+ newDB, newDir, _, _, err := simtestutil.SetupSimulation(config, "leveldb-app-sim-2", "Simulation-2", simcli.FlagVerboseValue, simcli.FlagEnabledValue)
+ require.NoError(t, err, "simulation setup failed")
+
+ defer func() {
+ require.NoError(t, newDB.Close())
+ require.NoError(t, os.RemoveAll(newDir))
+ }()
+
+ newApp := app.New(log.NewNopLogger(), newDB, nil, true, appOptions, fauxMerkleModeOpt, baseapp.SetChainID(SimAppChainID))
+ require.Equal(t, app.Name, newApp.Name())
+
+ newApp.InitChain(abci.RequestInitChain{
+ ChainId: SimAppChainID,
+ AppStateBytes: exported.AppState,
+ })
+
+ _, _, err = simulation.SimulateFromSeed(
+ t,
+ os.Stdout,
+ newApp.BaseApp,
+ simtestutil.AppStateFn(bApp.AppCodec(), bApp.SimulationManager(), bApp.DefaultGenesis()),
+ simulationtypes.RandomAccounts,
+ simtestutil.SimulationOperations(newApp, newApp.AppCodec(), config),
+ app.BlockedAddresses(),
+ config,
+ bApp.AppCodec(),
+ )
+ require.NoError(t, err)
+}
+
+func TestAppStateDeterminism(t *testing.T) {
+ if !simcli.FlagEnabledValue {
+ t.Skip("skipping application simulation")
+ }
+
+ config := simcli.NewConfigFromFlags()
+ config.InitialBlockHeight = 1
+ config.ExportParamsPath = ""
+ config.OnOperation = true
+ config.AllInvariants = true
+
+ numSeeds := 3
+ numTimesToRunPerSeed := 5
+
+ // We will be overriding the random seed and just run a single simulation on the provided seed value
+ if config.Seed != simcli.DefaultSeedValue {
+ numSeeds = 1
+ }
+
+ appHashList := make([]json.RawMessage, numTimesToRunPerSeed)
+ appOptions := make(simtestutil.AppOptionsMap, 0)
+ appOptions[flags.FlagHome] = app.DefaultNodeHome
+ appOptions[server.FlagInvCheckPeriod] = simcli.FlagPeriodValue
+
+ for i := 0; i < numSeeds; i++ {
+ if config.Seed == simcli.DefaultSeedValue {
+ config.Seed = rand.Int63()
+ }
+ fmt.Println("config.Seed: ", config.Seed)
+
+ for j := 0; j < numTimesToRunPerSeed; j++ {
+ var logger log.Logger
+ if simcli.FlagVerboseValue {
+ logger = log.TestingLogger()
+ } else {
+ logger = log.NewNopLogger()
+ }
+ chainID := fmt.Sprintf("chain-id-%d-%d", i, j)
+ config.ChainID = chainID
+
+ db := dbm.NewMemDB()
+ bApp := app.New(
+ logger,
+ db,
+ nil,
+ true,
+ appOptions,
+ interBlockCacheOpt(),
+ baseapp.SetChainID(chainID),
+ )
+
+ fmt.Printf(
+ "running non-determinism simulation; seed %d: %d/%d, attempt: %d/%d\n",
+ config.Seed, i+1, numSeeds, j+1, numTimesToRunPerSeed,
+ )
+
+ _, _, err := simulation.SimulateFromSeed(
+ t,
+ os.Stdout,
+ bApp.BaseApp,
+ simtestutil.AppStateFn(
+ bApp.AppCodec(),
+ bApp.SimulationManager(),
+ app.NewDefaultGenesisState(bApp.AppCodec()),
+ ),
+ simulationtypes.RandomAccounts,
+ simtestutil.SimulationOperations(bApp, bApp.AppCodec(), config),
+ app.BlockedAddresses(),
+ config,
+ bApp.AppCodec(),
+ )
+ require.NoError(t, err)
+
+ if config.Commit {
+ simtestutil.PrintStats(db)
+ }
+
+ appHash := bApp.LastCommitID().Hash
+ appHashList[j] = appHash
+
+ if j != 0 {
+ require.Equal(
+ t, string(appHashList[0]), string(appHashList[j]),
+ "non-determinism in seed %d: %d/%d, attempt: %d/%d\n", config.Seed, i+1, numSeeds, j+1, numTimesToRunPerSeed,
+ )
+ }
+ }
+ }
+}
diff --git a/buf.work.yaml b/buf.work.yaml
new file mode 100644
index 0000000..1b4a0d9
--- /dev/null
+++ b/buf.work.yaml
@@ -0,0 +1,8 @@
+# Generated by "buf config migrate-v1beta1". Edit as necessary, and
+# remove this comment when you're finished.
+#
+# This workspace file points to the roots found in your
+# previous "buf.yaml" configuration.
+version: v1
+directories:
+ - proto
diff --git a/cmd/galacticad/cmd/config.go b/cmd/galacticad/cmd/config.go
new file mode 100644
index 0000000..6cca750
--- /dev/null
+++ b/cmd/galacticad/cmd/config.go
@@ -0,0 +1,114 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package cmd
+
+import (
+ "cosmossdk.io/errors"
+ sdk "github.com/cosmos/cosmos-sdk/types"
+
+ sdkerrors "github.com/cosmos/cosmos-sdk/types/errors"
+ ethermint "github.com/evmos/ethermint/types"
+
+ "github.com/Galactica-corp/galactica/app"
+)
+
+const (
+ // DisplayDenom defines the denomination displayed to users in client applications.
+ DisplayDenom = "gnet"
+
+ // AddrLen is the allowed length (in bytes) for an address.
+ //
+ // NOTE: In the SDK, the default value is 255.
+ AddrLen = 20
+
+ // AttoGnet defines the default coin denomination used in Galactica in:
+ //
+ // - Staking parameters: denomination used as stake in the dPoS chain
+ // - Mint parameters: denomination minted due to fee distribution rewards
+ // - Governance parameters: denomination used for spam prevention in proposal deposits
+ // - Crisis parameters: constant fee denomination used for spam prevention to check broken invariant
+ // - EVM parameters: denomination used for running EVM state transitions in Ethermint.
+ AttoGnet string = "agnet"
+
+ // BaseDenomUnit defines the base denomination unit for Photons.
+ // 1 photon = 1x10^{BaseDenomUnit} agnet
+ BaseDenomUnit = 18
+
+ MicroGnet string = "ugnet"
+ MicroDenomUnit = 6
+
+ // DefaultGasPrice is default gas price for evm transactions
+ DefaultGasPrice = 20
+)
+
+func initSDKConfig() {
+ // Set prefixes
+ accountPubKeyPrefix := app.AccountAddressPrefix + "pub"
+ validatorAddressPrefix := app.AccountAddressPrefix + "valoper"
+ validatorPubKeyPrefix := app.AccountAddressPrefix + "valoperpub"
+ consNodeAddressPrefix := app.AccountAddressPrefix + "valcons"
+ consNodePubKeyPrefix := app.AccountAddressPrefix + "valconspub"
+
+ // Set and seal config
+ config := sdk.GetConfig()
+ config.SetBech32PrefixForAccount(app.AccountAddressPrefix, accountPubKeyPrefix)
+ config.SetBech32PrefixForValidator(validatorAddressPrefix, validatorPubKeyPrefix)
+ config.SetBech32PrefixForConsensusNode(consNodeAddressPrefix, consNodePubKeyPrefix)
+
+ SetBip44CoinType(config)
+ // Make sure address is compatible with ethereum
+ config.SetAddressVerifier(VerifyAddressFormat)
+
+ RegisterDenoms()
+
+ config.Seal()
+}
+
+// SetBip44CoinType sets the global coin type to be used in hierarchical deterministic wallets.
+func SetBip44CoinType(config *sdk.Config) {
+ config.SetCoinType(ethermint.Bip44CoinType)
+ config.SetPurpose(sdk.Purpose) // Shared
+ config.SetFullFundraiserPath(ethermint.BIP44HDPath) // nolint: staticcheck
+}
+
+// RegisterDenoms registers the base and display denominations to the SDK.
+func RegisterDenoms() {
+ if err := sdk.RegisterDenom(DisplayDenom, sdk.OneDec()); err != nil {
+ panic(err)
+ }
+
+ if err := sdk.RegisterDenom(AttoGnet, sdk.NewDecWithPrec(1, BaseDenomUnit)); err != nil {
+ panic(err)
+ }
+
+ if err := sdk.RegisterDenom(MicroGnet, sdk.NewDecWithPrec(1, MicroDenomUnit)); err != nil {
+ panic(err)
+ }
+}
+
+// VerifyAddressFormat verifies whether the address is compatible with Ethereum
+func VerifyAddressFormat(bz []byte) error {
+ if len(bz) == 0 {
+ return errors.Wrap(sdkerrors.ErrUnknownAddress, "invalid address; cannot be empty")
+ }
+ if len(bz) != AddrLen {
+ return errors.Wrapf(
+ sdkerrors.ErrUnknownAddress,
+ "invalid address length; got: %d, expect: %d", len(bz), AddrLen,
+ )
+ }
+
+ return nil
+}
diff --git a/cmd/galacticad/cmd/ethkeys/convert-bech32-to-hex.go b/cmd/galacticad/cmd/ethkeys/convert-bech32-to-hex.go
new file mode 100644
index 0000000..21ac2a5
--- /dev/null
+++ b/cmd/galacticad/cmd/ethkeys/convert-bech32-to-hex.go
@@ -0,0 +1,73 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package ethkeys
+
+import (
+ "errors"
+ "fmt"
+
+ "github.com/cosmos/cosmos-sdk/client"
+ "github.com/cosmos/cosmos-sdk/types"
+ "github.com/ethereum/go-ethereum/common"
+ "github.com/spf13/cobra"
+)
+
+// ConvertBech32ToHexCmd returns a command to convert a bech32 address to hex
+func ConvertBech32ToHexCmd() *cobra.Command {
+ cmd := &cobra.Command{
+ Use: "convert-bech32-to-hex [bech32address]",
+ Short: "Convert a bech32 address to hex and print it",
+ Long: `Convert a bech32 address to hex and print it.
+Example:
+$ galacticad convert-bech32-to-hex gala10jmp6sgh4cc6zt3e8gw05wavvejgr5pwqlc3wn
+`,
+ Args: cobra.MinimumNArgs(1),
+ RunE: runShowCmd,
+ }
+
+ return cmd
+}
+
+func runShowCmd(cmd *cobra.Command, args []string) (err error) {
+ clientCtx := client.GetClientContextFromCmd(cmd)
+ clientCtx, err = client.ReadPersistentCommandFlags(clientCtx, cmd.Flags())
+ if err != nil {
+ return err
+ }
+
+ if len(args) != 1 {
+ return errors.New("requires address argument")
+ }
+
+ bech32Addr := args[0]
+
+ hexAddr, err := ConvertBech32ToHex(bech32Addr)
+ if err != nil {
+ return err
+ }
+
+ fmt.Println(hexAddr)
+ return nil
+}
+
+func ConvertBech32ToHex(bech32Addr string) (hexAddr string, err error) {
+ addr, err := types.AccAddressFromBech32(bech32Addr)
+ if err != nil {
+ return "", fmt.Errorf("invalid bech32 address: %w", err)
+ }
+
+ hexAddr = common.BytesToAddress(addr.Bytes()).String()
+ return hexAddr, nil
+}
diff --git a/cmd/galacticad/cmd/ethkeys/export-eth.go b/cmd/galacticad/cmd/ethkeys/export-eth.go
new file mode 100644
index 0000000..518516b
--- /dev/null
+++ b/cmd/galacticad/cmd/ethkeys/export-eth.go
@@ -0,0 +1,177 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package ethkeys
+
+import (
+ "bufio"
+ "encoding/hex"
+ "fmt"
+ "strings"
+
+ crypto2 "github.com/cometbft/cometbft/crypto"
+ "github.com/cometbft/cometbft/crypto/armor"
+ "github.com/cosmos/cosmos-sdk/crypto"
+ "github.com/cosmos/cosmos-sdk/crypto/keys/bcrypt"
+ cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types"
+ "github.com/cosmos/cosmos-sdk/crypto/xsalsa20symmetric"
+ sdkerrors "github.com/cosmos/cosmos-sdk/types/errors"
+
+ "github.com/cosmos/cosmos-sdk/client"
+ "github.com/cosmos/cosmos-sdk/client/input"
+ "github.com/cosmos/cosmos-sdk/crypto/keyring"
+ "github.com/ethereum/go-ethereum/common/hexutil"
+ ethcrypto "github.com/ethereum/go-ethereum/crypto"
+ "github.com/evmos/ethermint/crypto/ethsecp256k1"
+ "github.com/spf13/cobra"
+)
+
+const (
+ blockTypePrivKey = "TENDERMINT PRIVATE KEY"
+ defaultAlgo = "eth_secp256k1"
+ headerType = "type"
+)
+
+// UnsafeExportEthereumKeyCommand exports a key with the given name as a private key in hex format.
+func UnsafeExportEthereumKeyCommand() *cobra.Command {
+ return &cobra.Command{
+ Use: "unsafe-export-eth-key [name]",
+ Short: "**UNSAFE** Export an Ethereum private key",
+ Long: `**UNSAFE** Export an Ethereum private key unencrypted to use in dev tooling`,
+ Args: cobra.ExactArgs(1),
+ RunE: func(cmd *cobra.Command, args []string) error {
+ // clientCtx := client.GetClientContextFromCmd(cmd).WithKeyringOptions(hd.EthSecp256k1Option())
+ clientCtx := client.GetClientContextFromCmd(cmd)
+ clientCtx, err := client.ReadPersistentCommandFlags(clientCtx, cmd.Flags())
+ if err != nil {
+ return err
+ }
+
+ decryptPassword := ""
+ conf := true
+
+ inBuf := bufio.NewReader(cmd.InOrStdin())
+ switch clientCtx.Keyring.Backend() {
+ case keyring.BackendFile:
+ decryptPassword, err = input.GetPassword(
+ "**WARNING this is an unsafe way to export your unencrypted private key**\nEnter key password:",
+ inBuf)
+ case keyring.BackendOS:
+ conf, err = input.GetConfirmation(
+ "**WARNING** this is an unsafe way to export your unencrypted private key, are you sure?",
+ inBuf, cmd.ErrOrStderr())
+ }
+ if err != nil || !conf {
+ return err
+ }
+
+ // Exports private key from keybase using password
+ arm, err := clientCtx.Keyring.ExportPrivKeyArmor(args[0], decryptPassword)
+ if err != nil {
+ return err
+ }
+
+ privKey, algo, err := UnarmorDecryptPrivKey(arm, decryptPassword)
+ if err != nil {
+ return err
+ }
+
+ if algo != ethsecp256k1.KeyType {
+ return fmt.Errorf("invalid key algorithm, got %s, expected %s", algo, ethsecp256k1.KeyType)
+ }
+
+ // Converts key to Ethermint secp256k1 implementation
+ ethPrivKey, ok := privKey.(*ethsecp256k1.PrivKey)
+ if !ok {
+ return fmt.Errorf("invalid private key type %T, expected %T", privKey, ðsecp256k1.PrivKey{})
+ }
+
+ key, err := ethPrivKey.ToECDSA()
+ if err != nil {
+ return err
+ }
+
+ // Formats key for output
+ privB := ethcrypto.FromECDSA(key)
+ keyS := strings.ToUpper(hexutil.Encode(privB)[2:])
+
+ fmt.Println(keyS)
+
+ return nil
+ },
+ }
+}
+
+// UnarmorDecryptPrivKey returns the privkey byte slice, a string of the algo type, and an error
+func UnarmorDecryptPrivKey(
+ armorStr string,
+ passphrase string,
+) (privKey cryptotypes.PrivKey, algo string, err error) {
+ blockType, header, encBytes, err := armor.DecodeArmor(armorStr)
+ if err != nil {
+ return privKey, "", err
+ }
+
+ if blockType != blockTypePrivKey {
+ return privKey, "", fmt.Errorf("unrecognized armor type: %v", blockType)
+ }
+
+ if header["kdf"] != "bcrypt" {
+ return privKey, "", fmt.Errorf("unrecognized KDF type: %v", header["kdf"])
+ }
+
+ if header["salt"] == "" {
+ return privKey, "", fmt.Errorf("missing salt bytes")
+ }
+
+ saltBytes, err := hex.DecodeString(header["salt"])
+ if err != nil {
+ return privKey, "", fmt.Errorf("error decoding salt: %v", err.Error())
+ }
+
+ privKey, err = decryptPrivKey(saltBytes, encBytes, passphrase)
+
+ if header[headerType] == "" {
+ header[headerType] = defaultAlgo
+ }
+
+ return privKey, header[headerType], err
+}
+
+func decryptPrivKey(
+ saltBytes []byte,
+ encBytes []byte,
+ passphrase string,
+) (privKey cryptotypes.PrivKey, err error) {
+ key, err := bcrypt.GenerateFromPassword(saltBytes, []byte(passphrase), crypto.BcryptSecurityParameter)
+ if err != nil {
+ return privKey, sdkerrors.Wrap(err, "error generating bcrypt key from passphrase")
+ }
+
+ key = crypto2.Sha256(key) // Get 32 bytes
+
+ privKeyBytes, err := xsalsa20symmetric.DecryptSymmetric(encBytes, key)
+ if err != nil && err.Error() == "Ciphertext decryption failed" {
+ return privKey, sdkerrors.ErrWrongPassword
+ } else if err != nil {
+ return privKey, err
+ }
+
+ ethsecpKey := ðsecp256k1.PrivKey{}
+ if err := ethsecpKey.UnmarshalAmino(privKeyBytes[1:]); err != nil {
+ return privKey, err
+ }
+
+ return ethsecpKey, nil
+}
diff --git a/cmd/galacticad/cmd/ethkeys/import-eth.go b/cmd/galacticad/cmd/ethkeys/import-eth.go
new file mode 100644
index 0000000..95e6286
--- /dev/null
+++ b/cmd/galacticad/cmd/ethkeys/import-eth.go
@@ -0,0 +1,43 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package ethkeys
+
+import (
+ "github.com/spf13/cobra"
+
+ "github.com/cosmos/cosmos-sdk/client"
+ "github.com/evmos/ethermint/crypto/hd"
+)
+
+// UnsafeImportEthereumKeyCommand imports private keys from a keyfile.
+func UnsafeImportEthereumKeyCommand() *cobra.Command {
+ return &cobra.Command{
+ Use: "unsafe-import-eth-key ",
+ Short: "**UNSAFE** Import Ethereum private keys into the local keybase",
+ Long: "**UNSAFE** Import a hex-encoded Ethereum private key into the local keybase.",
+ Args: cobra.ExactArgs(2),
+ RunE: runImportCmd,
+ }
+}
+
+func runImportCmd(cmd *cobra.Command, args []string) error {
+ clientCtx := client.GetClientContextFromCmd(cmd).WithKeyringOptions(hd.EthSecp256k1Option())
+ clientCtx, err := client.ReadPersistentCommandFlags(clientCtx, cmd.Flags())
+ if err != nil {
+ return err
+ }
+
+ return clientCtx.Keyring.ImportPrivKeyHex(args[0], args[1], "eth_secp256k1")
+}
diff --git a/cmd/galacticad/cmd/ethkeys/keys.go b/cmd/galacticad/cmd/ethkeys/keys.go
new file mode 100644
index 0000000..c41dd5d
--- /dev/null
+++ b/cmd/galacticad/cmd/ethkeys/keys.go
@@ -0,0 +1,108 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package ethkeys
+
+import (
+ "bufio"
+ "context"
+
+ "github.com/cometbft/cometbft/libs/cli"
+ "github.com/cosmos/cosmos-sdk/client"
+ "github.com/cosmos/cosmos-sdk/client/flags"
+ "github.com/cosmos/cosmos-sdk/client/keys"
+ "github.com/spf13/cobra"
+
+ "github.com/cosmos/cosmos-sdk/crypto/keyring"
+ clientkeys "github.com/evmos/ethermint/client/keys"
+ "github.com/evmos/ethermint/crypto/hd"
+)
+
+// KeyCommands registers a sub-tree of commands to interact with
+// local private key storage.
+func KeyCommands(ctx context.Context) *cobra.Command {
+ cmd := &cobra.Command{
+ Use: "keys",
+ Short: "Manage your application's keys",
+ Long: `Keyring management commands. These keys may be in any format supported by the
+Tendermint crypto library and can be used by light-clients, full nodes, or any other application
+that needs to sign with a private key.
+
+The keyring supports the following backends:
+
+ os Uses the operating system's default credentials store.
+ file Uses encrypted file-based keystore within the app's configuration directory.
+ This keyring will request a password each time it is accessed, which may occur
+ multiple times in a single command resulting in repeated password prompts.
+ kwallet Uses KDE Wallet Manager as a credentials management application.
+ pass Uses the pass command line utility to store and retrieve keys.
+ test Stores keys insecurely to disk. It does not prompt for a password to be unlocked
+ and it should be use only for testing purposes.
+
+kwallet and pass backends depend on external tools. Refer to their respective documentation for more
+information:
+ KWallet https://github.com/KDE/kwallet
+ pass https://www.passwordstore.org/
+
+The pass backend requires GnuPG: https://gnupg.org/
+`,
+ }
+ cmd.SetContext(ctx)
+
+ // support adding Ethereum supported keys
+ addCmd := keys.AddKeyCommand()
+
+ // update the default signing algorithm value to "eth_secp256k1"
+ algoFlag := addCmd.Flag(flags.FlagKeyType)
+ algoFlag.DefValue = string(hd.EthSecp256k1Type)
+ err := algoFlag.Value.Set(string(hd.EthSecp256k1Type))
+ if err != nil {
+ panic(err)
+ }
+
+ addCmd.RunE = runAddCmd
+
+ cmd.AddCommand(
+ keys.MnemonicKeyCommand(),
+ addCmd,
+ keys.ExportKeyCommand(),
+ keys.ImportKeyCommand(),
+ keys.ListKeysCmd(),
+ keys.ShowKeysCmd(),
+ keys.DeleteKeyCommand(),
+ keys.RenameKeyCommand(),
+ keys.ParseKeyStringCommand(),
+ keys.MigrateCommand(),
+ flags.LineBreak,
+ UnsafeExportEthereumKeyCommand(),
+ UnsafeImportEthereumKeyCommand(),
+ ConvertBech32ToHexCmd(),
+ )
+
+ cmd.PersistentFlags().String(flags.FlagHome, "~/.galactica", "The application home directory")
+ cmd.PersistentFlags().String(flags.FlagKeyringDir, "", "The client Keyring directory; if omitted, the default 'home' directory will be used")
+ cmd.PersistentFlags().String(flags.FlagKeyringBackend, keyring.BackendOS, "Select keyring's backend (os|file|test)")
+ cmd.PersistentFlags().String(cli.OutputFlag, "text", "Output format (text|json)")
+ return cmd
+}
+
+func runAddCmd(cmd *cobra.Command, args []string) error {
+ clientCtx := client.GetClientContextFromCmd(cmd)
+ clientCtx, err := client.ReadPersistentCommandFlags(clientCtx, cmd.Flags())
+ if err != nil {
+ return err
+ }
+ buf := bufio.NewReader(clientCtx.Input)
+ return clientkeys.RunAddCmd(clientCtx, cmd, args, buf)
+}
diff --git a/cmd/galacticad/cmd/genaccounts.go b/cmd/galacticad/cmd/genaccounts.go
new file mode 100644
index 0000000..2dbb503
--- /dev/null
+++ b/cmd/galacticad/cmd/genaccounts.go
@@ -0,0 +1,214 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package cmd
+
+import (
+ "bufio"
+ "encoding/json"
+ "errors"
+ "fmt"
+
+ "github.com/cosmos/cosmos-sdk/client"
+ "github.com/cosmos/cosmos-sdk/client/flags"
+ "github.com/cosmos/cosmos-sdk/crypto/keyring"
+ "github.com/cosmos/cosmos-sdk/server"
+ sdk "github.com/cosmos/cosmos-sdk/types"
+ authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
+ authvesting "github.com/cosmos/cosmos-sdk/x/auth/vesting/types"
+ banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
+ "github.com/cosmos/cosmos-sdk/x/genutil"
+ genutiltypes "github.com/cosmos/cosmos-sdk/x/genutil/types"
+ "github.com/evmos/ethermint/crypto/hd"
+ "github.com/spf13/cobra"
+)
+
+const (
+ flagVestingStart = "vesting-start-time"
+ flagVestingEnd = "vesting-end-time"
+ flagVestingAmt = "vesting-amount"
+)
+
+// AddGenesisAccountCmd returns add-genesis-account cobra Command.
+func AddGenesisAccountCmd(defaultNodeHome string) *cobra.Command {
+ cmd := &cobra.Command{
+ Use: "add-genesis-account [address_or_key_name] [coin][,[coin]]",
+ Short: "Add a genesis account to genesis.json",
+ Long: `Add a genesis account to genesis.json. The provided account must specify
+the account address or key name and a list of initial coins. If a key name is given,
+the address will be looked up in the local Keybase. The list of initial tokens must
+contain valid denominations. Accounts may optionally be supplied with vesting parameters.
+`,
+ Args: cobra.ExactArgs(2),
+ RunE: func(cmd *cobra.Command, args []string) error {
+ clientCtx := client.GetClientContextFromCmd(cmd)
+ cdc := clientCtx.Codec
+
+ serverCtx := server.GetServerContextFromCmd(cmd)
+ config := serverCtx.Config
+
+ config.SetRoot(clientCtx.HomeDir)
+
+ coins, err := sdk.ParseCoinsNormalized(args[1])
+ if err != nil {
+ return fmt.Errorf("failed to parse coins: %w", err)
+ }
+
+ addr, err := sdk.AccAddressFromBech32(args[0])
+ if err != nil {
+ inBuf := bufio.NewReader(cmd.InOrStdin())
+ keyringBackend, err := cmd.Flags().GetString(flags.FlagKeyringBackend)
+ if err != nil {
+ return err
+ }
+
+ // attempt to lookup address from Keybase if no address was provided
+ kb, err := keyring.New(
+ sdk.KeyringServiceName(),
+ keyringBackend,
+ clientCtx.HomeDir,
+ inBuf,
+ cdc,
+ hd.EthSecp256k1Option(),
+ )
+ if err != nil {
+ return err
+ }
+
+ info, err := kb.Key(args[0])
+ if err != nil {
+ return fmt.Errorf("failed to get address from Keybase: %w", err)
+ }
+
+ addr, err = info.GetAddress()
+ if err != nil {
+ return fmt.Errorf("failed to get address from Keybase: %w", err)
+ }
+ }
+
+ vestingStart, err := cmd.Flags().GetInt64(flagVestingStart)
+ if err != nil {
+ return err
+ }
+ vestingEnd, err := cmd.Flags().GetInt64(flagVestingEnd)
+ if err != nil {
+ return err
+ }
+ vestingAmtStr, err := cmd.Flags().GetString(flagVestingAmt)
+ if err != nil {
+ return err
+ }
+
+ vestingAmt, err := sdk.ParseCoinsNormalized(vestingAmtStr)
+ if err != nil {
+ return fmt.Errorf("failed to parse vesting amount: %w", err)
+ }
+
+ // create concrete account type based on input parameters
+ var genAccount authtypes.GenesisAccount
+
+ balances := banktypes.Balance{Address: addr.String(), Coins: coins.Sort()}
+ baseAccount := authtypes.NewBaseAccount(addr, nil, 0, 0)
+
+ if !vestingAmt.IsZero() {
+ baseVestingAccount := authvesting.NewBaseVestingAccount(baseAccount, vestingAmt.Sort(), vestingEnd)
+
+ if (balances.Coins.IsZero() && !baseVestingAccount.OriginalVesting.IsZero()) ||
+ baseVestingAccount.OriginalVesting.IsAnyGT(balances.Coins) {
+ return errors.New("vesting amount cannot be greater than total amount")
+ }
+
+ switch {
+ case vestingStart != 0 && vestingEnd != 0:
+ genAccount = authvesting.NewContinuousVestingAccountRaw(baseVestingAccount, vestingStart)
+
+ case vestingEnd != 0:
+ genAccount = authvesting.NewDelayedVestingAccountRaw(baseVestingAccount)
+
+ default:
+ return errors.New("invalid vesting parameters; must supply start and end time or end time")
+ }
+ } else {
+ genAccount = baseAccount
+ }
+
+ if err := genAccount.Validate(); err != nil {
+ return fmt.Errorf("failed to validate new genesis account: %w", err)
+ }
+
+ genFile := config.GenesisFile()
+ appState, genDoc, err := genutiltypes.GenesisStateFromGenFile(genFile)
+ if err != nil {
+ return fmt.Errorf("failed to unmarshal genesis state: %w", err)
+ }
+
+ authGenState := authtypes.GetGenesisStateFromAppState(cdc, appState)
+
+ accs, err := authtypes.UnpackAccounts(authGenState.Accounts)
+ if err != nil {
+ return fmt.Errorf("failed to get accounts from any: %w", err)
+ }
+
+ if accs.Contains(addr) {
+ return fmt.Errorf("cannot add account at existing address %s", addr)
+ }
+
+ // Add the new account to the set of genesis accounts and sanitize the
+ // accounts afterwards.
+ accs = append(accs, genAccount)
+ accs = authtypes.SanitizeGenesisAccounts(accs)
+
+ genAccs, err := authtypes.PackAccounts(accs)
+ if err != nil {
+ return fmt.Errorf("failed to convert accounts into any's: %w", err)
+ }
+ authGenState.Accounts = genAccs
+
+ authGenStateBz, err := cdc.MarshalJSON(&authGenState)
+ if err != nil {
+ return fmt.Errorf("failed to marshal auth genesis state: %w", err)
+ }
+
+ appState[authtypes.ModuleName] = authGenStateBz
+
+ bankGenState := banktypes.GetGenesisStateFromAppState(cdc, appState)
+ bankGenState.Balances = append(bankGenState.Balances, balances)
+ bankGenState.Balances = banktypes.SanitizeGenesisBalances(bankGenState.Balances)
+
+ bankGenStateBz, err := cdc.MarshalJSON(bankGenState)
+ if err != nil {
+ return fmt.Errorf("failed to marshal bank genesis state: %w", err)
+ }
+
+ appState[banktypes.ModuleName] = bankGenStateBz
+
+ appStateJSON, err := json.Marshal(appState)
+ if err != nil {
+ return fmt.Errorf("failed to marshal application genesis state: %w", err)
+ }
+
+ genDoc.AppState = appStateJSON
+ return genutil.ExportGenesisFile(genDoc, genFile)
+ },
+ }
+
+ cmd.Flags().String(flags.FlagKeyringBackend, flags.DefaultKeyringBackend, "Select keyring's backend (os|file|kwallet|pass|test)")
+ cmd.Flags().String(flags.FlagHome, defaultNodeHome, "The application home directory")
+ cmd.Flags().String(flagVestingAmt, "", "amount of coins for vesting accounts")
+ cmd.Flags().Int64(flagVestingStart, 0, "schedule start time (unix epoch) for vesting accounts")
+ cmd.Flags().Int64(flagVestingEnd, 0, "schedule end time (unix epoch) for vesting accounts")
+ flags.AddQueryFlagsToCmd(cmd)
+
+ return cmd
+}
diff --git a/cmd/galacticad/cmd/root.go b/cmd/galacticad/cmd/root.go
new file mode 100644
index 0000000..fa6f862
--- /dev/null
+++ b/cmd/galacticad/cmd/root.go
@@ -0,0 +1,420 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package cmd
+
+import (
+ "errors"
+ "io"
+ "os"
+ "path/filepath"
+ "strings"
+
+ "github.com/evmos/ethermint/crypto/hd"
+ ethermintserver "github.com/evmos/ethermint/server"
+ ethermintconfig "github.com/evmos/ethermint/server/config"
+
+ "cosmossdk.io/simapp/params"
+ rosettaCmd "cosmossdk.io/tools/rosetta/cmd"
+ dbm "github.com/cometbft/cometbft-db"
+ tmcfg "github.com/cometbft/cometbft/config"
+ tmcli "github.com/cometbft/cometbft/libs/cli"
+ "github.com/cometbft/cometbft/libs/log"
+ tmtypes "github.com/cometbft/cometbft/types"
+ "github.com/cosmos/cosmos-sdk/baseapp"
+ "github.com/cosmos/cosmos-sdk/client"
+ "github.com/cosmos/cosmos-sdk/client/config"
+ "github.com/cosmos/cosmos-sdk/client/debug"
+ "github.com/cosmos/cosmos-sdk/client/flags"
+ "github.com/cosmos/cosmos-sdk/client/rpc"
+ "github.com/cosmos/cosmos-sdk/server"
+ serverconfig "github.com/cosmos/cosmos-sdk/server/config"
+ servertypes "github.com/cosmos/cosmos-sdk/server/types"
+ "github.com/cosmos/cosmos-sdk/snapshots"
+ snapshottypes "github.com/cosmos/cosmos-sdk/snapshots/types"
+ "github.com/cosmos/cosmos-sdk/store"
+ sdk "github.com/cosmos/cosmos-sdk/types"
+ "github.com/cosmos/cosmos-sdk/types/module"
+ authcmd "github.com/cosmos/cosmos-sdk/x/auth/client/cli"
+ "github.com/cosmos/cosmos-sdk/x/auth/types"
+ banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
+ "github.com/cosmos/cosmos-sdk/x/crisis"
+ "github.com/cosmos/cosmos-sdk/x/genutil"
+ genutilcli "github.com/cosmos/cosmos-sdk/x/genutil/client/cli"
+ genutiltypes "github.com/cosmos/cosmos-sdk/x/genutil/types"
+ srvflags "github.com/evmos/ethermint/server/flags"
+ "github.com/spf13/cast"
+ "github.com/spf13/cobra"
+ "github.com/spf13/pflag"
+
+ ethermintclient "github.com/evmos/ethermint/client"
+ "github.com/evmos/ethermint/ethereum/eip712"
+
+ "github.com/Galactica-corp/galactica/app"
+ appparams "github.com/Galactica-corp/galactica/app/params"
+ "github.com/Galactica-corp/galactica/cmd/galacticad/cmd/ethkeys"
+)
+
+// NewRootCmd creates a new root command for a Cosmos SDK application
+func NewRootCmd() (*cobra.Command, appparams.EncodingConfig) {
+ encodingConfig := app.MakeEncodingConfig()
+ initClientCtx := client.Context{}.
+ WithCodec(encodingConfig.Marshaler).
+ WithInterfaceRegistry(encodingConfig.InterfaceRegistry).
+ WithTxConfig(encodingConfig.TxConfig).
+ WithLegacyAmino(encodingConfig.Amino).
+ WithInput(os.Stdin).
+ WithAccountRetriever(types.AccountRetriever{}).
+ WithHomeDir(app.DefaultNodeHome).
+ WithKeyringOptions(hd.EthSecp256k1Option()).
+ WithViper("")
+
+ eip712.SetEncodingConfig(params.EncodingConfig{
+ InterfaceRegistry: encodingConfig.InterfaceRegistry,
+ Codec: encodingConfig.Marshaler,
+ TxConfig: encodingConfig.TxConfig,
+ Amino: encodingConfig.Amino,
+ })
+
+ rootCmd := &cobra.Command{
+ Use: app.Name + "d",
+ Short: "Start galactica node",
+ PersistentPreRunE: func(cmd *cobra.Command, _ []string) error {
+ // set the default command outputs
+ cmd.SetOut(cmd.OutOrStdout())
+ cmd.SetErr(cmd.ErrOrStderr())
+ initClientCtx, err := client.ReadPersistentCommandFlags(initClientCtx, cmd.Flags())
+ if err != nil {
+ return err
+ }
+ initClientCtx, err = config.ReadFromClientConfig(initClientCtx)
+ if err != nil {
+ return err
+ }
+
+ if err := client.SetCmdClientContextHandler(initClientCtx, cmd); err != nil {
+ return err
+ }
+
+ customAppTemplate, customAppConfig := initAppConfig()
+ customTMConfig := initTendermintConfig()
+ return server.InterceptConfigsPreRunHandler(
+ cmd, customAppTemplate, customAppConfig, customTMConfig,
+ )
+ },
+ }
+
+ initRootCmd(rootCmd, encodingConfig)
+ overwriteFlagDefaults(rootCmd, map[string]string{
+ flags.FlagChainID: strings.ReplaceAll(app.Name, "-", ""),
+ flags.FlagKeyringBackend: "test",
+ })
+
+ return rootCmd, encodingConfig
+}
+
+// initTendermintConfig helps to override default Tendermint Config values.
+// return tmcfg.DefaultConfig if no custom configuration is required for the application.
+func initTendermintConfig() *tmcfg.Config {
+ cfg := tmcfg.DefaultConfig()
+ return cfg
+}
+
+func initRootCmd(
+ rootCmd *cobra.Command,
+ encodingConfig appparams.EncodingConfig,
+) {
+ // Set config
+ initSDKConfig()
+
+ gentxModule := app.ModuleBasics[genutiltypes.ModuleName].(genutil.AppModuleBasic)
+ rootCmd.AddCommand(
+ ethermintclient.ValidateChainID(
+ WrapInitCmd(app.DefaultNodeHome),
+ ),
+ genutilcli.CollectGenTxsCmd(banktypes.GenesisBalancesIterator{}, app.DefaultNodeHome, gentxModule.GenTxValidator),
+ genutilcli.MigrateGenesisCmd(),
+ genutilcli.GenTxCmd(
+ app.ModuleBasics,
+ encodingConfig.TxConfig,
+ banktypes.GenesisBalancesIterator{},
+ app.DefaultNodeHome,
+ ),
+ genutilcli.ValidateGenesisCmd(app.ModuleBasics),
+ AddGenesisAccountCmd(app.DefaultNodeHome),
+ tmcli.NewCompletionCmd(rootCmd, true),
+ debug.Cmd(),
+ config.Cmd(),
+ )
+
+ a := appCreator{
+ encodingConfig,
+ }
+
+ opts := ethermintserver.StartOptions{
+ AppCreator: a.newApp,
+ DefaultNodeHome: app.DefaultNodeHome,
+ DBOpener: openDB,
+ }
+ ethermintserver.AddCommands(rootCmd, opts, a.appExport, addModuleInitFlags)
+
+ // add keybase, auxiliary RPC, query, and tx child commands
+ rootCmd.AddCommand(
+ rpc.StatusCommand(),
+ queryCommand(),
+ txCommand(),
+ ethkeys.KeyCommands(rootCmd.Context()),
+ )
+
+ rootCmd, err := srvflags.AddTxFlags(rootCmd)
+ if err != nil {
+ panic(err)
+ }
+
+ // add rosetta
+ rootCmd.AddCommand(rosettaCmd.RosettaCommand(
+ encodingConfig.InterfaceRegistry,
+ encodingConfig.Marshaler,
+ ))
+}
+
+// queryCommand returns the sub-command to send queries to the app
+func queryCommand() *cobra.Command {
+ cmd := &cobra.Command{
+ Use: "query",
+ Aliases: []string{"q"},
+ Short: "Querying subcommands",
+ DisableFlagParsing: true,
+ SuggestionsMinimumDistance: 2,
+ RunE: client.ValidateCmd,
+ }
+
+ cmd.AddCommand(
+ authcmd.GetAccountCmd(),
+ rpc.ValidatorCommand(),
+ rpc.BlockCommand(),
+ authcmd.QueryTxsByEventsCmd(),
+ authcmd.QueryTxCmd(),
+ )
+
+ app.ModuleBasics.AddQueryCommands(cmd)
+ cmd.PersistentFlags().String(flags.FlagChainID, "", "The network chain ID")
+
+ return cmd
+}
+
+// txCommand returns the sub-command to send transactions to the app
+func txCommand() *cobra.Command {
+ cmd := &cobra.Command{
+ Use: "tx",
+ Short: "Transactions subcommands",
+ DisableFlagParsing: true,
+ SuggestionsMinimumDistance: 2,
+ RunE: client.ValidateCmd,
+ }
+
+ cmd.AddCommand(
+ authcmd.GetSignCommand(),
+ authcmd.GetSignBatchCommand(),
+ authcmd.GetMultiSignCommand(),
+ authcmd.GetValidateSignaturesCommand(),
+ flags.LineBreak,
+ authcmd.GetBroadcastCommand(),
+ authcmd.GetEncodeCommand(),
+ authcmd.GetDecodeCommand(),
+ )
+
+ app.ModuleBasics.AddTxCommands(cmd)
+ cmd.PersistentFlags().String(flags.FlagChainID, "", "The network chain ID")
+
+ return cmd
+}
+
+func addModuleInitFlags(startCmd *cobra.Command) {
+ crisis.AddModuleInitFlags(startCmd)
+}
+
+func overwriteFlagDefaults(c *cobra.Command, defaults map[string]string) {
+ set := func(s *pflag.FlagSet, key, val string) {
+ if f := s.Lookup(key); f != nil {
+ f.DefValue = val
+ f.Value.Set(val)
+ }
+ }
+ for key, val := range defaults {
+ set(c.Flags(), key, val)
+ set(c.PersistentFlags(), key, val)
+ }
+ for _, c := range c.Commands() {
+ overwriteFlagDefaults(c, defaults)
+ }
+}
+
+type appCreator struct {
+ encodingConfig appparams.EncodingConfig
+}
+
+// newApp creates a new Cosmos SDK app
+func (a appCreator) newApp(
+ logger log.Logger,
+ db dbm.DB,
+ traceStore io.Writer,
+ appOpts servertypes.AppOptions,
+) servertypes.Application {
+ var cache sdk.MultiStorePersistentCache
+
+ if cast.ToBool(appOpts.Get(server.FlagInterBlockCache)) {
+ cache = store.NewCommitKVStoreCacheManager()
+ }
+
+ skipUpgradeHeights := make(map[int64]bool)
+ for _, h := range cast.ToIntSlice(appOpts.Get(server.FlagUnsafeSkipUpgrades)) {
+ skipUpgradeHeights[int64(h)] = true
+ }
+
+ pruningOpts, err := server.GetPruningOptionsFromFlags(appOpts)
+ if err != nil {
+ panic(err)
+ }
+
+ homeDir := cast.ToString(appOpts.Get(flags.FlagHome))
+ chainID := cast.ToString(appOpts.Get(flags.FlagChainID))
+ if chainID == "" {
+ // fallback to genesis chain-id
+ appGenesis, err := tmtypes.GenesisDocFromFile(filepath.Join(homeDir, "config", "genesis.json"))
+ if err != nil {
+ panic(err)
+ }
+
+ chainID = appGenesis.ChainID
+ }
+
+ snapshotDir := filepath.Join(cast.ToString(appOpts.Get(flags.FlagHome)), "data", "snapshots")
+ snapshotDB, err := dbm.NewDB("metadata", dbm.GoLevelDBBackend, snapshotDir)
+ if err != nil {
+ panic(err)
+ }
+ snapshotStore, err := snapshots.NewStore(snapshotDB, snapshotDir)
+ if err != nil {
+ panic(err)
+ }
+
+ snapshotOptions := snapshottypes.NewSnapshotOptions(
+ cast.ToUint64(appOpts.Get(server.FlagStateSyncSnapshotInterval)),
+ cast.ToUint32(appOpts.Get(server.FlagStateSyncSnapshotKeepRecent)),
+ )
+
+ return app.New(
+ logger,
+ db,
+ traceStore,
+ true,
+ appOpts,
+ baseapp.SetPruning(pruningOpts),
+ baseapp.SetMinGasPrices(cast.ToString(appOpts.Get(server.FlagMinGasPrices))),
+ baseapp.SetHaltHeight(cast.ToUint64(appOpts.Get(server.FlagHaltHeight))),
+ baseapp.SetHaltTime(cast.ToUint64(appOpts.Get(server.FlagHaltTime))),
+ baseapp.SetMinRetainBlocks(cast.ToUint64(appOpts.Get(server.FlagMinRetainBlocks))),
+ baseapp.SetInterBlockCache(cache),
+ baseapp.SetTrace(cast.ToBool(appOpts.Get(server.FlagTrace))),
+ baseapp.SetIndexEvents(cast.ToStringSlice(appOpts.Get(server.FlagIndexEvents))),
+ baseapp.SetSnapshot(snapshotStore, snapshotOptions),
+ baseapp.SetIAVLCacheSize(cast.ToInt(appOpts.Get(server.FlagIAVLCacheSize))),
+ baseapp.SetIAVLDisableFastNode(cast.ToBool(appOpts.Get(server.FlagDisableIAVLFastNode))),
+ baseapp.SetChainID(chainID),
+ )
+}
+
+// appExport creates a new simapp (optionally at a given height)
+func (a appCreator) appExport(
+ logger log.Logger,
+ db dbm.DB,
+ traceStore io.Writer,
+ height int64,
+ forZeroHeight bool,
+ jailAllowedAddrs []string,
+ appOpts servertypes.AppOptions,
+ modulesToExport []string,
+) (servertypes.ExportedApp, error) {
+ homePath, ok := appOpts.Get(flags.FlagHome).(string)
+ if !ok || homePath == "" {
+ return servertypes.ExportedApp{}, errors.New("application home not set")
+ }
+
+ app := app.New(
+ logger,
+ db,
+ traceStore,
+ height == -1, // -1: no height provided
+ appOpts,
+ )
+
+ if height != -1 {
+ if err := app.LoadHeight(height); err != nil {
+ return servertypes.ExportedApp{}, err
+ }
+ }
+
+ return app.ExportAppStateAndValidators(forZeroHeight, jailAllowedAddrs, modulesToExport)
+}
+
+// initAppConfig helps to override default appConfig template and configs.
+// return "", nil if no custom configuration is required for the application.
+func initAppConfig() (string, interface{}) {
+ // The following code snippet is just for reference.
+
+ type CustomAppConfig struct {
+ ethermintconfig.Config
+ }
+
+ // Optionally allow the chain developer to overwrite the SDK's default
+ // server config.
+ srvCfg := ethermintconfig.DefaultConfig()
+ // The SDK's default minimum gas price is set to "" (empty value) inside
+ // app.toml. If left empty by validators, the node will halt on startup.
+ // However, the chain developer can set a default app.toml value for their
+ // validators here.
+ //
+ // In summary:
+ // - if you leave srvCfg.MinGasPrices = "", all validators MUST tweak their
+ // own app.toml config,
+ // - if you set srvCfg.MinGasPrices non-empty, validators CAN tweak their
+ // own app.toml to override, or use this default value.
+ srvCfg.MinGasPrices = "10agnet"
+ srvCfg.Rosetta.DenomToSuggest = "agnet"
+
+ srvCfg.JSONRPC.API = ethermintconfig.GetAPINamespaces()
+
+ customAppConfig := CustomAppConfig{
+ Config: *srvCfg,
+ }
+ customAppTemplate := serverconfig.DefaultConfigTemplate + ethermintconfig.DefaultConfigTemplate
+
+ return customAppTemplate, customAppConfig
+}
+
+func openDB(_ servertypes.AppOptions, home string, backendType dbm.BackendType) (dbm.DB, error) {
+ dataDir := filepath.Join(home, "data")
+ return dbm.NewDB("application", backendType, dataDir)
+}
+
+// WrapInitCmd extends `genutilcli.InitCmd`.
+func WrapInitCmd(home string) *cobra.Command {
+ wrapCmd := genutilcli.InitCmd(module.NewBasicManager(), home)
+ wrapCmd.RunE = func(cmd *cobra.Command, args []string) error {
+ moduleBasics := app.ModuleBasics
+ return genutilcli.InitCmd(moduleBasics, home).RunE(cmd, args)
+ }
+ return wrapCmd
+}
diff --git a/cmd/galacticad/main.go b/cmd/galacticad/main.go
new file mode 100644
index 0000000..8ec98df
--- /dev/null
+++ b/cmd/galacticad/main.go
@@ -0,0 +1,38 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package main
+
+import (
+ "os"
+
+ "github.com/cosmos/cosmos-sdk/server"
+ svrcmd "github.com/cosmos/cosmos-sdk/server/cmd"
+
+ "github.com/Galactica-corp/galactica/app"
+ "github.com/Galactica-corp/galactica/cmd/galacticad/cmd"
+)
+
+func main() {
+ rootCmd, _ := cmd.NewRootCmd()
+ if err := svrcmd.Execute(rootCmd, "", app.DefaultNodeHome); err != nil {
+ switch e := err.(type) {
+ case server.ErrorCode:
+ os.Exit(e.Code)
+
+ default:
+ os.Exit(1)
+ }
+ }
+}
diff --git a/docs/docs.go b/docs/docs.go
new file mode 100644
index 0000000..4c26f69
--- /dev/null
+++ b/docs/docs.go
@@ -0,0 +1,54 @@
+// Copyright 2024 Galactica Network
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package docs
+
+import (
+ "embed"
+ httptemplate "html/template"
+ "net/http"
+
+ "github.com/gorilla/mux"
+)
+
+const (
+ apiFile = "/static/openapi.yml"
+ indexFile = "template/index.tpl"
+)
+
+//go:embed static
+var Static embed.FS
+
+//go:embed template
+var template embed.FS
+
+func RegisterOpenAPIService(appName string, rtr *mux.Router) {
+ rtr.Handle(apiFile, http.FileServer(http.FS(Static)))
+ rtr.HandleFunc("/", handler(appName))
+}
+
+// handler returns an http handler that servers OpenAPI console for an OpenAPI spec at specURL.
+func handler(title string) http.HandlerFunc {
+ t, _ := httptemplate.ParseFS(template, indexFile)
+
+ return func(w http.ResponseWriter, req *http.Request) {
+ t.Execute(w, struct {
+ Title string
+ URL string
+ }{
+ title,
+ apiFile,
+ })
+ }
+}
diff --git a/docs/static/openapi.yml b/docs/static/openapi.yml
new file mode 100644
index 0000000..0e35c34
--- /dev/null
+++ b/docs/static/openapi.yml
@@ -0,0 +1,67993 @@
+swagger: '2.0'
+info:
+ title: HTTP API Console
+ name: ''
+ description: ''
+paths:
+ /cosmos/auth/v1beta1/account_info/{address}:
+ get:
+ summary: AccountInfo queries account info which is common to all account types.
+ description: 'Since: cosmos-sdk 0.47'
+ operationId: CosmosAuthV1Beta1AccountInfo
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ info:
+ description: info is the account info which is represented by BaseAccount.
+ type: object
+ properties:
+ address:
+ type: string
+ pub_key:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ account_number:
+ type: string
+ format: uint64
+ sequence:
+ type: string
+ format: uint64
+ description: |-
+ QueryAccountInfoResponse is the Query/AccountInfo response type.
+
+ Since: cosmos-sdk 0.47
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: address
+ description: address is the account address string.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/accounts:
+ get:
+ summary: Accounts returns all the existing accounts.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+
+
+ Since: cosmos-sdk 0.43
+ operationId: CosmosAuthV1Beta1Accounts
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ accounts:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ title: accounts are the existing accounts
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryAccountsResponse is the response type for the Query/Accounts
+ RPC method.
+
+
+ Since: cosmos-sdk 0.43
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/accounts/{address}:
+ get:
+ summary: Account returns account details based on address.
+ operationId: CosmosAuthV1Beta1Account
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ account:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at least
+
+ one "/" character. The last segment of the URL's path must
+ represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in a
+ canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary all
+ types that they
+
+ expect it to use in the context of Any. However, for URLs
+ which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in the
+ official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer message
+ along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values in
+ the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by default
+ use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the last
+ '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with an
+
+ additional field `@type` which contains the type URL. Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding a
+ field
+
+ `value` which holds the custom JSON in addition to the `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ QueryAccountResponse is the response type for the Query/Account
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: address
+ description: address defines the address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/address_by_id/{id}:
+ get:
+ summary: AccountAddressByID returns account address based on account number.
+ description: 'Since: cosmos-sdk 0.46.2'
+ operationId: CosmosAuthV1Beta1AccountAddressByID
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ account_address:
+ type: string
+ description: 'Since: cosmos-sdk 0.46.2'
+ title: >-
+ QueryAccountAddressByIDResponse is the response type for
+ AccountAddressByID rpc method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: id
+ description: |-
+ Deprecated, use account_id instead
+
+ id is the account number of the address to be queried. This field
+ should have been an uint64 (like all account numbers), and will be
+ updated to uint64 in a future version of the auth query.
+ in: path
+ required: true
+ type: string
+ format: int64
+ - name: account_id
+ description: |-
+ account_id is the account number of the address to be queried.
+
+ Since: cosmos-sdk 0.47
+ in: query
+ required: false
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/bech32:
+ get:
+ summary: Bech32Prefix queries bech32Prefix
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosAuthV1Beta1Bech32Prefix
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ bech32_prefix:
+ type: string
+ description: >-
+ Bech32PrefixResponse is the response type for Bech32Prefix rpc
+ method.
+
+
+ Since: cosmos-sdk 0.46
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/bech32/{address_bytes}:
+ get:
+ summary: AddressBytesToString converts Account Address bytes to string
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosAuthV1Beta1AddressBytesToString
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ address_string:
+ type: string
+ description: >-
+ AddressBytesToStringResponse is the response type for
+ AddressString rpc method.
+
+
+ Since: cosmos-sdk 0.46
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: address_bytes
+ in: path
+ required: true
+ type: string
+ format: byte
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/bech32/{address_string}:
+ get:
+ summary: AddressStringToBytes converts Address string to bytes
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosAuthV1Beta1AddressStringToBytes
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ address_bytes:
+ type: string
+ format: byte
+ description: >-
+ AddressStringToBytesResponse is the response type for AddressBytes
+ rpc method.
+
+
+ Since: cosmos-sdk 0.46
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: address_string
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/module_accounts:
+ get:
+ summary: ModuleAccounts returns all the existing module accounts.
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosAuthV1Beta1ModuleAccounts
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ accounts:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ QueryModuleAccountsResponse is the response type for the
+ Query/ModuleAccounts RPC method.
+
+
+ Since: cosmos-sdk 0.46
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/module_accounts/{name}:
+ get:
+ summary: ModuleAccountByName returns the module account info by module name
+ operationId: CosmosAuthV1Beta1ModuleAccountByName
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ account:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at least
+
+ one "/" character. The last segment of the URL's path must
+ represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in a
+ canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary all
+ types that they
+
+ expect it to use in the context of Any. However, for URLs
+ which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in the
+ official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer message
+ along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values in
+ the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by default
+ use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the last
+ '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with an
+
+ additional field `@type` which contains the type URL. Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding a
+ field
+
+ `value` which holds the custom JSON in addition to the `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ QueryModuleAccountByNameResponse is the response type for the
+ Query/ModuleAccountByName RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: name
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/auth/v1beta1/params:
+ get:
+ summary: Params queries all parameters.
+ operationId: CosmosAuthV1Beta1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: params defines the parameters of the module.
+ type: object
+ properties:
+ max_memo_characters:
+ type: string
+ format: uint64
+ tx_sig_limit:
+ type: string
+ format: uint64
+ tx_size_cost_per_byte:
+ type: string
+ format: uint64
+ sig_verify_cost_ed25519:
+ type: string
+ format: uint64
+ sig_verify_cost_secp256k1:
+ type: string
+ format: uint64
+ description: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /cosmos/authz/v1beta1/grants:
+ get:
+ summary: Returns list of `Authorization`, granted to the grantee by the granter.
+ operationId: CosmosAuthzV1Beta1Grants
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ grants:
+ type: array
+ items:
+ type: object
+ properties:
+ authorization:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ expiration:
+ type: string
+ format: date-time
+ title: >-
+ time when the grant will expire and will be pruned. If
+ null, then the grant
+
+ doesn't have a time expiration (other conditions in
+ `authorization`
+
+ may apply to invalidate the grant)
+ description: |-
+ Grant gives permissions to execute
+ the provide method with expiration time.
+ description: >-
+ authorizations is a list of grants granted for grantee by
+ granter.
+ pagination:
+ description: pagination defines an pagination for the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryGrantsResponse is the response type for the
+ Query/Authorizations RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: granter
+ in: query
+ required: false
+ type: string
+ - name: grantee
+ in: query
+ required: false
+ type: string
+ - name: msg_type_url
+ description: >-
+ Optional, msg_type_url, when set, will query only grants matching
+ given msg type.
+ in: query
+ required: false
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/authz/v1beta1/grants/grantee/{grantee}:
+ get:
+ summary: GranteeGrants returns a list of `GrantAuthorization` by grantee.
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosAuthzV1Beta1GranteeGrants
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ grants:
+ type: array
+ items:
+ type: object
+ properties:
+ granter:
+ type: string
+ grantee:
+ type: string
+ authorization:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ expiration:
+ type: string
+ format: date-time
+ title: >-
+ GrantAuthorization extends a grant with both the addresses
+ of the grantee and granter.
+
+ It is used in genesis.proto and query.proto
+ description: grants is a list of grants granted to the grantee.
+ pagination:
+ description: pagination defines an pagination for the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryGranteeGrantsResponse is the response type for the
+ Query/GranteeGrants RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: grantee
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/authz/v1beta1/grants/granter/{granter}:
+ get:
+ summary: GranterGrants returns list of `GrantAuthorization`, granted by granter.
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosAuthzV1Beta1GranterGrants
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ grants:
+ type: array
+ items:
+ type: object
+ properties:
+ granter:
+ type: string
+ grantee:
+ type: string
+ authorization:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ expiration:
+ type: string
+ format: date-time
+ title: >-
+ GrantAuthorization extends a grant with both the addresses
+ of the grantee and granter.
+
+ It is used in genesis.proto and query.proto
+ description: grants is a list of grants granted by the granter.
+ pagination:
+ description: pagination defines an pagination for the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryGranterGrantsResponse is the response type for the
+ Query/GranterGrants RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: granter
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/balances/{address}:
+ get:
+ summary: AllBalances queries the balance of all coins for a single account.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosBankV1Beta1AllBalances
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ balances:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the custom
+ method
+
+ signatures required by gogoproto.
+ description: balances is the balances of all the coins.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryAllBalancesResponse is the response type for the
+ Query/AllBalances RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: address
+ description: address is the address to query balances for.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/balances/{address}/by_denom:
+ get:
+ summary: Balance queries the balance of a single coin for a single account.
+ operationId: CosmosBankV1Beta1Balance
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ balance:
+ description: balance is the balance of the coin.
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ QueryBalanceResponse is the response type for the Query/Balance
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: address
+ description: address is the address to query balances for.
+ in: path
+ required: true
+ type: string
+ - name: denom
+ description: denom is the coin denom to query balances for.
+ in: query
+ required: false
+ type: string
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/denom_owners/{denom}:
+ get:
+ summary: >-
+ DenomOwners queries for all account addresses that own a particular
+ token
+
+ denomination.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+
+
+ Since: cosmos-sdk 0.46
+ operationId: CosmosBankV1Beta1DenomOwners
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ denom_owners:
+ type: array
+ items:
+ type: object
+ properties:
+ address:
+ type: string
+ description: >-
+ address defines the address that owns a particular
+ denomination.
+ balance:
+ description: >-
+ balance is the balance of the denominated coin for an
+ account.
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DenomOwner defines structure representing an account that
+ owns or holds a
+
+ particular denominated token. It contains the account
+ address and account
+
+ balance of the denominated token.
+
+
+ Since: cosmos-sdk 0.46
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryDenomOwnersResponse defines the RPC response of a DenomOwners
+ RPC query.
+
+
+ Since: cosmos-sdk 0.46
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: denom
+ description: >-
+ denom defines the coin denomination to query all account holders
+ for.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/denoms_metadata:
+ get:
+ summary: |-
+ DenomsMetadata queries the client metadata for all registered coin
+ denominations.
+ operationId: CosmosBankV1Beta1DenomsMetadata
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ metadatas:
+ type: array
+ items:
+ type: object
+ properties:
+ description:
+ type: string
+ denom_units:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ description: >-
+ denom represents the string name of the given
+ denom unit (e.g uatom).
+ exponent:
+ type: integer
+ format: int64
+ description: >-
+ exponent represents power of 10 exponent that one
+ must
+
+ raise the base_denom to in order to equal the
+ given DenomUnit's denom
+
+ 1 denom = 10^exponent base_denom
+
+ (e.g. with a base_denom of uatom, one can create a
+ DenomUnit of 'atom' with
+
+ exponent = 6, thus: 1 atom = 10^6 uatom).
+ aliases:
+ type: array
+ items:
+ type: string
+ title: >-
+ aliases is a list of string aliases for the given
+ denom
+ description: |-
+ DenomUnit represents a struct that describes a given
+ denomination unit of the basic token.
+ title: >-
+ denom_units represents the list of DenomUnit's for a
+ given coin
+ base:
+ type: string
+ description: >-
+ base represents the base denom (should be the DenomUnit
+ with exponent = 0).
+ display:
+ type: string
+ description: |-
+ display indicates the suggested denom that should be
+ displayed in clients.
+ name:
+ type: string
+ description: 'Since: cosmos-sdk 0.43'
+ title: 'name defines the name of the token (eg: Cosmos Atom)'
+ symbol:
+ type: string
+ description: >-
+ symbol is the token symbol usually shown on exchanges
+ (eg: ATOM). This can
+
+ be the same as the display.
+
+
+ Since: cosmos-sdk 0.43
+ uri:
+ type: string
+ description: >-
+ URI to a document (on or off-chain) that contains
+ additional information. Optional.
+
+
+ Since: cosmos-sdk 0.46
+ uri_hash:
+ type: string
+ description: >-
+ URIHash is a sha256 hash of a document pointed by URI.
+ It's used to verify that
+
+ the document didn't change. Optional.
+
+
+ Since: cosmos-sdk 0.46
+ description: |-
+ Metadata represents a struct that describes
+ a basic token.
+ description: >-
+ metadata provides the client information for all the
+ registered tokens.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryDenomsMetadataResponse is the response type for the
+ Query/DenomsMetadata RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/denoms_metadata/{denom}:
+ get:
+ summary: DenomsMetadata queries the client metadata of a given coin denomination.
+ operationId: CosmosBankV1Beta1DenomMetadata
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ metadata:
+ description: >-
+ metadata describes and provides all the client information for
+ the requested token.
+ type: object
+ properties:
+ description:
+ type: string
+ denom_units:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ description: >-
+ denom represents the string name of the given denom
+ unit (e.g uatom).
+ exponent:
+ type: integer
+ format: int64
+ description: >-
+ exponent represents power of 10 exponent that one
+ must
+
+ raise the base_denom to in order to equal the given
+ DenomUnit's denom
+
+ 1 denom = 10^exponent base_denom
+
+ (e.g. with a base_denom of uatom, one can create a
+ DenomUnit of 'atom' with
+
+ exponent = 6, thus: 1 atom = 10^6 uatom).
+ aliases:
+ type: array
+ items:
+ type: string
+ title: >-
+ aliases is a list of string aliases for the given
+ denom
+ description: |-
+ DenomUnit represents a struct that describes a given
+ denomination unit of the basic token.
+ title: >-
+ denom_units represents the list of DenomUnit's for a given
+ coin
+ base:
+ type: string
+ description: >-
+ base represents the base denom (should be the DenomUnit
+ with exponent = 0).
+ display:
+ type: string
+ description: |-
+ display indicates the suggested denom that should be
+ displayed in clients.
+ name:
+ type: string
+ description: 'Since: cosmos-sdk 0.43'
+ title: 'name defines the name of the token (eg: Cosmos Atom)'
+ symbol:
+ type: string
+ description: >-
+ symbol is the token symbol usually shown on exchanges (eg:
+ ATOM). This can
+
+ be the same as the display.
+
+
+ Since: cosmos-sdk 0.43
+ uri:
+ type: string
+ description: >-
+ URI to a document (on or off-chain) that contains
+ additional information. Optional.
+
+
+ Since: cosmos-sdk 0.46
+ uri_hash:
+ type: string
+ description: >-
+ URIHash is a sha256 hash of a document pointed by URI.
+ It's used to verify that
+
+ the document didn't change. Optional.
+
+
+ Since: cosmos-sdk 0.46
+ description: >-
+ QueryDenomMetadataResponse is the response type for the
+ Query/DenomMetadata RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: denom
+ description: denom is the coin denom to query the metadata for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/params:
+ get:
+ summary: Params queries the parameters of x/bank module.
+ operationId: CosmosBankV1Beta1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ type: object
+ properties:
+ send_enabled:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ enabled:
+ type: boolean
+ description: >-
+ SendEnabled maps coin denom to a send_enabled status
+ (whether a denom is
+
+ sendable).
+ description: >-
+ Deprecated: Use of SendEnabled in params is deprecated.
+
+ For genesis, use the newly added send_enabled field in the
+ genesis object.
+
+ Storage, lookup, and manipulation of this information is
+ now in the keeper.
+
+
+ As of cosmos-sdk 0.47, this only exists for backwards
+ compatibility of genesis files.
+ default_send_enabled:
+ type: boolean
+ description: Params defines the parameters for the bank module.
+ description: >-
+ QueryParamsResponse defines the response type for querying x/bank
+ parameters.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/send_enabled:
+ get:
+ summary: SendEnabled queries for SendEnabled entries.
+ description: >-
+ This query only returns denominations that have specific SendEnabled
+ settings.
+
+ Any denomination that does not have a specific setting will use the
+ default
+
+ params.default_send_enabled, and will not be returned by this query.
+
+
+ Since: cosmos-sdk 0.47
+ operationId: CosmosBankV1Beta1SendEnabled
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ send_enabled:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ enabled:
+ type: boolean
+ description: >-
+ SendEnabled maps coin denom to a send_enabled status
+ (whether a denom is
+
+ sendable).
+ pagination:
+ description: >-
+ pagination defines the pagination in the response. This field
+ is only
+
+ populated if the denoms field in the request is empty.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QuerySendEnabledResponse defines the RPC response of a SendEnable
+ query.
+
+
+ Since: cosmos-sdk 0.47
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: denoms
+ description: >-
+ denoms is the specific denoms you want look up. Leave empty to get
+ all entries.
+ in: query
+ required: false
+ type: array
+ items:
+ type: string
+ collectionFormat: multi
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/spendable_balances/{address}:
+ get:
+ summary: >-
+ SpendableBalances queries the spendable balance of all coins for a
+ single
+
+ account.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+
+
+ Since: cosmos-sdk 0.46
+ operationId: CosmosBankV1Beta1SpendableBalances
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ balances:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the custom
+ method
+
+ signatures required by gogoproto.
+ description: balances is the spendable balances of all the coins.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QuerySpendableBalancesResponse defines the gRPC response structure
+ for querying
+
+ an account's spendable balances.
+
+
+ Since: cosmos-sdk 0.46
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: address
+ description: address is the address to query spendable balances for.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/spendable_balances/{address}/by_denom:
+ get:
+ summary: >-
+ SpendableBalanceByDenom queries the spendable balance of a single denom
+ for
+
+ a single account.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+
+
+ Since: cosmos-sdk 0.47
+ operationId: CosmosBankV1Beta1SpendableBalanceByDenom
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ balance:
+ description: balance is the balance of the coin.
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ QuerySpendableBalanceByDenomResponse defines the gRPC response
+ structure for
+
+ querying an account's spendable balance for a specific denom.
+
+
+ Since: cosmos-sdk 0.47
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: address
+ description: address is the address to query balances for.
+ in: path
+ required: true
+ type: string
+ - name: denom
+ description: denom is the coin denom to query balances for.
+ in: query
+ required: false
+ type: string
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/supply:
+ get:
+ summary: TotalSupply queries the total supply of all coins.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosBankV1Beta1TotalSupply
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ supply:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the custom
+ method
+
+ signatures required by gogoproto.
+ title: supply is the supply of the coins
+ pagination:
+ description: |-
+ pagination defines the pagination in the response.
+
+ Since: cosmos-sdk 0.43
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ title: >-
+ QueryTotalSupplyResponse is the response type for the
+ Query/TotalSupply RPC
+
+ method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/bank/v1beta1/supply/by_denom:
+ get:
+ summary: SupplyOf queries the supply of a single coin.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosBankV1Beta1SupplyOf
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ amount:
+ description: amount is the supply of the coin.
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ QuerySupplyOfResponse is the response type for the Query/SupplyOf
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: denom
+ description: denom is the coin denom to query balances for.
+ in: query
+ required: false
+ type: string
+ tags:
+ - Query
+ /cosmos/consensus/v1/params:
+ get:
+ summary: Params queries the parameters of x/consensus_param module.
+ operationId: CosmosConsensusV1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: >-
+ params are the tendermint consensus params stored in the
+ consensus module.
+
+ Please note that `params.version` is not populated in this
+ response, it is
+
+ tracked separately in the x/upgrade module.
+ type: object
+ properties:
+ block:
+ type: object
+ properties:
+ max_bytes:
+ type: string
+ format: int64
+ title: |-
+ Max block size, in bytes.
+ Note: must be greater than 0
+ max_gas:
+ type: string
+ format: int64
+ title: |-
+ Max gas per block.
+ Note: must be greater or equal to -1
+ description: BlockParams contains limits on the block size.
+ evidence:
+ type: object
+ properties:
+ max_age_num_blocks:
+ type: string
+ format: int64
+ description: >-
+ Max age of evidence, in blocks.
+
+
+ The basic formula for calculating this is:
+ MaxAgeDuration / {average block
+
+ time}.
+ max_age_duration:
+ type: string
+ description: >-
+ Max age of evidence, in time.
+
+
+ It should correspond with an app's "unbonding period"
+ or other similar
+
+ mechanism for handling [Nothing-At-Stake
+
+ attacks](https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ#what-is-the-nothing-at-stake-problem-and-how-can-it-be-fixed).
+ max_bytes:
+ type: string
+ format: int64
+ title: >-
+ This sets the maximum size of total evidence in bytes
+ that can be committed in a single block.
+
+ and should fall comfortably under the max block bytes.
+
+ Default is 1048576 or 1MB
+ description: >-
+ EvidenceParams determine how we handle evidence of
+ malfeasance.
+ validator:
+ type: object
+ properties:
+ pub_key_types:
+ type: array
+ items:
+ type: string
+ description: >-
+ ValidatorParams restrict the public key types validators
+ can use.
+
+ NOTE: uses ABCI pubkey naming, not Amino names.
+ version:
+ type: object
+ properties:
+ app:
+ type: string
+ format: uint64
+ description: VersionParams contains the ABCI application version.
+ description: >-
+ QueryParamsResponse defines the response type for querying
+ x/consensus parameters.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/community_pool:
+ get:
+ summary: CommunityPool queries the community pool coins.
+ operationId: CosmosDistributionV1Beta1CommunityPool
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ pool:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DecCoin defines a token with a denomination and a decimal
+ amount.
+
+
+ NOTE: The amount field is an Dec which implements the custom
+ method
+
+ signatures required by gogoproto.
+ description: pool defines community pool's coins.
+ description: >-
+ QueryCommunityPoolResponse is the response type for the
+ Query/CommunityPool
+
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards:
+ get:
+ summary: |-
+ DelegationTotalRewards queries the total rewards accrued by a each
+ validator.
+ operationId: CosmosDistributionV1Beta1DelegationTotalRewards
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ rewards:
+ type: array
+ items:
+ type: object
+ properties:
+ validator_address:
+ type: string
+ reward:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DecCoin defines a token with a denomination and a
+ decimal amount.
+
+
+ NOTE: The amount field is an Dec which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: |-
+ DelegationDelegatorReward represents the properties
+ of a delegator's delegation reward.
+ description: rewards defines all the rewards accrued by a delegator.
+ total:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DecCoin defines a token with a denomination and a decimal
+ amount.
+
+
+ NOTE: The amount field is an Dec which implements the custom
+ method
+
+ signatures required by gogoproto.
+ description: total defines the sum of all the rewards.
+ description: |-
+ QueryDelegationTotalRewardsResponse is the response type for the
+ Query/DelegationTotalRewards RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: delegator_address
+ description: delegator_address defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}:
+ get:
+ summary: DelegationRewards queries the total rewards accrued by a delegation.
+ operationId: CosmosDistributionV1Beta1DelegationRewards
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ rewards:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DecCoin defines a token with a denomination and a decimal
+ amount.
+
+
+ NOTE: The amount field is an Dec which implements the custom
+ method
+
+ signatures required by gogoproto.
+ description: rewards defines the rewards accrued by a delegation.
+ description: |-
+ QueryDelegationRewardsResponse is the response type for the
+ Query/DelegationRewards RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: delegator_address
+ description: delegator_address defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: validator_address
+ description: validator_address defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/delegators/{delegator_address}/validators:
+ get:
+ summary: DelegatorValidators queries the validators of a delegator.
+ operationId: CosmosDistributionV1Beta1DelegatorValidators
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ validators:
+ type: array
+ items:
+ type: string
+ description: >-
+ validators defines the validators a delegator is delegating
+ for.
+ description: |-
+ QueryDelegatorValidatorsResponse is the response type for the
+ Query/DelegatorValidators RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: delegator_address
+ description: delegator_address defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address:
+ get:
+ summary: DelegatorWithdrawAddress queries withdraw address of a delegator.
+ operationId: CosmosDistributionV1Beta1DelegatorWithdrawAddress
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ withdraw_address:
+ type: string
+ description: withdraw_address defines the delegator address to query for.
+ description: |-
+ QueryDelegatorWithdrawAddressResponse is the response type for the
+ Query/DelegatorWithdrawAddress RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: delegator_address
+ description: delegator_address defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/params:
+ get:
+ summary: Params queries params of the distribution module.
+ operationId: CosmosDistributionV1Beta1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: params defines the parameters of the module.
+ type: object
+ properties:
+ community_tax:
+ type: string
+ base_proposer_reward:
+ type: string
+ description: >-
+ Deprecated: The base_proposer_reward field is deprecated
+ and is no longer used
+
+ in the x/distribution module's reward mechanism.
+ bonus_proposer_reward:
+ type: string
+ description: >-
+ Deprecated: The bonus_proposer_reward field is deprecated
+ and is no longer used
+
+ in the x/distribution module's reward mechanism.
+ withdraw_addr_enabled:
+ type: boolean
+ description: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/validators/{validator_address}:
+ get:
+ summary: >-
+ ValidatorDistributionInfo queries validator commission and
+ self-delegation rewards for validator
+ operationId: CosmosDistributionV1Beta1ValidatorDistributionInfo
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ operator_address:
+ type: string
+ description: operator_address defines the validator operator address.
+ self_bond_rewards:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DecCoin defines a token with a denomination and a decimal
+ amount.
+
+
+ NOTE: The amount field is an Dec which implements the custom
+ method
+
+ signatures required by gogoproto.
+ description: self_bond_rewards defines the self delegations rewards.
+ commission:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DecCoin defines a token with a denomination and a decimal
+ amount.
+
+
+ NOTE: The amount field is an Dec which implements the custom
+ method
+
+ signatures required by gogoproto.
+ description: commission defines the commission the validator received.
+ description: >-
+ QueryValidatorDistributionInfoResponse is the response type for
+ the Query/ValidatorDistributionInfo RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: validator_address
+ description: validator_address defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/validators/{validator_address}/commission:
+ get:
+ summary: ValidatorCommission queries accumulated commission for a validator.
+ operationId: CosmosDistributionV1Beta1ValidatorCommission
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ commission:
+ description: commission defines the commission the validator received.
+ type: object
+ properties:
+ commission:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DecCoin defines a token with a denomination and a
+ decimal amount.
+
+
+ NOTE: The amount field is an Dec which implements the
+ custom method
+
+ signatures required by gogoproto.
+ title: |-
+ QueryValidatorCommissionResponse is the response type for the
+ Query/ValidatorCommission RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: validator_address
+ description: validator_address defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards:
+ get:
+ summary: ValidatorOutstandingRewards queries rewards of a validator address.
+ operationId: CosmosDistributionV1Beta1ValidatorOutstandingRewards
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ rewards:
+ type: object
+ properties:
+ rewards:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ DecCoin defines a token with a denomination and a
+ decimal amount.
+
+
+ NOTE: The amount field is an Dec which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: >-
+ ValidatorOutstandingRewards represents outstanding
+ (un-withdrawn) rewards
+
+ for a validator inexpensive to track, allows simple sanity
+ checks.
+ description: >-
+ QueryValidatorOutstandingRewardsResponse is the response type for
+ the
+
+ Query/ValidatorOutstandingRewards RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: validator_address
+ description: validator_address defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/distribution/v1beta1/validators/{validator_address}/slashes:
+ get:
+ summary: ValidatorSlashes queries slash events of a validator.
+ operationId: CosmosDistributionV1Beta1ValidatorSlashes
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ slashes:
+ type: array
+ items:
+ type: object
+ properties:
+ validator_period:
+ type: string
+ format: uint64
+ fraction:
+ type: string
+ description: >-
+ ValidatorSlashEvent represents a validator slash event.
+
+ Height is implicit within the store key.
+
+ This is needed to calculate appropriate amount of staking
+ tokens
+
+ for delegations which are withdrawn after a slash has
+ occurred.
+ description: slashes defines the slashes the validator received.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: |-
+ QueryValidatorSlashesResponse is the response type for the
+ Query/ValidatorSlashes RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: validator_address
+ description: validator_address defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: starting_height
+ description: >-
+ starting_height defines the optional starting height to query the
+ slashes.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: ending_height
+ description: >-
+ starting_height defines the optional ending height to query the
+ slashes.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/evidence/v1beta1/evidence:
+ get:
+ summary: AllEvidence queries all evidence.
+ operationId: CosmosEvidenceV1Beta1AllEvidence
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ evidence:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: evidence returns all evidences.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryAllEvidenceResponse is the response type for the
+ Query/AllEvidence RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/evidence/v1beta1/evidence/{hash}:
+ get:
+ summary: Evidence queries evidence based on evidence hash.
+ operationId: CosmosEvidenceV1Beta1Evidence
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ evidence:
+ description: evidence returns the requested evidence.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at least
+
+ one "/" character. The last segment of the URL's path must
+ represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in a
+ canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary all
+ types that they
+
+ expect it to use in the context of Any. However, for URLs
+ which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in the
+ official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ QueryEvidenceResponse is the response type for the Query/Evidence
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: hash
+ description: |-
+ hash defines the evidence hash of the requested evidence.
+
+ Since: cosmos-sdk 0.47
+ in: path
+ required: true
+ type: string
+ - name: evidence_hash
+ description: |-
+ evidence_hash defines the hash of the requested evidence.
+ Deprecated: Use hash, a HEX encoded string, instead.
+ in: query
+ required: false
+ type: string
+ format: byte
+ tags:
+ - Query
+ /cosmos/feegrant/v1beta1/allowance/{granter}/{grantee}:
+ get:
+ summary: Allowance returns fee granted to the grantee by the granter.
+ operationId: CosmosFeegrantV1Beta1Allowance
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ allowance:
+ description: allowance is a allowance granted for grantee by granter.
+ type: object
+ properties:
+ granter:
+ type: string
+ description: >-
+ granter is the address of the user granting an allowance
+ of their funds.
+ grantee:
+ type: string
+ description: >-
+ grantee is the address of the user being granted an
+ allowance of another user's funds.
+ allowance:
+ description: >-
+ allowance can be any of basic, periodic, allowed fee
+ allowance.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ title: >-
+ Grant is stored in the KVStore to record a grant with full
+ context
+ description: >-
+ QueryAllowanceResponse is the response type for the
+ Query/Allowance RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: granter
+ description: >-
+ granter is the address of the user granting an allowance of their
+ funds.
+ in: path
+ required: true
+ type: string
+ - name: grantee
+ description: >-
+ grantee is the address of the user being granted an allowance of
+ another user's funds.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/feegrant/v1beta1/allowances/{grantee}:
+ get:
+ summary: Allowances returns all the grants for address.
+ operationId: CosmosFeegrantV1Beta1Allowances
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ allowances:
+ type: array
+ items:
+ type: object
+ properties:
+ granter:
+ type: string
+ description: >-
+ granter is the address of the user granting an allowance
+ of their funds.
+ grantee:
+ type: string
+ description: >-
+ grantee is the address of the user being granted an
+ allowance of another user's funds.
+ allowance:
+ description: >-
+ allowance can be any of basic, periodic, allowed fee
+ allowance.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ title: >-
+ Grant is stored in the KVStore to record a grant with full
+ context
+ description: allowances are allowance's granted for grantee by granter.
+ pagination:
+ description: pagination defines an pagination for the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryAllowancesResponse is the response type for the
+ Query/Allowances RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: grantee
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/feegrant/v1beta1/issued/{granter}:
+ get:
+ summary: AllowancesByGranter returns all the grants given by an address
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosFeegrantV1Beta1AllowancesByGranter
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ allowances:
+ type: array
+ items:
+ type: object
+ properties:
+ granter:
+ type: string
+ description: >-
+ granter is the address of the user granting an allowance
+ of their funds.
+ grantee:
+ type: string
+ description: >-
+ grantee is the address of the user being granted an
+ allowance of another user's funds.
+ allowance:
+ description: >-
+ allowance can be any of basic, periodic, allowed fee
+ allowance.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ title: >-
+ Grant is stored in the KVStore to record a grant with full
+ context
+ description: allowances that have been issued by the granter.
+ pagination:
+ description: pagination defines an pagination for the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryAllowancesByGranterResponse is the response type for the
+ Query/AllowancesByGranter RPC method.
+
+
+ Since: cosmos-sdk 0.46
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: granter
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/gov/v1/params/{params_type}:
+ get:
+ summary: Params queries all parameters of the gov module.
+ operationId: CosmosGovV1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ voting_params:
+ description: |-
+ Deprecated: Prefer to use `params` instead.
+ voting_params defines the parameters related to voting.
+ type: object
+ properties:
+ voting_period:
+ type: string
+ description: Duration of the voting period.
+ deposit_params:
+ description: |-
+ Deprecated: Prefer to use `params` instead.
+ deposit_params defines the parameters related to deposit.
+ type: object
+ properties:
+ min_deposit:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: Minimum deposit for a proposal to enter voting period.
+ max_deposit_period:
+ type: string
+ description: >-
+ Maximum period for Atom holders to deposit on a proposal.
+ Initial value: 2
+
+ months.
+ tally_params:
+ description: |-
+ Deprecated: Prefer to use `params` instead.
+ tally_params defines the parameters related to tally.
+ type: object
+ properties:
+ quorum:
+ type: string
+ description: >-
+ Minimum percentage of total stake needed to vote for a
+ result to be
+
+ considered valid.
+ threshold:
+ type: string
+ description: >-
+ Minimum proportion of Yes votes for proposal to pass.
+ Default value: 0.5.
+ veto_threshold:
+ type: string
+ description: >-
+ Minimum value of Veto votes to Total votes ratio for
+ proposal to be
+
+ vetoed. Default value: 1/3.
+ params:
+ description: |-
+ params defines all the paramaters of x/gov module.
+
+ Since: cosmos-sdk 0.47
+ type: object
+ properties:
+ min_deposit:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: Minimum deposit for a proposal to enter voting period.
+ max_deposit_period:
+ type: string
+ description: >-
+ Maximum period for Atom holders to deposit on a proposal.
+ Initial value: 2
+
+ months.
+ voting_period:
+ type: string
+ description: Duration of the voting period.
+ quorum:
+ type: string
+ description: >-
+ Minimum percentage of total stake needed to vote for a
+ result to be
+ considered valid.
+ threshold:
+ type: string
+ description: >-
+ Minimum proportion of Yes votes for proposal to pass.
+ Default value: 0.5.
+ veto_threshold:
+ type: string
+ description: >-
+ Minimum value of Veto votes to Total votes ratio for
+ proposal to be
+ vetoed. Default value: 1/3.
+ min_initial_deposit_ratio:
+ type: string
+ description: >-
+ The ratio representing the proportion of the deposit value
+ that must be paid at proposal submission.
+ burn_vote_quorum:
+ type: boolean
+ title: burn deposits if a proposal does not meet quorum
+ burn_proposal_deposit_prevote:
+ type: boolean
+ title: burn deposits if the proposal does not enter voting period
+ burn_vote_veto:
+ type: boolean
+ title: burn deposits if quorum with vote type no_veto is met
+ description: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: params_type
+ description: >-
+ params_type defines which parameters to query for, can be one of
+ "voting",
+
+ "tallying" or "deposit".
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/gov/v1/proposals:
+ get:
+ summary: Proposals queries all proposals based on given status.
+ operationId: CosmosGovV1Proposals
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ proposals:
+ type: array
+ items:
+ type: object
+ properties:
+ id:
+ type: string
+ format: uint64
+ description: id defines the unique id of the proposal.
+ messages:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain
+ at least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should
+ be in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However,
+ for URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions
+ as follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently
+ available in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods
+ of the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL
+ and the unpack
+
+ methods only use the fully qualified type name after
+ the last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ messages are the arbitrary messages to be executed if
+ the proposal passes.
+ status:
+ description: status defines the proposal status.
+ type: string
+ enum:
+ - PROPOSAL_STATUS_UNSPECIFIED
+ - PROPOSAL_STATUS_DEPOSIT_PERIOD
+ - PROPOSAL_STATUS_VOTING_PERIOD
+ - PROPOSAL_STATUS_PASSED
+ - PROPOSAL_STATUS_REJECTED
+ - PROPOSAL_STATUS_FAILED
+ default: PROPOSAL_STATUS_UNSPECIFIED
+ final_tally_result:
+ description: >-
+ final_tally_result is the final tally result of the
+ proposal. When
+
+ querying a proposal via gRPC, this field is not
+ populated until the
+
+ proposal's voting period has ended.
+ type: object
+ properties:
+ yes_count:
+ type: string
+ description: yes_count is the number of yes votes on a proposal.
+ abstain_count:
+ type: string
+ description: >-
+ abstain_count is the number of abstain votes on a
+ proposal.
+ no_count:
+ type: string
+ description: no_count is the number of no votes on a proposal.
+ no_with_veto_count:
+ type: string
+ description: >-
+ no_with_veto_count is the number of no with veto
+ votes on a proposal.
+ submit_time:
+ type: string
+ format: date-time
+ description: submit_time is the time of proposal submission.
+ deposit_end_time:
+ type: string
+ format: date-time
+ description: deposit_end_time is the end time for deposition.
+ total_deposit:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an
+ amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: total_deposit is the total deposit on the proposal.
+ voting_start_time:
+ type: string
+ format: date-time
+ description: >-
+ voting_start_time is the starting time to vote on a
+ proposal.
+ voting_end_time:
+ type: string
+ format: date-time
+ description: voting_end_time is the end time of voting on a proposal.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata attached to the
+ proposal.
+ title:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: title is the title of the proposal
+ summary:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: summary is a short summary of the proposal
+ proposer:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: Proposer is the address of the proposal sumbitter
+ description: >-
+ Proposal defines the core field members of a governance
+ proposal.
+ description: proposals defines all the requested governance proposals.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryProposalsResponse is the response type for the
+ Query/Proposals RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_status
+ description: |-
+ proposal_status defines the status of the proposals.
+
+ - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
+ - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
+ period.
+ - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
+ period.
+ - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
+ passed.
+ - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
+ been rejected.
+ - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
+ failed.
+ in: query
+ required: false
+ type: string
+ enum:
+ - PROPOSAL_STATUS_UNSPECIFIED
+ - PROPOSAL_STATUS_DEPOSIT_PERIOD
+ - PROPOSAL_STATUS_VOTING_PERIOD
+ - PROPOSAL_STATUS_PASSED
+ - PROPOSAL_STATUS_REJECTED
+ - PROPOSAL_STATUS_FAILED
+ default: PROPOSAL_STATUS_UNSPECIFIED
+ - name: voter
+ description: voter defines the voter address for the proposals.
+ in: query
+ required: false
+ type: string
+ - name: depositor
+ description: depositor defines the deposit addresses from the proposals.
+ in: query
+ required: false
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/gov/v1/proposals/{proposal_id}:
+ get:
+ summary: Proposal queries proposal details based on ProposalID.
+ operationId: CosmosGovV1Proposal
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ proposal:
+ description: proposal is the requested governance proposal.
+ type: object
+ properties:
+ id:
+ type: string
+ format: uint64
+ description: id defines the unique id of the proposal.
+ messages:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ messages are the arbitrary messages to be executed if the
+ proposal passes.
+ status:
+ description: status defines the proposal status.
+ type: string
+ enum:
+ - PROPOSAL_STATUS_UNSPECIFIED
+ - PROPOSAL_STATUS_DEPOSIT_PERIOD
+ - PROPOSAL_STATUS_VOTING_PERIOD
+ - PROPOSAL_STATUS_PASSED
+ - PROPOSAL_STATUS_REJECTED
+ - PROPOSAL_STATUS_FAILED
+ default: PROPOSAL_STATUS_UNSPECIFIED
+ final_tally_result:
+ description: >-
+ final_tally_result is the final tally result of the
+ proposal. When
+
+ querying a proposal via gRPC, this field is not populated
+ until the
+
+ proposal's voting period has ended.
+ type: object
+ properties:
+ yes_count:
+ type: string
+ description: yes_count is the number of yes votes on a proposal.
+ abstain_count:
+ type: string
+ description: >-
+ abstain_count is the number of abstain votes on a
+ proposal.
+ no_count:
+ type: string
+ description: no_count is the number of no votes on a proposal.
+ no_with_veto_count:
+ type: string
+ description: >-
+ no_with_veto_count is the number of no with veto votes
+ on a proposal.
+ submit_time:
+ type: string
+ format: date-time
+ description: submit_time is the time of proposal submission.
+ deposit_end_time:
+ type: string
+ format: date-time
+ description: deposit_end_time is the end time for deposition.
+ total_deposit:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: total_deposit is the total deposit on the proposal.
+ voting_start_time:
+ type: string
+ format: date-time
+ description: >-
+ voting_start_time is the starting time to vote on a
+ proposal.
+ voting_end_time:
+ type: string
+ format: date-time
+ description: voting_end_time is the end time of voting on a proposal.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata attached to the
+ proposal.
+ title:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: title is the title of the proposal
+ summary:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: summary is a short summary of the proposal
+ proposer:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: Proposer is the address of the proposal sumbitter
+ description: >-
+ QueryProposalResponse is the response type for the Query/Proposal
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /cosmos/gov/v1/proposals/{proposal_id}/deposits:
+ get:
+ summary: Deposits queries all deposits of a single proposal.
+ operationId: CosmosGovV1Deposits
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ deposits:
+ type: array
+ items:
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ depositor:
+ type: string
+ description: >-
+ depositor defines the deposit addresses from the
+ proposals.
+ amount:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an
+ amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: amount to be deposited by depositor.
+ description: >-
+ Deposit defines an amount deposited by an account address to
+ an active
+
+ proposal.
+ description: deposits defines the requested deposits.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryDepositsResponse is the response type for the Query/Deposits
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/gov/v1/proposals/{proposal_id}/deposits/{depositor}:
+ get:
+ summary: >-
+ Deposit queries single deposit information based proposalID,
+ depositAddr.
+ operationId: CosmosGovV1Deposit
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ deposit:
+ description: deposit defines the requested deposit.
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ depositor:
+ type: string
+ description: >-
+ depositor defines the deposit addresses from the
+ proposals.
+ amount:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: amount to be deposited by depositor.
+ description: >-
+ QueryDepositResponse is the response type for the Query/Deposit
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: depositor
+ description: depositor defines the deposit addresses from the proposals.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/gov/v1/proposals/{proposal_id}/tally:
+ get:
+ summary: TallyResult queries the tally of a proposal vote.
+ operationId: CosmosGovV1TallyResult
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ tally:
+ description: tally defines the requested tally.
+ type: object
+ properties:
+ yes_count:
+ type: string
+ description: yes_count is the number of yes votes on a proposal.
+ abstain_count:
+ type: string
+ description: >-
+ abstain_count is the number of abstain votes on a
+ proposal.
+ no_count:
+ type: string
+ description: no_count is the number of no votes on a proposal.
+ no_with_veto_count:
+ type: string
+ description: >-
+ no_with_veto_count is the number of no with veto votes on
+ a proposal.
+ description: >-
+ QueryTallyResultResponse is the response type for the Query/Tally
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /cosmos/gov/v1/proposals/{proposal_id}/votes:
+ get:
+ summary: Votes queries votes of a given proposal.
+ operationId: CosmosGovV1Votes
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ votes:
+ type: array
+ items:
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ voter:
+ type: string
+ description: voter is the voter address of the proposal.
+ options:
+ type: array
+ items:
+ type: object
+ properties:
+ option:
+ description: >-
+ option defines the valid vote options, it must not
+ contain duplicate vote options.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ weight:
+ type: string
+ description: >-
+ weight is the vote weight associated with the vote
+ option.
+ description: >-
+ WeightedVoteOption defines a unit of vote for vote
+ split.
+ description: options is the weighted vote options.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata to attached to the
+ vote.
+ description: >-
+ Vote defines a vote on a governance proposal.
+
+ A Vote consists of a proposal ID, the voter, and the vote
+ option.
+ description: votes defines the queried votes.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryVotesResponse is the response type for the Query/Votes RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/gov/v1/proposals/{proposal_id}/votes/{voter}:
+ get:
+ summary: Vote queries voted information based on proposalID, voterAddr.
+ operationId: CosmosGovV1Vote
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ vote:
+ description: vote defines the queried vote.
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ voter:
+ type: string
+ description: voter is the voter address of the proposal.
+ options:
+ type: array
+ items:
+ type: object
+ properties:
+ option:
+ description: >-
+ option defines the valid vote options, it must not
+ contain duplicate vote options.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ weight:
+ type: string
+ description: >-
+ weight is the vote weight associated with the vote
+ option.
+ description: >-
+ WeightedVoteOption defines a unit of vote for vote
+ split.
+ description: options is the weighted vote options.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata to attached to the
+ vote.
+ description: >-
+ QueryVoteResponse is the response type for the Query/Vote RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: voter
+ description: voter defines the voter address for the proposals.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/gov/v1beta1/params/{params_type}:
+ get:
+ summary: Params queries all parameters of the gov module.
+ operationId: CosmosGovV1Beta1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ voting_params:
+ description: voting_params defines the parameters related to voting.
+ type: object
+ properties:
+ voting_period:
+ type: string
+ description: Duration of the voting period.
+ deposit_params:
+ description: deposit_params defines the parameters related to deposit.
+ type: object
+ properties:
+ min_deposit:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: Minimum deposit for a proposal to enter voting period.
+ max_deposit_period:
+ type: string
+ description: >-
+ Maximum period for Atom holders to deposit on a proposal.
+ Initial value: 2
+
+ months.
+ tally_params:
+ description: tally_params defines the parameters related to tally.
+ type: object
+ properties:
+ quorum:
+ type: string
+ format: byte
+ description: >-
+ Minimum percentage of total stake needed to vote for a
+ result to be
+
+ considered valid.
+ threshold:
+ type: string
+ format: byte
+ description: >-
+ Minimum proportion of Yes votes for proposal to pass.
+ Default value: 0.5.
+ veto_threshold:
+ type: string
+ format: byte
+ description: >-
+ Minimum value of Veto votes to Total votes ratio for
+ proposal to be
+
+ vetoed. Default value: 1/3.
+ description: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: params_type
+ description: >-
+ params_type defines which parameters to query for, can be one of
+ "voting",
+
+ "tallying" or "deposit".
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/gov/v1beta1/proposals:
+ get:
+ summary: Proposals queries all proposals based on given status.
+ operationId: CosmosGovV1Beta1Proposals
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ proposals:
+ type: array
+ items:
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ content:
+ description: content is the proposal's content.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ status:
+ description: status defines the proposal status.
+ type: string
+ enum:
+ - PROPOSAL_STATUS_UNSPECIFIED
+ - PROPOSAL_STATUS_DEPOSIT_PERIOD
+ - PROPOSAL_STATUS_VOTING_PERIOD
+ - PROPOSAL_STATUS_PASSED
+ - PROPOSAL_STATUS_REJECTED
+ - PROPOSAL_STATUS_FAILED
+ default: PROPOSAL_STATUS_UNSPECIFIED
+ final_tally_result:
+ description: >-
+ final_tally_result is the final tally result of the
+ proposal. When
+
+ querying a proposal via gRPC, this field is not
+ populated until the
+
+ proposal's voting period has ended.
+ type: object
+ properties:
+ 'yes':
+ type: string
+ description: yes is the number of yes votes on a proposal.
+ abstain:
+ type: string
+ description: >-
+ abstain is the number of abstain votes on a
+ proposal.
+ 'no':
+ type: string
+ description: no is the number of no votes on a proposal.
+ no_with_veto:
+ type: string
+ description: >-
+ no_with_veto is the number of no with veto votes on
+ a proposal.
+ submit_time:
+ type: string
+ format: date-time
+ description: submit_time is the time of proposal submission.
+ deposit_end_time:
+ type: string
+ format: date-time
+ description: deposit_end_time is the end time for deposition.
+ total_deposit:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an
+ amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: total_deposit is the total deposit on the proposal.
+ voting_start_time:
+ type: string
+ format: date-time
+ description: >-
+ voting_start_time is the starting time to vote on a
+ proposal.
+ voting_end_time:
+ type: string
+ format: date-time
+ description: voting_end_time is the end time of voting on a proposal.
+ description: >-
+ Proposal defines the core field members of a governance
+ proposal.
+ description: proposals defines all the requested governance proposals.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryProposalsResponse is the response type for the
+ Query/Proposals RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_status
+ description: |-
+ proposal_status defines the status of the proposals.
+
+ - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
+ - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
+ period.
+ - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
+ period.
+ - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
+ passed.
+ - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
+ been rejected.
+ - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
+ failed.
+ in: query
+ required: false
+ type: string
+ enum:
+ - PROPOSAL_STATUS_UNSPECIFIED
+ - PROPOSAL_STATUS_DEPOSIT_PERIOD
+ - PROPOSAL_STATUS_VOTING_PERIOD
+ - PROPOSAL_STATUS_PASSED
+ - PROPOSAL_STATUS_REJECTED
+ - PROPOSAL_STATUS_FAILED
+ default: PROPOSAL_STATUS_UNSPECIFIED
+ - name: voter
+ description: voter defines the voter address for the proposals.
+ in: query
+ required: false
+ type: string
+ - name: depositor
+ description: depositor defines the deposit addresses from the proposals.
+ in: query
+ required: false
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/gov/v1beta1/proposals/{proposal_id}:
+ get:
+ summary: Proposal queries proposal details based on ProposalID.
+ operationId: CosmosGovV1Beta1Proposal
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ proposal:
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ content:
+ description: content is the proposal's content.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ status:
+ description: status defines the proposal status.
+ type: string
+ enum:
+ - PROPOSAL_STATUS_UNSPECIFIED
+ - PROPOSAL_STATUS_DEPOSIT_PERIOD
+ - PROPOSAL_STATUS_VOTING_PERIOD
+ - PROPOSAL_STATUS_PASSED
+ - PROPOSAL_STATUS_REJECTED
+ - PROPOSAL_STATUS_FAILED
+ default: PROPOSAL_STATUS_UNSPECIFIED
+ final_tally_result:
+ description: >-
+ final_tally_result is the final tally result of the
+ proposal. When
+
+ querying a proposal via gRPC, this field is not populated
+ until the
+
+ proposal's voting period has ended.
+ type: object
+ properties:
+ 'yes':
+ type: string
+ description: yes is the number of yes votes on a proposal.
+ abstain:
+ type: string
+ description: abstain is the number of abstain votes on a proposal.
+ 'no':
+ type: string
+ description: no is the number of no votes on a proposal.
+ no_with_veto:
+ type: string
+ description: >-
+ no_with_veto is the number of no with veto votes on a
+ proposal.
+ submit_time:
+ type: string
+ format: date-time
+ description: submit_time is the time of proposal submission.
+ deposit_end_time:
+ type: string
+ format: date-time
+ description: deposit_end_time is the end time for deposition.
+ total_deposit:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: total_deposit is the total deposit on the proposal.
+ voting_start_time:
+ type: string
+ format: date-time
+ description: >-
+ voting_start_time is the starting time to vote on a
+ proposal.
+ voting_end_time:
+ type: string
+ format: date-time
+ description: voting_end_time is the end time of voting on a proposal.
+ description: >-
+ Proposal defines the core field members of a governance
+ proposal.
+ description: >-
+ QueryProposalResponse is the response type for the Query/Proposal
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits:
+ get:
+ summary: Deposits queries all deposits of a single proposal.
+ operationId: CosmosGovV1Beta1Deposits
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ deposits:
+ type: array
+ items:
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ depositor:
+ type: string
+ description: >-
+ depositor defines the deposit addresses from the
+ proposals.
+ amount:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an
+ amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: amount to be deposited by depositor.
+ description: >-
+ Deposit defines an amount deposited by an account address to
+ an active
+
+ proposal.
+ description: deposits defines the requested deposits.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryDepositsResponse is the response type for the Query/Deposits
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}:
+ get:
+ summary: >-
+ Deposit queries single deposit information based proposalID,
+ depositAddr.
+ operationId: CosmosGovV1Beta1Deposit
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ deposit:
+ description: deposit defines the requested deposit.
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ depositor:
+ type: string
+ description: >-
+ depositor defines the deposit addresses from the
+ proposals.
+ amount:
+ type: array
+ items:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: amount to be deposited by depositor.
+ description: >-
+ QueryDepositResponse is the response type for the Query/Deposit
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: depositor
+ description: depositor defines the deposit addresses from the proposals.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/gov/v1beta1/proposals/{proposal_id}/tally:
+ get:
+ summary: TallyResult queries the tally of a proposal vote.
+ operationId: CosmosGovV1Beta1TallyResult
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ tally:
+ description: tally defines the requested tally.
+ type: object
+ properties:
+ 'yes':
+ type: string
+ description: yes is the number of yes votes on a proposal.
+ abstain:
+ type: string
+ description: abstain is the number of abstain votes on a proposal.
+ 'no':
+ type: string
+ description: no is the number of no votes on a proposal.
+ no_with_veto:
+ type: string
+ description: >-
+ no_with_veto is the number of no with veto votes on a
+ proposal.
+ description: >-
+ QueryTallyResultResponse is the response type for the Query/Tally
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /cosmos/gov/v1beta1/proposals/{proposal_id}/votes:
+ get:
+ summary: Votes queries votes of a given proposal.
+ operationId: CosmosGovV1Beta1Votes
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ votes:
+ type: array
+ items:
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ voter:
+ type: string
+ description: voter is the voter address of the proposal.
+ option:
+ description: >-
+ Deprecated: Prefer to use `options` instead. This field
+ is set in queries
+
+ if and only if `len(options) == 1` and that option has
+ weight 1. In all
+
+ other cases, this field will default to
+ VOTE_OPTION_UNSPECIFIED.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ options:
+ type: array
+ items:
+ type: object
+ properties:
+ option:
+ description: >-
+ option defines the valid vote options, it must not
+ contain duplicate vote options.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ weight:
+ type: string
+ description: >-
+ weight is the vote weight associated with the vote
+ option.
+ description: >-
+ WeightedVoteOption defines a unit of vote for vote
+ split.
+
+
+ Since: cosmos-sdk 0.43
+ description: |-
+ options is the weighted vote options.
+
+ Since: cosmos-sdk 0.43
+ description: >-
+ Vote defines a vote on a governance proposal.
+
+ A Vote consists of a proposal ID, the voter, and the vote
+ option.
+ description: votes defines the queried votes.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryVotesResponse is the response type for the Query/Votes RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}:
+ get:
+ summary: Vote queries voted information based on proposalID, voterAddr.
+ operationId: CosmosGovV1Beta1Vote
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ vote:
+ description: vote defines the queried vote.
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal_id defines the unique id of the proposal.
+ voter:
+ type: string
+ description: voter is the voter address of the proposal.
+ option:
+ description: >-
+ Deprecated: Prefer to use `options` instead. This field is
+ set in queries
+
+ if and only if `len(options) == 1` and that option has
+ weight 1. In all
+
+ other cases, this field will default to
+ VOTE_OPTION_UNSPECIFIED.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ options:
+ type: array
+ items:
+ type: object
+ properties:
+ option:
+ description: >-
+ option defines the valid vote options, it must not
+ contain duplicate vote options.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ weight:
+ type: string
+ description: >-
+ weight is the vote weight associated with the vote
+ option.
+ description: >-
+ WeightedVoteOption defines a unit of vote for vote
+ split.
+
+
+ Since: cosmos-sdk 0.43
+ description: |-
+ options is the weighted vote options.
+
+ Since: cosmos-sdk 0.43
+ description: >-
+ QueryVoteResponse is the response type for the Query/Vote RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id defines the unique id of the proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: voter
+ description: voter defines the voter address for the proposals.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/group/v1/group_info/{group_id}:
+ get:
+ summary: GroupInfo queries group info based on group id.
+ operationId: CosmosGroupV1GroupInfo
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ info:
+ description: info is the GroupInfo of the group.
+ type: object
+ properties:
+ id:
+ type: string
+ format: uint64
+ description: id is the unique ID of the group.
+ admin:
+ type: string
+ description: admin is the account address of the group's admin.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata to attached to the
+ group.
+ version:
+ type: string
+ format: uint64
+ title: >-
+ version is used to track changes to a group's membership
+ structure that
+
+ would break existing proposals. Whenever any members
+ weight is changed,
+
+ or any member is added or removed this version is
+ incremented and will
+
+ cause proposals based on older versions of this group to
+ fail
+ total_weight:
+ type: string
+ description: total_weight is the sum of the group members' weights.
+ created_at:
+ type: string
+ format: date-time
+ description: >-
+ created_at is a timestamp specifying when a group was
+ created.
+ description: QueryGroupInfoResponse is the Query/GroupInfo response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: group_id
+ description: group_id is the unique ID of the group.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /cosmos/group/v1/group_members/{group_id}:
+ get:
+ summary: GroupMembers queries members of a group by group id.
+ operationId: CosmosGroupV1GroupMembers
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ members:
+ type: array
+ items:
+ type: object
+ properties:
+ group_id:
+ type: string
+ format: uint64
+ description: group_id is the unique ID of the group.
+ member:
+ description: member is the member data.
+ type: object
+ properties:
+ address:
+ type: string
+ description: address is the member's account address.
+ weight:
+ type: string
+ description: >-
+ weight is the member's voting weight that should be
+ greater than 0.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata attached to the
+ member.
+ added_at:
+ type: string
+ format: date-time
+ description: >-
+ added_at is a timestamp specifying when a member was
+ added.
+ description: >-
+ GroupMember represents the relationship between a group and
+ a member.
+ description: members are the members of the group with given group_id.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryGroupMembersResponse is the Query/GroupMembersResponse
+ response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: group_id
+ description: group_id is the unique ID of the group.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/group/v1/group_policies_by_admin/{admin}:
+ get:
+ summary: GroupPoliciesByAdmin queries group policies by admin address.
+ operationId: CosmosGroupV1GroupPoliciesByAdmin
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ group_policies:
+ type: array
+ items:
+ type: object
+ properties:
+ address:
+ type: string
+ description: address is the account address of group policy.
+ group_id:
+ type: string
+ format: uint64
+ description: group_id is the unique ID of the group.
+ admin:
+ type: string
+ description: admin is the account address of the group admin.
+ metadata:
+ type: string
+ title: >-
+ metadata is any arbitrary metadata attached to the group
+ policy.
+
+ the recommended format of the metadata is to be found
+ here:
+
+ https://docs.cosmos.network/v0.47/modules/group#decision-policy-1
+ version:
+ type: string
+ format: uint64
+ description: >-
+ version is used to track changes to a group's
+ GroupPolicyInfo structure that
+
+ would create a different result on a running proposal.
+ decision_policy:
+ description: >-
+ decision_policy specifies the group policy's decision
+ policy.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ created_at:
+ type: string
+ format: date-time
+ description: >-
+ created_at is a timestamp specifying when a group policy
+ was created.
+ description: >-
+ GroupPolicyInfo represents the high-level on-chain
+ information for a group policy.
+ description: >-
+ group_policies are the group policies info with provided
+ admin.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryGroupPoliciesByAdminResponse is the
+ Query/GroupPoliciesByAdmin response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: admin
+ description: admin is the admin address of the group policy.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/group/v1/group_policies_by_group/{group_id}:
+ get:
+ summary: GroupPoliciesByGroup queries group policies by group id.
+ operationId: CosmosGroupV1GroupPoliciesByGroup
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ group_policies:
+ type: array
+ items:
+ type: object
+ properties:
+ address:
+ type: string
+ description: address is the account address of group policy.
+ group_id:
+ type: string
+ format: uint64
+ description: group_id is the unique ID of the group.
+ admin:
+ type: string
+ description: admin is the account address of the group admin.
+ metadata:
+ type: string
+ title: >-
+ metadata is any arbitrary metadata attached to the group
+ policy.
+
+ the recommended format of the metadata is to be found
+ here:
+
+ https://docs.cosmos.network/v0.47/modules/group#decision-policy-1
+ version:
+ type: string
+ format: uint64
+ description: >-
+ version is used to track changes to a group's
+ GroupPolicyInfo structure that
+
+ would create a different result on a running proposal.
+ decision_policy:
+ description: >-
+ decision_policy specifies the group policy's decision
+ policy.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ created_at:
+ type: string
+ format: date-time
+ description: >-
+ created_at is a timestamp specifying when a group policy
+ was created.
+ description: >-
+ GroupPolicyInfo represents the high-level on-chain
+ information for a group policy.
+ description: >-
+ group_policies are the group policies info associated with the
+ provided group.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryGroupPoliciesByGroupResponse is the
+ Query/GroupPoliciesByGroup response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: group_id
+ description: group_id is the unique ID of the group policy's group.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/group/v1/group_policy_info/{address}:
+ get:
+ summary: >-
+ GroupPolicyInfo queries group policy info based on account address of
+ group policy.
+ operationId: CosmosGroupV1GroupPolicyInfo
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ info:
+ description: info is the GroupPolicyInfo of the group policy.
+ type: object
+ properties:
+ address:
+ type: string
+ description: address is the account address of group policy.
+ group_id:
+ type: string
+ format: uint64
+ description: group_id is the unique ID of the group.
+ admin:
+ type: string
+ description: admin is the account address of the group admin.
+ metadata:
+ type: string
+ title: >-
+ metadata is any arbitrary metadata attached to the group
+ policy.
+
+ the recommended format of the metadata is to be found
+ here:
+
+ https://docs.cosmos.network/v0.47/modules/group#decision-policy-1
+ version:
+ type: string
+ format: uint64
+ description: >-
+ version is used to track changes to a group's
+ GroupPolicyInfo structure that
+
+ would create a different result on a running proposal.
+ decision_policy:
+ description: >-
+ decision_policy specifies the group policy's decision
+ policy.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ created_at:
+ type: string
+ format: date-time
+ description: >-
+ created_at is a timestamp specifying when a group policy
+ was created.
+ description: >-
+ QueryGroupPolicyInfoResponse is the Query/GroupPolicyInfo response
+ type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: address
+ description: address is the account address of the group policy.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/group/v1/groups:
+ get:
+ summary: Groups queries all groups in state.
+ description: 'Since: cosmos-sdk 0.47.1'
+ operationId: CosmosGroupV1Groups
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ groups:
+ type: array
+ items:
+ type: object
+ properties:
+ id:
+ type: string
+ format: uint64
+ description: id is the unique ID of the group.
+ admin:
+ type: string
+ description: admin is the account address of the group's admin.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata to attached to the
+ group.
+ version:
+ type: string
+ format: uint64
+ title: >-
+ version is used to track changes to a group's membership
+ structure that
+
+ would break existing proposals. Whenever any members
+ weight is changed,
+
+ or any member is added or removed this version is
+ incremented and will
+
+ cause proposals based on older versions of this group to
+ fail
+ total_weight:
+ type: string
+ description: total_weight is the sum of the group members' weights.
+ created_at:
+ type: string
+ format: date-time
+ description: >-
+ created_at is a timestamp specifying when a group was
+ created.
+ description: >-
+ GroupInfo represents the high-level on-chain information for
+ a group.
+ description: '`groups` is all the groups present in state.'
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: |-
+ QueryGroupsResponse is the Query/Groups response type.
+
+ Since: cosmos-sdk 0.47.1
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/group/v1/groups_by_admin/{admin}:
+ get:
+ summary: GroupsByAdmin queries groups by admin address.
+ operationId: CosmosGroupV1GroupsByAdmin
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ groups:
+ type: array
+ items:
+ type: object
+ properties:
+ id:
+ type: string
+ format: uint64
+ description: id is the unique ID of the group.
+ admin:
+ type: string
+ description: admin is the account address of the group's admin.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata to attached to the
+ group.
+ version:
+ type: string
+ format: uint64
+ title: >-
+ version is used to track changes to a group's membership
+ structure that
+
+ would break existing proposals. Whenever any members
+ weight is changed,
+
+ or any member is added or removed this version is
+ incremented and will
+
+ cause proposals based on older versions of this group to
+ fail
+ total_weight:
+ type: string
+ description: total_weight is the sum of the group members' weights.
+ created_at:
+ type: string
+ format: date-time
+ description: >-
+ created_at is a timestamp specifying when a group was
+ created.
+ description: >-
+ GroupInfo represents the high-level on-chain information for
+ a group.
+ description: groups are the groups info with the provided admin.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryGroupsByAdminResponse is the Query/GroupsByAdminResponse
+ response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: admin
+ description: admin is the account address of a group's admin.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/group/v1/groups_by_member/{address}:
+ get:
+ summary: GroupsByMember queries groups by member address.
+ operationId: CosmosGroupV1GroupsByMember
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ groups:
+ type: array
+ items:
+ type: object
+ properties:
+ id:
+ type: string
+ format: uint64
+ description: id is the unique ID of the group.
+ admin:
+ type: string
+ description: admin is the account address of the group's admin.
+ metadata:
+ type: string
+ description: >-
+ metadata is any arbitrary metadata to attached to the
+ group.
+ version:
+ type: string
+ format: uint64
+ title: >-
+ version is used to track changes to a group's membership
+ structure that
+
+ would break existing proposals. Whenever any members
+ weight is changed,
+
+ or any member is added or removed this version is
+ incremented and will
+
+ cause proposals based on older versions of this group to
+ fail
+ total_weight:
+ type: string
+ description: total_weight is the sum of the group members' weights.
+ created_at:
+ type: string
+ format: date-time
+ description: >-
+ created_at is a timestamp specifying when a group was
+ created.
+ description: >-
+ GroupInfo represents the high-level on-chain information for
+ a group.
+ description: groups are the groups info with the provided group member.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryGroupsByMemberResponse is the Query/GroupsByMember response
+ type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: address
+ description: address is the group member address.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/group/v1/proposal/{proposal_id}:
+ get:
+ summary: Proposal queries a proposal based on proposal id.
+ operationId: CosmosGroupV1Proposal
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ proposal:
+ description: proposal is the proposal info.
+ type: object
+ properties:
+ id:
+ type: string
+ format: uint64
+ description: id is the unique id of the proposal.
+ group_policy_address:
+ type: string
+ description: >-
+ group_policy_address is the account address of group
+ policy.
+ metadata:
+ type: string
+ title: >-
+ metadata is any arbitrary metadata attached to the
+ proposal.
+
+ the recommended format of the metadata is to be found
+ here:
+
+ https://docs.cosmos.network/v0.47/modules/group#proposal-4
+ proposers:
+ type: array
+ items:
+ type: string
+ description: proposers are the account addresses of the proposers.
+ submit_time:
+ type: string
+ format: date-time
+ description: >-
+ submit_time is a timestamp specifying when a proposal was
+ submitted.
+ group_version:
+ type: string
+ format: uint64
+ description: >-
+ group_version tracks the version of the group at proposal
+ submission.
+
+ This field is here for informational purposes only.
+ group_policy_version:
+ type: string
+ format: uint64
+ description: >-
+ group_policy_version tracks the version of the group
+ policy at proposal submission.
+
+ When a decision policy is changed, existing proposals from
+ previous policy
+
+ versions will become invalid with the `ABORTED` status.
+
+ This field is here for informational purposes only.
+ status:
+ description: >-
+ status represents the high level position in the life
+ cycle of the proposal. Initial value is Submitted.
+ type: string
+ enum:
+ - PROPOSAL_STATUS_UNSPECIFIED
+ - PROPOSAL_STATUS_SUBMITTED
+ - PROPOSAL_STATUS_ACCEPTED
+ - PROPOSAL_STATUS_REJECTED
+ - PROPOSAL_STATUS_ABORTED
+ - PROPOSAL_STATUS_WITHDRAWN
+ default: PROPOSAL_STATUS_UNSPECIFIED
+ final_tally_result:
+ description: >-
+ final_tally_result contains the sums of all weighted votes
+ for this
+
+ proposal for each vote option. It is empty at submission,
+ and only
+
+ populated after tallying, at voting period end or at
+ proposal execution,
+
+ whichever happens first.
+ type: object
+ properties:
+ yes_count:
+ type: string
+ description: yes_count is the weighted sum of yes votes.
+ abstain_count:
+ type: string
+ description: abstain_count is the weighted sum of abstainers.
+ no_count:
+ type: string
+ description: no_count is the weighted sum of no votes.
+ no_with_veto_count:
+ type: string
+ description: no_with_veto_count is the weighted sum of veto.
+ voting_period_end:
+ type: string
+ format: date-time
+ description: >-
+ voting_period_end is the timestamp before which voting
+ must be done.
+
+ Unless a successful MsgExec is called before (to execute a
+ proposal whose
+
+ tally is successful before the voting period ends),
+ tallying will be done
+
+ at this point, and the `final_tally_result`and `status`
+ fields will be
+
+ accordingly updated.
+ executor_result:
+ description: >-
+ executor_result is the final result of the proposal
+ execution. Initial value is NotRun.
+ type: string
+ enum:
+ - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
+ - PROPOSAL_EXECUTOR_RESULT_NOT_RUN
+ - PROPOSAL_EXECUTOR_RESULT_SUCCESS
+ - PROPOSAL_EXECUTOR_RESULT_FAILURE
+ default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
+ messages:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ messages is a list of `sdk.Msg`s that will be executed if
+ the proposal passes.
+ title:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: title is the title of the proposal
+ summary:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: summary is a short summary of the proposal
+ description: QueryProposalResponse is the Query/Proposal response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id is the unique ID of a proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /cosmos/group/v1/proposals/{proposal_id}/tally:
+ get:
+ summary: >-
+ TallyResult returns the tally result of a proposal. If the proposal is
+
+ still in voting period, then this query computes the current tally
+ state,
+
+ which might not be final. On the other hand, if the proposal is final,
+
+ then it simply returns the `final_tally_result` state stored in the
+
+ proposal itself.
+ operationId: CosmosGroupV1TallyResult
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ tally:
+ description: tally defines the requested tally.
+ type: object
+ properties:
+ yes_count:
+ type: string
+ description: yes_count is the weighted sum of yes votes.
+ abstain_count:
+ type: string
+ description: abstain_count is the weighted sum of abstainers.
+ no_count:
+ type: string
+ description: no_count is the weighted sum of no votes.
+ no_with_veto_count:
+ type: string
+ description: no_with_veto_count is the weighted sum of veto.
+ description: QueryTallyResultResponse is the Query/TallyResult response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id is the unique id of a proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /cosmos/group/v1/proposals_by_group_policy/{address}:
+ get:
+ summary: >-
+ ProposalsByGroupPolicy queries proposals based on account address of
+ group policy.
+ operationId: CosmosGroupV1ProposalsByGroupPolicy
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ proposals:
+ type: array
+ items:
+ type: object
+ properties:
+ id:
+ type: string
+ format: uint64
+ description: id is the unique id of the proposal.
+ group_policy_address:
+ type: string
+ description: >-
+ group_policy_address is the account address of group
+ policy.
+ metadata:
+ type: string
+ title: >-
+ metadata is any arbitrary metadata attached to the
+ proposal.
+
+ the recommended format of the metadata is to be found
+ here:
+
+ https://docs.cosmos.network/v0.47/modules/group#proposal-4
+ proposers:
+ type: array
+ items:
+ type: string
+ description: proposers are the account addresses of the proposers.
+ submit_time:
+ type: string
+ format: date-time
+ description: >-
+ submit_time is a timestamp specifying when a proposal
+ was submitted.
+ group_version:
+ type: string
+ format: uint64
+ description: >-
+ group_version tracks the version of the group at
+ proposal submission.
+
+ This field is here for informational purposes only.
+ group_policy_version:
+ type: string
+ format: uint64
+ description: >-
+ group_policy_version tracks the version of the group
+ policy at proposal submission.
+
+ When a decision policy is changed, existing proposals
+ from previous policy
+
+ versions will become invalid with the `ABORTED` status.
+
+ This field is here for informational purposes only.
+ status:
+ description: >-
+ status represents the high level position in the life
+ cycle of the proposal. Initial value is Submitted.
+ type: string
+ enum:
+ - PROPOSAL_STATUS_UNSPECIFIED
+ - PROPOSAL_STATUS_SUBMITTED
+ - PROPOSAL_STATUS_ACCEPTED
+ - PROPOSAL_STATUS_REJECTED
+ - PROPOSAL_STATUS_ABORTED
+ - PROPOSAL_STATUS_WITHDRAWN
+ default: PROPOSAL_STATUS_UNSPECIFIED
+ final_tally_result:
+ description: >-
+ final_tally_result contains the sums of all weighted
+ votes for this
+
+ proposal for each vote option. It is empty at
+ submission, and only
+
+ populated after tallying, at voting period end or at
+ proposal execution,
+
+ whichever happens first.
+ type: object
+ properties:
+ yes_count:
+ type: string
+ description: yes_count is the weighted sum of yes votes.
+ abstain_count:
+ type: string
+ description: abstain_count is the weighted sum of abstainers.
+ no_count:
+ type: string
+ description: no_count is the weighted sum of no votes.
+ no_with_veto_count:
+ type: string
+ description: no_with_veto_count is the weighted sum of veto.
+ voting_period_end:
+ type: string
+ format: date-time
+ description: >-
+ voting_period_end is the timestamp before which voting
+ must be done.
+
+ Unless a successful MsgExec is called before (to execute
+ a proposal whose
+
+ tally is successful before the voting period ends),
+ tallying will be done
+
+ at this point, and the `final_tally_result`and `status`
+ fields will be
+
+ accordingly updated.
+ executor_result:
+ description: >-
+ executor_result is the final result of the proposal
+ execution. Initial value is NotRun.
+ type: string
+ enum:
+ - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
+ - PROPOSAL_EXECUTOR_RESULT_NOT_RUN
+ - PROPOSAL_EXECUTOR_RESULT_SUCCESS
+ - PROPOSAL_EXECUTOR_RESULT_FAILURE
+ default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
+ messages:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain
+ at least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should
+ be in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However,
+ for URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions
+ as follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently
+ available in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods
+ of the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL
+ and the unpack
+
+ methods only use the fully qualified type name after
+ the last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ messages is a list of `sdk.Msg`s that will be executed
+ if the proposal passes.
+ title:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: title is the title of the proposal
+ summary:
+ type: string
+ description: 'Since: cosmos-sdk 0.47'
+ title: summary is a short summary of the proposal
+ description: >-
+ Proposal defines a group proposal. Any member of a group can
+ submit a proposal
+
+ for a group policy to decide upon.
+
+ A proposal consists of a set of `sdk.Msg`s that will be
+ executed if the proposal
+
+ passes as well as some optional metadata associated with the
+ proposal.
+ description: proposals are the proposals with given group policy.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryProposalsByGroupPolicyResponse is the
+ Query/ProposalByGroupPolicy response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: address
+ description: >-
+ address is the account address of the group policy related to
+ proposals.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/group/v1/vote_by_proposal_voter/{proposal_id}/{voter}:
+ get:
+ summary: VoteByProposalVoter queries a vote by proposal id and voter.
+ operationId: CosmosGroupV1VoteByProposalVoter
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ vote:
+ description: vote is the vote with given proposal_id and voter.
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal is the unique ID of the proposal.
+ voter:
+ type: string
+ description: voter is the account address of the voter.
+ option:
+ description: option is the voter's choice on the proposal.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ metadata:
+ type: string
+ description: metadata is any arbitrary metadata attached to the vote.
+ submit_time:
+ type: string
+ format: date-time
+ description: submit_time is the timestamp when the vote was submitted.
+ description: >-
+ QueryVoteByProposalVoterResponse is the Query/VoteByProposalVoter
+ response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id is the unique ID of a proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: voter
+ description: voter is a proposal voter account address.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/group/v1/votes_by_proposal/{proposal_id}:
+ get:
+ summary: VotesByProposal queries a vote by proposal id.
+ operationId: CosmosGroupV1VotesByProposal
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ votes:
+ type: array
+ items:
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal is the unique ID of the proposal.
+ voter:
+ type: string
+ description: voter is the account address of the voter.
+ option:
+ description: option is the voter's choice on the proposal.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ metadata:
+ type: string
+ description: metadata is any arbitrary metadata attached to the vote.
+ submit_time:
+ type: string
+ format: date-time
+ description: >-
+ submit_time is the timestamp when the vote was
+ submitted.
+ description: Vote represents a vote for a proposal.
+ description: votes are the list of votes for given proposal_id.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryVotesByProposalResponse is the Query/VotesByProposal response
+ type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: proposal_id
+ description: proposal_id is the unique ID of a proposal.
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/group/v1/votes_by_voter/{voter}:
+ get:
+ summary: VotesByVoter queries a vote by voter.
+ operationId: CosmosGroupV1VotesByVoter
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ votes:
+ type: array
+ items:
+ type: object
+ properties:
+ proposal_id:
+ type: string
+ format: uint64
+ description: proposal is the unique ID of the proposal.
+ voter:
+ type: string
+ description: voter is the account address of the voter.
+ option:
+ description: option is the voter's choice on the proposal.
+ type: string
+ enum:
+ - VOTE_OPTION_UNSPECIFIED
+ - VOTE_OPTION_YES
+ - VOTE_OPTION_ABSTAIN
+ - VOTE_OPTION_NO
+ - VOTE_OPTION_NO_WITH_VETO
+ default: VOTE_OPTION_UNSPECIFIED
+ metadata:
+ type: string
+ description: metadata is any arbitrary metadata attached to the vote.
+ submit_time:
+ type: string
+ format: date-time
+ description: >-
+ submit_time is the timestamp when the vote was
+ submitted.
+ description: Vote represents a vote for a proposal.
+ description: votes are the list of votes by given voter.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: QueryVotesByVoterResponse is the Query/VotesByVoter response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: voter
+ description: voter is a proposal voter account address.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/mint/v1beta1/annual_provisions:
+ get:
+ summary: AnnualProvisions current minting annual provisions value.
+ operationId: CosmosMintV1Beta1AnnualProvisions
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ annual_provisions:
+ type: string
+ format: byte
+ description: >-
+ annual_provisions is the current minting annual provisions
+ value.
+ description: |-
+ QueryAnnualProvisionsResponse is the response type for the
+ Query/AnnualProvisions RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/mint/v1beta1/inflation:
+ get:
+ summary: Inflation returns the current minting inflation value.
+ operationId: CosmosMintV1Beta1Inflation
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ inflation:
+ type: string
+ format: byte
+ description: inflation is the current minting inflation value.
+ description: >-
+ QueryInflationResponse is the response type for the
+ Query/Inflation RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/mint/v1beta1/params:
+ get:
+ summary: Params returns the total set of minting parameters.
+ operationId: CosmosMintV1Beta1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: params defines the parameters of the module.
+ type: object
+ properties:
+ mint_denom:
+ type: string
+ title: type of coin to mint
+ inflation_rate_change:
+ type: string
+ title: maximum annual change in inflation rate
+ inflation_max:
+ type: string
+ title: maximum inflation rate
+ inflation_min:
+ type: string
+ title: minimum inflation rate
+ goal_bonded:
+ type: string
+ title: goal of percent bonded atoms
+ blocks_per_year:
+ type: string
+ format: uint64
+ title: expected blocks per year
+ description: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/nft/v1beta1/balance/{owner}/{class_id}:
+ get:
+ summary: >-
+ Balance queries the number of NFTs of a given class owned by the owner,
+ same as balanceOf in ERC721
+ operationId: CosmosNftV1Beta1Balance
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ amount:
+ type: string
+ format: uint64
+ title: >-
+ amount is the number of all NFTs of a given class owned by the
+ owner
+ title: >-
+ QueryBalanceResponse is the response type for the Query/Balance
+ RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: owner
+ description: owner is the owner address of the nft
+ in: path
+ required: true
+ type: string
+ - name: class_id
+ description: class_id associated with the nft
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/nft/v1beta1/classes:
+ get:
+ summary: Classes queries all NFT classes
+ operationId: CosmosNftV1Beta1Classes
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ classes:
+ type: array
+ items:
+ type: object
+ properties:
+ id:
+ type: string
+ title: >-
+ id defines the unique identifier of the NFT
+ classification, similar to the contract address of
+ ERC721
+ name:
+ type: string
+ title: >-
+ name defines the human-readable name of the NFT
+ classification. Optional
+ symbol:
+ type: string
+ title: >-
+ symbol is an abbreviated name for nft classification.
+ Optional
+ description:
+ type: string
+ title: >-
+ description is a brief description of nft
+ classification. Optional
+ uri:
+ type: string
+ title: >-
+ uri for the class metadata stored off chain. It can
+ define schema for Class and NFT `Data` attributes.
+ Optional
+ uri_hash:
+ type: string
+ title: >-
+ uri_hash is a hash of the document pointed by uri.
+ Optional
+ data:
+ title: >-
+ data is the app specific metadata of the NFT class.
+ Optional
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: Class defines the class of the nft type.
+ description: class defines the class of the nft type.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ title: >-
+ QueryClassesResponse is the response type for the Query/Classes
+ RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/nft/v1beta1/classes/{class_id}:
+ get:
+ summary: Class queries an NFT class based on its id
+ operationId: CosmosNftV1Beta1Class
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ class:
+ description: class defines the class of the nft type.
+ type: object
+ properties:
+ id:
+ type: string
+ title: >-
+ id defines the unique identifier of the NFT
+ classification, similar to the contract address of ERC721
+ name:
+ type: string
+ title: >-
+ name defines the human-readable name of the NFT
+ classification. Optional
+ symbol:
+ type: string
+ title: >-
+ symbol is an abbreviated name for nft classification.
+ Optional
+ description:
+ type: string
+ title: >-
+ description is a brief description of nft classification.
+ Optional
+ uri:
+ type: string
+ title: >-
+ uri for the class metadata stored off chain. It can define
+ schema for Class and NFT `Data` attributes. Optional
+ uri_hash:
+ type: string
+ title: >-
+ uri_hash is a hash of the document pointed by uri.
+ Optional
+ data:
+ title: >-
+ data is the app specific metadata of the NFT class.
+ Optional
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ title: >-
+ QueryClassResponse is the response type for the Query/Class RPC
+ method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: class_id
+ description: class_id associated with the nft
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/nft/v1beta1/nfts:
+ get:
+ summary: >-
+ NFTs queries all NFTs of a given class or owner,choose at least one of
+ the two, similar to tokenByIndex in
+
+ ERC721Enumerable
+ operationId: CosmosNftV1Beta1NFTs
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ nfts:
+ type: array
+ items:
+ type: object
+ properties:
+ class_id:
+ type: string
+ title: >-
+ class_id associated with the NFT, similar to the
+ contract address of ERC721
+ id:
+ type: string
+ title: id is a unique identifier of the NFT
+ uri:
+ type: string
+ title: uri for the NFT metadata stored off chain
+ uri_hash:
+ type: string
+ title: uri_hash is a hash of the document pointed by uri
+ data:
+ title: data is an app specific data of the NFT. Optional
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: NFT defines the NFT.
+ title: NFT defines the NFT
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ title: >-
+ QueryNFTsResponse is the response type for the Query/NFTs RPC
+ methods
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: class_id
+ description: class_id associated with the nft
+ in: query
+ required: false
+ type: string
+ - name: owner
+ description: owner is the owner address of the nft
+ in: query
+ required: false
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/nft/v1beta1/nfts/{class_id}/{id}:
+ get:
+ summary: NFT queries an NFT based on its class and id.
+ operationId: CosmosNftV1Beta1NFT
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ nft:
+ title: owner is the owner address of the nft
+ type: object
+ properties:
+ class_id:
+ type: string
+ title: >-
+ class_id associated with the NFT, similar to the contract
+ address of ERC721
+ id:
+ type: string
+ title: id is a unique identifier of the NFT
+ uri:
+ type: string
+ title: uri for the NFT metadata stored off chain
+ uri_hash:
+ type: string
+ title: uri_hash is a hash of the document pointed by uri
+ data:
+ title: data is an app specific data of the NFT. Optional
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: NFT defines the NFT.
+ title: QueryNFTResponse is the response type for the Query/NFT RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: class_id
+ description: class_id associated with the nft
+ in: path
+ required: true
+ type: string
+ - name: id
+ description: id is a unique identifier of the NFT
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/nft/v1beta1/owner/{class_id}/{id}:
+ get:
+ summary: >-
+ Owner queries the owner of the NFT based on its class and id, same as
+ ownerOf in ERC721
+ operationId: CosmosNftV1Beta1Owner
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ owner:
+ type: string
+ title: owner is the owner address of the nft
+ title: >-
+ QueryOwnerResponse is the response type for the Query/Owner RPC
+ method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: class_id
+ description: class_id associated with the nft
+ in: path
+ required: true
+ type: string
+ - name: id
+ description: id is a unique identifier of the NFT
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/nft/v1beta1/supply/{class_id}:
+ get:
+ summary: >-
+ Supply queries the number of NFTs from the given class, same as
+ totalSupply of ERC721.
+ operationId: CosmosNftV1Beta1Supply
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ amount:
+ type: string
+ format: uint64
+ title: amount is the number of all NFTs from the given class
+ title: >-
+ QuerySupplyResponse is the response type for the Query/Supply RPC
+ method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: class_id
+ description: class_id associated with the nft
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/params/v1beta1/params:
+ get:
+ summary: |-
+ Params queries a specific parameter of a module, given its subspace and
+ key.
+ operationId: CosmosParamsV1Beta1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ param:
+ description: param defines the queried parameter.
+ type: object
+ properties:
+ subspace:
+ type: string
+ key:
+ type: string
+ value:
+ type: string
+ description: >-
+ QueryParamsResponse is response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: subspace
+ description: subspace defines the module to query the parameter for.
+ in: query
+ required: false
+ type: string
+ - name: key
+ description: key defines the key of the parameter in the subspace.
+ in: query
+ required: false
+ type: string
+ tags:
+ - Query
+ /cosmos/params/v1beta1/subspaces:
+ get:
+ summary: >-
+ Subspaces queries for all registered subspaces and all keys for a
+ subspace.
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosParamsV1Beta1Subspaces
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ subspaces:
+ type: array
+ items:
+ type: object
+ properties:
+ subspace:
+ type: string
+ keys:
+ type: array
+ items:
+ type: string
+ description: >-
+ Subspace defines a parameter subspace name and all the keys
+ that exist for
+
+ the subspace.
+
+
+ Since: cosmos-sdk 0.46
+ description: >-
+ QuerySubspacesResponse defines the response types for querying for
+ all
+
+ registered subspaces and all keys for a subspace.
+
+
+ Since: cosmos-sdk 0.46
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/slashing/v1beta1/params:
+ get:
+ summary: Params queries the parameters of slashing module
+ operationId: CosmosSlashingV1Beta1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ type: object
+ properties:
+ signed_blocks_window:
+ type: string
+ format: int64
+ min_signed_per_window:
+ type: string
+ format: byte
+ downtime_jail_duration:
+ type: string
+ slash_fraction_double_sign:
+ type: string
+ format: byte
+ slash_fraction_downtime:
+ type: string
+ format: byte
+ description: >-
+ Params represents the parameters used for by the slashing
+ module.
+ title: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /cosmos/slashing/v1beta1/signing_infos:
+ get:
+ summary: SigningInfos queries signing info of all validators
+ operationId: CosmosSlashingV1Beta1SigningInfos
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ info:
+ type: array
+ items:
+ type: object
+ properties:
+ address:
+ type: string
+ start_height:
+ type: string
+ format: int64
+ title: >-
+ Height at which validator was first a candidate OR was
+ unjailed
+ index_offset:
+ type: string
+ format: int64
+ description: >-
+ Index which is incremented each time the validator was a
+ bonded
+
+ in a block and may have signed a precommit or not. This
+ in conjunction with the
+
+ `SignedBlocksWindow` param determines the index in the
+ `MissedBlocksBitArray`.
+ jailed_until:
+ type: string
+ format: date-time
+ description: >-
+ Timestamp until which the validator is jailed due to
+ liveness downtime.
+ tombstoned:
+ type: boolean
+ description: >-
+ Whether or not a validator has been tombstoned (killed
+ out of validator set). It is set
+
+ once the validator commits an equivocation or for any
+ other configured misbehiavor.
+ missed_blocks_counter:
+ type: string
+ format: int64
+ description: >-
+ A counter kept to avoid unnecessary array reads.
+
+ Note that `Sum(MissedBlocksBitArray)` always equals
+ `MissedBlocksCounter`.
+ description: >-
+ ValidatorSigningInfo defines a validator's signing info for
+ monitoring their
+
+ liveness activity.
+ title: info is the signing info of all validators
+ pagination:
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ PageResponse is to be embedded in gRPC response messages where
+ the
+
+ corresponding request message has used PageRequest.
+
+ message SomeResponse {
+ repeated Bar results = 1;
+ PageResponse page = 2;
+ }
+ title: >-
+ QuerySigningInfosResponse is the response type for the
+ Query/SigningInfos RPC
+
+ method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/slashing/v1beta1/signing_infos/{cons_address}:
+ get:
+ summary: SigningInfo queries the signing info of given cons address
+ operationId: CosmosSlashingV1Beta1SigningInfo
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ val_signing_info:
+ title: >-
+ val_signing_info is the signing info of requested val cons
+ address
+ type: object
+ properties:
+ address:
+ type: string
+ start_height:
+ type: string
+ format: int64
+ title: >-
+ Height at which validator was first a candidate OR was
+ unjailed
+ index_offset:
+ type: string
+ format: int64
+ description: >-
+ Index which is incremented each time the validator was a
+ bonded
+
+ in a block and may have signed a precommit or not. This in
+ conjunction with the
+
+ `SignedBlocksWindow` param determines the index in the
+ `MissedBlocksBitArray`.
+ jailed_until:
+ type: string
+ format: date-time
+ description: >-
+ Timestamp until which the validator is jailed due to
+ liveness downtime.
+ tombstoned:
+ type: boolean
+ description: >-
+ Whether or not a validator has been tombstoned (killed out
+ of validator set). It is set
+
+ once the validator commits an equivocation or for any
+ other configured misbehiavor.
+ missed_blocks_counter:
+ type: string
+ format: int64
+ description: >-
+ A counter kept to avoid unnecessary array reads.
+
+ Note that `Sum(MissedBlocksBitArray)` always equals
+ `MissedBlocksCounter`.
+ description: >-
+ ValidatorSigningInfo defines a validator's signing info for
+ monitoring their
+
+ liveness activity.
+ title: >-
+ QuerySigningInfoResponse is the response type for the
+ Query/SigningInfo RPC
+
+ method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ parameters:
+ - name: cons_address
+ description: cons_address is the address to query signing info of
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/delegations/{delegator_addr}:
+ get:
+ summary: >-
+ DelegatorDelegations queries all delegations of a given delegator
+ address.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosStakingV1Beta1DelegatorDelegations
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ delegation_responses:
+ type: array
+ items:
+ type: object
+ properties:
+ delegation:
+ type: object
+ properties:
+ delegator_address:
+ type: string
+ description: >-
+ delegator_address is the bech32-encoded address of
+ the delegator.
+ validator_address:
+ type: string
+ description: >-
+ validator_address is the bech32-encoded address of
+ the validator.
+ shares:
+ type: string
+ description: shares define the delegation shares received.
+ description: >-
+ Delegation represents the bond with tokens held by an
+ account. It is
+
+ owned by one delegator, and is associated with the
+ voting power of one
+
+ validator.
+ balance:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: >-
+ DelegationResponse is equivalent to Delegation except that
+ it contains a
+
+ balance in addition to shares which is more suitable for
+ client responses.
+ description: >-
+ delegation_responses defines all the delegations' info of a
+ delegator.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: |-
+ QueryDelegatorDelegationsResponse is response type for the
+ Query/DelegatorDelegations RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: delegator_addr
+ description: delegator_addr defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations:
+ get:
+ summary: Redelegations queries redelegations of given address.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosStakingV1Beta1Redelegations
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ redelegation_responses:
+ type: array
+ items:
+ type: object
+ properties:
+ redelegation:
+ type: object
+ properties:
+ delegator_address:
+ type: string
+ description: >-
+ delegator_address is the bech32-encoded address of
+ the delegator.
+ validator_src_address:
+ type: string
+ description: >-
+ validator_src_address is the validator redelegation
+ source operator address.
+ validator_dst_address:
+ type: string
+ description: >-
+ validator_dst_address is the validator redelegation
+ destination operator address.
+ entries:
+ type: array
+ items:
+ type: object
+ properties:
+ creation_height:
+ type: string
+ format: int64
+ description: >-
+ creation_height defines the height which the
+ redelegation took place.
+ completion_time:
+ type: string
+ format: date-time
+ description: >-
+ completion_time defines the unix time for
+ redelegation completion.
+ initial_balance:
+ type: string
+ description: >-
+ initial_balance defines the initial balance
+ when redelegation started.
+ shares_dst:
+ type: string
+ description: >-
+ shares_dst is the amount of
+ destination-validator shares created by
+ redelegation.
+ unbonding_id:
+ type: string
+ format: uint64
+ title: >-
+ Incrementing id that uniquely identifies this
+ entry
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ Strictly positive if this entry's unbonding
+ has been stopped by external modules
+ description: >-
+ RedelegationEntry defines a redelegation object
+ with relevant metadata.
+ description: |-
+ entries are the redelegation entries.
+
+ redelegation entries
+ description: >-
+ Redelegation contains the list of a particular
+ delegator's redelegating bonds
+
+ from a particular source validator to a particular
+ destination validator.
+ entries:
+ type: array
+ items:
+ type: object
+ properties:
+ redelegation_entry:
+ type: object
+ properties:
+ creation_height:
+ type: string
+ format: int64
+ description: >-
+ creation_height defines the height which the
+ redelegation took place.
+ completion_time:
+ type: string
+ format: date-time
+ description: >-
+ completion_time defines the unix time for
+ redelegation completion.
+ initial_balance:
+ type: string
+ description: >-
+ initial_balance defines the initial balance
+ when redelegation started.
+ shares_dst:
+ type: string
+ description: >-
+ shares_dst is the amount of
+ destination-validator shares created by
+ redelegation.
+ unbonding_id:
+ type: string
+ format: uint64
+ title: >-
+ Incrementing id that uniquely identifies this
+ entry
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ Strictly positive if this entry's unbonding
+ has been stopped by external modules
+ description: >-
+ RedelegationEntry defines a redelegation object
+ with relevant metadata.
+ balance:
+ type: string
+ description: >-
+ RedelegationEntryResponse is equivalent to a
+ RedelegationEntry except that it
+
+ contains a balance in addition to shares which is more
+ suitable for client
+
+ responses.
+ description: >-
+ RedelegationResponse is equivalent to a Redelegation except
+ that its entries
+
+ contain a balance in addition to shares which is more
+ suitable for client
+
+ responses.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryRedelegationsResponse is response type for the
+ Query/Redelegations RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: delegator_addr
+ description: delegator_addr defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: src_validator_addr
+ description: src_validator_addr defines the validator address to redelegate from.
+ in: query
+ required: false
+ type: string
+ - name: dst_validator_addr
+ description: dst_validator_addr defines the validator address to redelegate to.
+ in: query
+ required: false
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations:
+ get:
+ summary: >-
+ DelegatorUnbondingDelegations queries all unbonding delegations of a
+ given
+
+ delegator address.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosStakingV1Beta1DelegatorUnbondingDelegations
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ unbonding_responses:
+ type: array
+ items:
+ type: object
+ properties:
+ delegator_address:
+ type: string
+ description: >-
+ delegator_address is the bech32-encoded address of the
+ delegator.
+ validator_address:
+ type: string
+ description: >-
+ validator_address is the bech32-encoded address of the
+ validator.
+ entries:
+ type: array
+ items:
+ type: object
+ properties:
+ creation_height:
+ type: string
+ format: int64
+ description: >-
+ creation_height is the height which the unbonding
+ took place.
+ completion_time:
+ type: string
+ format: date-time
+ description: >-
+ completion_time is the unix time for unbonding
+ completion.
+ initial_balance:
+ type: string
+ description: >-
+ initial_balance defines the tokens initially
+ scheduled to receive at completion.
+ balance:
+ type: string
+ description: >-
+ balance defines the tokens to receive at
+ completion.
+ unbonding_id:
+ type: string
+ format: uint64
+ title: >-
+ Incrementing id that uniquely identifies this
+ entry
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ Strictly positive if this entry's unbonding has
+ been stopped by external modules
+ description: >-
+ UnbondingDelegationEntry defines an unbonding object
+ with relevant metadata.
+ description: |-
+ entries are the unbonding delegation entries.
+
+ unbonding delegation entries
+ description: >-
+ UnbondingDelegation stores all of a single delegator's
+ unbonding bonds
+
+ for a single validator in an time-ordered list.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryUnbondingDelegatorDelegationsResponse is response type for
+ the
+
+ Query/UnbondingDelegatorDelegations RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: delegator_addr
+ description: delegator_addr defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators:
+ get:
+ summary: |-
+ DelegatorValidators queries all validators info for given delegator
+ address.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosStakingV1Beta1DelegatorValidators
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ validators:
+ type: array
+ items:
+ type: object
+ properties:
+ operator_address:
+ type: string
+ description: >-
+ operator_address defines the address of the validator's
+ operator; bech encoded in JSON.
+ consensus_pubkey:
+ description: >-
+ consensus_pubkey is the consensus public key of the
+ validator, as a Protobuf Any.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ jailed:
+ type: boolean
+ description: >-
+ jailed defined whether the validator has been jailed
+ from bonded status or not.
+ status:
+ description: >-
+ status is the validator status
+ (bonded/unbonding/unbonded).
+ type: string
+ enum:
+ - BOND_STATUS_UNSPECIFIED
+ - BOND_STATUS_UNBONDED
+ - BOND_STATUS_UNBONDING
+ - BOND_STATUS_BONDED
+ default: BOND_STATUS_UNSPECIFIED
+ tokens:
+ type: string
+ description: >-
+ tokens define the delegated tokens (incl.
+ self-delegation).
+ delegator_shares:
+ type: string
+ description: >-
+ delegator_shares defines total shares issued to a
+ validator's delegators.
+ description:
+ description: >-
+ description defines the description terms for the
+ validator.
+ type: object
+ properties:
+ moniker:
+ type: string
+ description: >-
+ moniker defines a human-readable name for the
+ validator.
+ identity:
+ type: string
+ description: >-
+ identity defines an optional identity signature (ex.
+ UPort or Keybase).
+ website:
+ type: string
+ description: website defines an optional website link.
+ security_contact:
+ type: string
+ description: >-
+ security_contact defines an optional email for
+ security contact.
+ details:
+ type: string
+ description: details define other optional details.
+ unbonding_height:
+ type: string
+ format: int64
+ description: >-
+ unbonding_height defines, if unbonding, the height at
+ which this validator has begun unbonding.
+ unbonding_time:
+ type: string
+ format: date-time
+ description: >-
+ unbonding_time defines, if unbonding, the min time for
+ the validator to complete unbonding.
+ commission:
+ description: commission defines the commission parameters.
+ type: object
+ properties:
+ commission_rates:
+ description: >-
+ commission_rates defines the initial commission
+ rates to be used for creating a validator.
+ type: object
+ properties:
+ rate:
+ type: string
+ description: >-
+ rate is the commission rate charged to
+ delegators, as a fraction.
+ max_rate:
+ type: string
+ description: >-
+ max_rate defines the maximum commission rate
+ which validator can ever charge, as a fraction.
+ max_change_rate:
+ type: string
+ description: >-
+ max_change_rate defines the maximum daily
+ increase of the validator commission, as a
+ fraction.
+ update_time:
+ type: string
+ format: date-time
+ description: >-
+ update_time is the last time the commission rate was
+ changed.
+ min_self_delegation:
+ type: string
+ description: >-
+ min_self_delegation is the validator's self declared
+ minimum self delegation.
+
+
+ Since: cosmos-sdk 0.46
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ strictly positive if this validator's unbonding has been
+ stopped by external modules
+ unbonding_ids:
+ type: array
+ items:
+ type: string
+ format: uint64
+ title: >-
+ list of unbonding ids, each uniquely identifing an
+ unbonding of this validator
+ description: >-
+ Validator defines a validator, together with the total
+ amount of the
+
+ Validator's bond shares and their exchange rate to coins.
+ Slashing results in
+
+ a decrease in the exchange rate, allowing correct
+ calculation of future
+
+ undelegations without iterating over delegators. When coins
+ are delegated to
+
+ this validator, the validator is credited with a delegation
+ whose number of
+
+ bond shares is based on the amount of coins delegated
+ divided by the current
+
+ exchange rate. Voting power can be calculated as total
+ bonded shares
+
+ multiplied by exchange rate.
+ description: validators defines the validators' info of a delegator.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: |-
+ QueryDelegatorValidatorsResponse is response type for the
+ Query/DelegatorValidators RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: delegator_addr
+ description: delegator_addr defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}:
+ get:
+ summary: |-
+ DelegatorValidator queries validator info for given delegator validator
+ pair.
+ operationId: CosmosStakingV1Beta1DelegatorValidator
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ validator:
+ description: validator defines the validator info.
+ type: object
+ properties:
+ operator_address:
+ type: string
+ description: >-
+ operator_address defines the address of the validator's
+ operator; bech encoded in JSON.
+ consensus_pubkey:
+ description: >-
+ consensus_pubkey is the consensus public key of the
+ validator, as a Protobuf Any.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ jailed:
+ type: boolean
+ description: >-
+ jailed defined whether the validator has been jailed from
+ bonded status or not.
+ status:
+ description: >-
+ status is the validator status
+ (bonded/unbonding/unbonded).
+ type: string
+ enum:
+ - BOND_STATUS_UNSPECIFIED
+ - BOND_STATUS_UNBONDED
+ - BOND_STATUS_UNBONDING
+ - BOND_STATUS_BONDED
+ default: BOND_STATUS_UNSPECIFIED
+ tokens:
+ type: string
+ description: >-
+ tokens define the delegated tokens (incl.
+ self-delegation).
+ delegator_shares:
+ type: string
+ description: >-
+ delegator_shares defines total shares issued to a
+ validator's delegators.
+ description:
+ description: >-
+ description defines the description terms for the
+ validator.
+ type: object
+ properties:
+ moniker:
+ type: string
+ description: >-
+ moniker defines a human-readable name for the
+ validator.
+ identity:
+ type: string
+ description: >-
+ identity defines an optional identity signature (ex.
+ UPort or Keybase).
+ website:
+ type: string
+ description: website defines an optional website link.
+ security_contact:
+ type: string
+ description: >-
+ security_contact defines an optional email for
+ security contact.
+ details:
+ type: string
+ description: details define other optional details.
+ unbonding_height:
+ type: string
+ format: int64
+ description: >-
+ unbonding_height defines, if unbonding, the height at
+ which this validator has begun unbonding.
+ unbonding_time:
+ type: string
+ format: date-time
+ description: >-
+ unbonding_time defines, if unbonding, the min time for the
+ validator to complete unbonding.
+ commission:
+ description: commission defines the commission parameters.
+ type: object
+ properties:
+ commission_rates:
+ description: >-
+ commission_rates defines the initial commission rates
+ to be used for creating a validator.
+ type: object
+ properties:
+ rate:
+ type: string
+ description: >-
+ rate is the commission rate charged to delegators,
+ as a fraction.
+ max_rate:
+ type: string
+ description: >-
+ max_rate defines the maximum commission rate which
+ validator can ever charge, as a fraction.
+ max_change_rate:
+ type: string
+ description: >-
+ max_change_rate defines the maximum daily increase
+ of the validator commission, as a fraction.
+ update_time:
+ type: string
+ format: date-time
+ description: >-
+ update_time is the last time the commission rate was
+ changed.
+ min_self_delegation:
+ type: string
+ description: >-
+ min_self_delegation is the validator's self declared
+ minimum self delegation.
+
+
+ Since: cosmos-sdk 0.46
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ strictly positive if this validator's unbonding has been
+ stopped by external modules
+ unbonding_ids:
+ type: array
+ items:
+ type: string
+ format: uint64
+ title: >-
+ list of unbonding ids, each uniquely identifing an
+ unbonding of this validator
+ description: |-
+ QueryDelegatorValidatorResponse response type for the
+ Query/DelegatorValidator RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: delegator_addr
+ description: delegator_addr defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: validator_addr
+ description: validator_addr defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/historical_info/{height}:
+ get:
+ summary: HistoricalInfo queries the historical info for given height.
+ operationId: CosmosStakingV1Beta1HistoricalInfo
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ hist:
+ description: hist defines the historical info at the given height.
+ type: object
+ properties:
+ header:
+ type: object
+ properties:
+ version:
+ title: basic block info
+ type: object
+ properties:
+ block:
+ type: string
+ format: uint64
+ app:
+ type: string
+ format: uint64
+ description: >-
+ Consensus captures the consensus rules for processing
+ a block in the blockchain,
+
+ including all blockchain data structures and the rules
+ of the application's
+
+ state transition machine.
+ chain_id:
+ type: string
+ height:
+ type: string
+ format: int64
+ time:
+ type: string
+ format: date-time
+ last_block_id:
+ title: prev block info
+ type: object
+ properties:
+ hash:
+ type: string
+ format: byte
+ part_set_header:
+ type: object
+ properties:
+ total:
+ type: integer
+ format: int64
+ hash:
+ type: string
+ format: byte
+ title: PartsetHeader
+ last_commit_hash:
+ type: string
+ format: byte
+ description: commit from validators from the last block
+ title: hashes of block data
+ data_hash:
+ type: string
+ format: byte
+ title: transactions
+ validators_hash:
+ type: string
+ format: byte
+ description: validators for the current block
+ title: hashes from the app output from the prev block
+ next_validators_hash:
+ type: string
+ format: byte
+ title: validators for the next block
+ consensus_hash:
+ type: string
+ format: byte
+ title: consensus params for current block
+ app_hash:
+ type: string
+ format: byte
+ title: state after txs from the previous block
+ last_results_hash:
+ type: string
+ format: byte
+ title: >-
+ root hash of all results from the txs from the
+ previous block
+ evidence_hash:
+ type: string
+ format: byte
+ description: evidence included in the block
+ title: consensus info
+ proposer_address:
+ type: string
+ format: byte
+ title: original proposer of the block
+ description: Header defines the structure of a block header.
+ valset:
+ type: array
+ items:
+ type: object
+ properties:
+ operator_address:
+ type: string
+ description: >-
+ operator_address defines the address of the
+ validator's operator; bech encoded in JSON.
+ consensus_pubkey:
+ description: >-
+ consensus_pubkey is the consensus public key of the
+ validator, as a Protobuf Any.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must
+ contain at least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name
+ should be in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However,
+ for URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message
+ definitions as follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup
+ results based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently
+ available in the official
+
+ protobuf release, and it is not used for type
+ URLs beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ jailed:
+ type: boolean
+ description: >-
+ jailed defined whether the validator has been jailed
+ from bonded status or not.
+ status:
+ description: >-
+ status is the validator status
+ (bonded/unbonding/unbonded).
+ type: string
+ enum:
+ - BOND_STATUS_UNSPECIFIED
+ - BOND_STATUS_UNBONDED
+ - BOND_STATUS_UNBONDING
+ - BOND_STATUS_BONDED
+ default: BOND_STATUS_UNSPECIFIED
+ tokens:
+ type: string
+ description: >-
+ tokens define the delegated tokens (incl.
+ self-delegation).
+ delegator_shares:
+ type: string
+ description: >-
+ delegator_shares defines total shares issued to a
+ validator's delegators.
+ description:
+ description: >-
+ description defines the description terms for the
+ validator.
+ type: object
+ properties:
+ moniker:
+ type: string
+ description: >-
+ moniker defines a human-readable name for the
+ validator.
+ identity:
+ type: string
+ description: >-
+ identity defines an optional identity signature
+ (ex. UPort or Keybase).
+ website:
+ type: string
+ description: website defines an optional website link.
+ security_contact:
+ type: string
+ description: >-
+ security_contact defines an optional email for
+ security contact.
+ details:
+ type: string
+ description: details define other optional details.
+ unbonding_height:
+ type: string
+ format: int64
+ description: >-
+ unbonding_height defines, if unbonding, the height
+ at which this validator has begun unbonding.
+ unbonding_time:
+ type: string
+ format: date-time
+ description: >-
+ unbonding_time defines, if unbonding, the min time
+ for the validator to complete unbonding.
+ commission:
+ description: commission defines the commission parameters.
+ type: object
+ properties:
+ commission_rates:
+ description: >-
+ commission_rates defines the initial commission
+ rates to be used for creating a validator.
+ type: object
+ properties:
+ rate:
+ type: string
+ description: >-
+ rate is the commission rate charged to
+ delegators, as a fraction.
+ max_rate:
+ type: string
+ description: >-
+ max_rate defines the maximum commission rate
+ which validator can ever charge, as a
+ fraction.
+ max_change_rate:
+ type: string
+ description: >-
+ max_change_rate defines the maximum daily
+ increase of the validator commission, as a
+ fraction.
+ update_time:
+ type: string
+ format: date-time
+ description: >-
+ update_time is the last time the commission rate
+ was changed.
+ min_self_delegation:
+ type: string
+ description: >-
+ min_self_delegation is the validator's self declared
+ minimum self delegation.
+
+
+ Since: cosmos-sdk 0.46
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ strictly positive if this validator's unbonding has
+ been stopped by external modules
+ unbonding_ids:
+ type: array
+ items:
+ type: string
+ format: uint64
+ title: >-
+ list of unbonding ids, each uniquely identifing an
+ unbonding of this validator
+ description: >-
+ Validator defines a validator, together with the total
+ amount of the
+
+ Validator's bond shares and their exchange rate to
+ coins. Slashing results in
+
+ a decrease in the exchange rate, allowing correct
+ calculation of future
+
+ undelegations without iterating over delegators. When
+ coins are delegated to
+
+ this validator, the validator is credited with a
+ delegation whose number of
+
+ bond shares is based on the amount of coins delegated
+ divided by the current
+
+ exchange rate. Voting power can be calculated as total
+ bonded shares
+
+ multiplied by exchange rate.
+ description: >-
+ QueryHistoricalInfoResponse is response type for the
+ Query/HistoricalInfo RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: height
+ description: height defines at which height to query the historical info.
+ in: path
+ required: true
+ type: string
+ format: int64
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/params:
+ get:
+ summary: Parameters queries the staking parameters.
+ operationId: CosmosStakingV1Beta1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: params holds all the parameters of this module.
+ type: object
+ properties:
+ unbonding_time:
+ type: string
+ description: unbonding_time is the time duration of unbonding.
+ max_validators:
+ type: integer
+ format: int64
+ description: max_validators is the maximum number of validators.
+ max_entries:
+ type: integer
+ format: int64
+ description: >-
+ max_entries is the max entries for either unbonding
+ delegation or redelegation (per pair/trio).
+ historical_entries:
+ type: integer
+ format: int64
+ description: >-
+ historical_entries is the number of historical entries to
+ persist.
+ bond_denom:
+ type: string
+ description: bond_denom defines the bondable coin denomination.
+ min_commission_rate:
+ type: string
+ title: >-
+ min_commission_rate is the chain-wide minimum commission
+ rate that a validator can charge their delegators
+ description: >-
+ QueryParamsResponse is response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/pool:
+ get:
+ summary: Pool queries the pool info.
+ operationId: CosmosStakingV1Beta1Pool
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ pool:
+ description: pool defines the pool info.
+ type: object
+ properties:
+ not_bonded_tokens:
+ type: string
+ bonded_tokens:
+ type: string
+ description: QueryPoolResponse is response type for the Query/Pool RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/validators:
+ get:
+ summary: Validators queries all validators that match the given status.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosStakingV1Beta1Validators
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ validators:
+ type: array
+ items:
+ type: object
+ properties:
+ operator_address:
+ type: string
+ description: >-
+ operator_address defines the address of the validator's
+ operator; bech encoded in JSON.
+ consensus_pubkey:
+ description: >-
+ consensus_pubkey is the consensus public key of the
+ validator, as a Protobuf Any.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ jailed:
+ type: boolean
+ description: >-
+ jailed defined whether the validator has been jailed
+ from bonded status or not.
+ status:
+ description: >-
+ status is the validator status
+ (bonded/unbonding/unbonded).
+ type: string
+ enum:
+ - BOND_STATUS_UNSPECIFIED
+ - BOND_STATUS_UNBONDED
+ - BOND_STATUS_UNBONDING
+ - BOND_STATUS_BONDED
+ default: BOND_STATUS_UNSPECIFIED
+ tokens:
+ type: string
+ description: >-
+ tokens define the delegated tokens (incl.
+ self-delegation).
+ delegator_shares:
+ type: string
+ description: >-
+ delegator_shares defines total shares issued to a
+ validator's delegators.
+ description:
+ description: >-
+ description defines the description terms for the
+ validator.
+ type: object
+ properties:
+ moniker:
+ type: string
+ description: >-
+ moniker defines a human-readable name for the
+ validator.
+ identity:
+ type: string
+ description: >-
+ identity defines an optional identity signature (ex.
+ UPort or Keybase).
+ website:
+ type: string
+ description: website defines an optional website link.
+ security_contact:
+ type: string
+ description: >-
+ security_contact defines an optional email for
+ security contact.
+ details:
+ type: string
+ description: details define other optional details.
+ unbonding_height:
+ type: string
+ format: int64
+ description: >-
+ unbonding_height defines, if unbonding, the height at
+ which this validator has begun unbonding.
+ unbonding_time:
+ type: string
+ format: date-time
+ description: >-
+ unbonding_time defines, if unbonding, the min time for
+ the validator to complete unbonding.
+ commission:
+ description: commission defines the commission parameters.
+ type: object
+ properties:
+ commission_rates:
+ description: >-
+ commission_rates defines the initial commission
+ rates to be used for creating a validator.
+ type: object
+ properties:
+ rate:
+ type: string
+ description: >-
+ rate is the commission rate charged to
+ delegators, as a fraction.
+ max_rate:
+ type: string
+ description: >-
+ max_rate defines the maximum commission rate
+ which validator can ever charge, as a fraction.
+ max_change_rate:
+ type: string
+ description: >-
+ max_change_rate defines the maximum daily
+ increase of the validator commission, as a
+ fraction.
+ update_time:
+ type: string
+ format: date-time
+ description: >-
+ update_time is the last time the commission rate was
+ changed.
+ min_self_delegation:
+ type: string
+ description: >-
+ min_self_delegation is the validator's self declared
+ minimum self delegation.
+
+
+ Since: cosmos-sdk 0.46
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ strictly positive if this validator's unbonding has been
+ stopped by external modules
+ unbonding_ids:
+ type: array
+ items:
+ type: string
+ format: uint64
+ title: >-
+ list of unbonding ids, each uniquely identifing an
+ unbonding of this validator
+ description: >-
+ Validator defines a validator, together with the total
+ amount of the
+
+ Validator's bond shares and their exchange rate to coins.
+ Slashing results in
+
+ a decrease in the exchange rate, allowing correct
+ calculation of future
+
+ undelegations without iterating over delegators. When coins
+ are delegated to
+
+ this validator, the validator is credited with a delegation
+ whose number of
+
+ bond shares is based on the amount of coins delegated
+ divided by the current
+
+ exchange rate. Voting power can be calculated as total
+ bonded shares
+
+ multiplied by exchange rate.
+ description: validators contains all the queried validators.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ title: >-
+ QueryValidatorsResponse is response type for the Query/Validators
+ RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: status
+ description: status enables to query for validators matching a given status.
+ in: query
+ required: false
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/validators/{validator_addr}:
+ get:
+ summary: Validator queries validator info for given validator address.
+ operationId: CosmosStakingV1Beta1Validator
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ validator:
+ description: validator defines the validator info.
+ type: object
+ properties:
+ operator_address:
+ type: string
+ description: >-
+ operator_address defines the address of the validator's
+ operator; bech encoded in JSON.
+ consensus_pubkey:
+ description: >-
+ consensus_pubkey is the consensus public key of the
+ validator, as a Protobuf Any.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ jailed:
+ type: boolean
+ description: >-
+ jailed defined whether the validator has been jailed from
+ bonded status or not.
+ status:
+ description: >-
+ status is the validator status
+ (bonded/unbonding/unbonded).
+ type: string
+ enum:
+ - BOND_STATUS_UNSPECIFIED
+ - BOND_STATUS_UNBONDED
+ - BOND_STATUS_UNBONDING
+ - BOND_STATUS_BONDED
+ default: BOND_STATUS_UNSPECIFIED
+ tokens:
+ type: string
+ description: >-
+ tokens define the delegated tokens (incl.
+ self-delegation).
+ delegator_shares:
+ type: string
+ description: >-
+ delegator_shares defines total shares issued to a
+ validator's delegators.
+ description:
+ description: >-
+ description defines the description terms for the
+ validator.
+ type: object
+ properties:
+ moniker:
+ type: string
+ description: >-
+ moniker defines a human-readable name for the
+ validator.
+ identity:
+ type: string
+ description: >-
+ identity defines an optional identity signature (ex.
+ UPort or Keybase).
+ website:
+ type: string
+ description: website defines an optional website link.
+ security_contact:
+ type: string
+ description: >-
+ security_contact defines an optional email for
+ security contact.
+ details:
+ type: string
+ description: details define other optional details.
+ unbonding_height:
+ type: string
+ format: int64
+ description: >-
+ unbonding_height defines, if unbonding, the height at
+ which this validator has begun unbonding.
+ unbonding_time:
+ type: string
+ format: date-time
+ description: >-
+ unbonding_time defines, if unbonding, the min time for the
+ validator to complete unbonding.
+ commission:
+ description: commission defines the commission parameters.
+ type: object
+ properties:
+ commission_rates:
+ description: >-
+ commission_rates defines the initial commission rates
+ to be used for creating a validator.
+ type: object
+ properties:
+ rate:
+ type: string
+ description: >-
+ rate is the commission rate charged to delegators,
+ as a fraction.
+ max_rate:
+ type: string
+ description: >-
+ max_rate defines the maximum commission rate which
+ validator can ever charge, as a fraction.
+ max_change_rate:
+ type: string
+ description: >-
+ max_change_rate defines the maximum daily increase
+ of the validator commission, as a fraction.
+ update_time:
+ type: string
+ format: date-time
+ description: >-
+ update_time is the last time the commission rate was
+ changed.
+ min_self_delegation:
+ type: string
+ description: >-
+ min_self_delegation is the validator's self declared
+ minimum self delegation.
+
+
+ Since: cosmos-sdk 0.46
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ strictly positive if this validator's unbonding has been
+ stopped by external modules
+ unbonding_ids:
+ type: array
+ items:
+ type: string
+ format: uint64
+ title: >-
+ list of unbonding ids, each uniquely identifing an
+ unbonding of this validator
+ title: >-
+ QueryValidatorResponse is response type for the Query/Validator
+ RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: validator_addr
+ description: validator_addr defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/validators/{validator_addr}/delegations:
+ get:
+ summary: ValidatorDelegations queries delegate info for given validator.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosStakingV1Beta1ValidatorDelegations
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ delegation_responses:
+ type: array
+ items:
+ type: object
+ properties:
+ delegation:
+ type: object
+ properties:
+ delegator_address:
+ type: string
+ description: >-
+ delegator_address is the bech32-encoded address of
+ the delegator.
+ validator_address:
+ type: string
+ description: >-
+ validator_address is the bech32-encoded address of
+ the validator.
+ shares:
+ type: string
+ description: shares define the delegation shares received.
+ description: >-
+ Delegation represents the bond with tokens held by an
+ account. It is
+
+ owned by one delegator, and is associated with the
+ voting power of one
+
+ validator.
+ balance:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: >-
+ DelegationResponse is equivalent to Delegation except that
+ it contains a
+
+ balance in addition to shares which is more suitable for
+ client responses.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ title: |-
+ QueryValidatorDelegationsResponse is response type for the
+ Query/ValidatorDelegations RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: validator_addr
+ description: validator_addr defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}:
+ get:
+ summary: Delegation queries delegate info for given validator delegator pair.
+ operationId: CosmosStakingV1Beta1Delegation
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ delegation_response:
+ description: >-
+ delegation_responses defines the delegation info of a
+ delegation.
+ type: object
+ properties:
+ delegation:
+ type: object
+ properties:
+ delegator_address:
+ type: string
+ description: >-
+ delegator_address is the bech32-encoded address of the
+ delegator.
+ validator_address:
+ type: string
+ description: >-
+ validator_address is the bech32-encoded address of the
+ validator.
+ shares:
+ type: string
+ description: shares define the delegation shares received.
+ description: >-
+ Delegation represents the bond with tokens held by an
+ account. It is
+
+ owned by one delegator, and is associated with the voting
+ power of one
+
+ validator.
+ balance:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the
+ custom method
+
+ signatures required by gogoproto.
+ description: >-
+ QueryDelegationResponse is response type for the Query/Delegation
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: validator_addr
+ description: validator_addr defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: delegator_addr
+ description: delegator_addr defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation:
+ get:
+ summary: |-
+ UnbondingDelegation queries unbonding info for given validator delegator
+ pair.
+ operationId: CosmosStakingV1Beta1UnbondingDelegation
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ unbond:
+ description: unbond defines the unbonding information of a delegation.
+ type: object
+ properties:
+ delegator_address:
+ type: string
+ description: >-
+ delegator_address is the bech32-encoded address of the
+ delegator.
+ validator_address:
+ type: string
+ description: >-
+ validator_address is the bech32-encoded address of the
+ validator.
+ entries:
+ type: array
+ items:
+ type: object
+ properties:
+ creation_height:
+ type: string
+ format: int64
+ description: >-
+ creation_height is the height which the unbonding
+ took place.
+ completion_time:
+ type: string
+ format: date-time
+ description: >-
+ completion_time is the unix time for unbonding
+ completion.
+ initial_balance:
+ type: string
+ description: >-
+ initial_balance defines the tokens initially
+ scheduled to receive at completion.
+ balance:
+ type: string
+ description: balance defines the tokens to receive at completion.
+ unbonding_id:
+ type: string
+ format: uint64
+ title: Incrementing id that uniquely identifies this entry
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ Strictly positive if this entry's unbonding has been
+ stopped by external modules
+ description: >-
+ UnbondingDelegationEntry defines an unbonding object
+ with relevant metadata.
+ description: |-
+ entries are the unbonding delegation entries.
+
+ unbonding delegation entries
+ description: >-
+ QueryDelegationResponse is response type for the
+ Query/UnbondingDelegation
+
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: validator_addr
+ description: validator_addr defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: delegator_addr
+ description: delegator_addr defines the delegator address to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations:
+ get:
+ summary: >-
+ ValidatorUnbondingDelegations queries unbonding delegations of a
+ validator.
+ description: >-
+ When called from another module, this query might consume a high amount
+ of
+
+ gas if the pagination field is incorrectly set.
+ operationId: CosmosStakingV1Beta1ValidatorUnbondingDelegations
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ unbonding_responses:
+ type: array
+ items:
+ type: object
+ properties:
+ delegator_address:
+ type: string
+ description: >-
+ delegator_address is the bech32-encoded address of the
+ delegator.
+ validator_address:
+ type: string
+ description: >-
+ validator_address is the bech32-encoded address of the
+ validator.
+ entries:
+ type: array
+ items:
+ type: object
+ properties:
+ creation_height:
+ type: string
+ format: int64
+ description: >-
+ creation_height is the height which the unbonding
+ took place.
+ completion_time:
+ type: string
+ format: date-time
+ description: >-
+ completion_time is the unix time for unbonding
+ completion.
+ initial_balance:
+ type: string
+ description: >-
+ initial_balance defines the tokens initially
+ scheduled to receive at completion.
+ balance:
+ type: string
+ description: >-
+ balance defines the tokens to receive at
+ completion.
+ unbonding_id:
+ type: string
+ format: uint64
+ title: >-
+ Incrementing id that uniquely identifies this
+ entry
+ unbonding_on_hold_ref_count:
+ type: string
+ format: int64
+ title: >-
+ Strictly positive if this entry's unbonding has
+ been stopped by external modules
+ description: >-
+ UnbondingDelegationEntry defines an unbonding object
+ with relevant metadata.
+ description: |-
+ entries are the unbonding delegation entries.
+
+ unbonding delegation entries
+ description: >-
+ UnbondingDelegation stores all of a single delegator's
+ unbonding bonds
+
+ for a single validator in an time-ordered list.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryValidatorUnbondingDelegationsResponse is response type for
+ the
+
+ Query/ValidatorUnbondingDelegations RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: validator_addr
+ description: validator_addr defines the validator address to query for.
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /cosmos/tx/v1beta1/decode:
+ post:
+ summary: TxDecode decodes the transaction.
+ description: 'Since: cosmos-sdk 0.47'
+ operationId: CosmosTxV1Beta1TxDecode
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ $ref: '#/definitions/cosmos.tx.v1beta1.TxDecodeResponse'
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: body
+ description: |-
+ TxDecodeRequest is the request type for the Service.TxDecode
+ RPC method.
+
+ Since: cosmos-sdk 0.47
+ in: body
+ required: true
+ schema:
+ type: object
+ properties:
+ tx_bytes:
+ type: string
+ format: byte
+ description: tx_bytes is the raw transaction.
+ description: |-
+ TxDecodeRequest is the request type for the Service.TxDecode
+ RPC method.
+
+ Since: cosmos-sdk 0.47
+ tags:
+ - Service
+ /cosmos/tx/v1beta1/decode/amino:
+ post:
+ summary: TxDecodeAmino decodes an Amino transaction from encoded bytes to JSON.
+ description: 'Since: cosmos-sdk 0.47'
+ operationId: CosmosTxV1Beta1TxDecodeAmino
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ amino_json:
+ type: string
+ description: >-
+ TxDecodeAminoResponse is the response type for the
+ Service.TxDecodeAmino
+
+ RPC method.
+
+
+ Since: cosmos-sdk 0.47
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: body
+ description: >-
+ TxDecodeAminoRequest is the request type for the
+ Service.TxDecodeAmino
+
+ RPC method.
+
+
+ Since: cosmos-sdk 0.47
+ in: body
+ required: true
+ schema:
+ type: object
+ properties:
+ amino_binary:
+ type: string
+ format: byte
+ description: >-
+ TxDecodeAminoRequest is the request type for the
+ Service.TxDecodeAmino
+
+ RPC method.
+
+
+ Since: cosmos-sdk 0.47
+ tags:
+ - Service
+ /cosmos/tx/v1beta1/encode:
+ post:
+ summary: TxEncode encodes the transaction.
+ description: 'Since: cosmos-sdk 0.47'
+ operationId: CosmosTxV1Beta1TxEncode
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ tx_bytes:
+ type: string
+ format: byte
+ description: tx_bytes is the encoded transaction bytes.
+ description: |-
+ TxEncodeResponse is the response type for the
+ Service.TxEncode method.
+
+ Since: cosmos-sdk 0.47
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: body
+ description: |-
+ TxEncodeRequest is the request type for the Service.TxEncode
+ RPC method.
+
+ Since: cosmos-sdk 0.47
+ in: body
+ required: true
+ schema:
+ $ref: '#/definitions/cosmos.tx.v1beta1.TxEncodeRequest'
+ tags:
+ - Service
+ /cosmos/tx/v1beta1/encode/amino:
+ post:
+ summary: TxEncodeAmino encodes an Amino transaction from JSON to encoded bytes.
+ description: 'Since: cosmos-sdk 0.47'
+ operationId: CosmosTxV1Beta1TxEncodeAmino
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ amino_binary:
+ type: string
+ format: byte
+ description: >-
+ TxEncodeAminoResponse is the response type for the
+ Service.TxEncodeAmino
+
+ RPC method.
+
+
+ Since: cosmos-sdk 0.47
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: body
+ description: >-
+ TxEncodeAminoRequest is the request type for the
+ Service.TxEncodeAmino
+
+ RPC method.
+
+
+ Since: cosmos-sdk 0.47
+ in: body
+ required: true
+ schema:
+ type: object
+ properties:
+ amino_json:
+ type: string
+ description: >-
+ TxEncodeAminoRequest is the request type for the
+ Service.TxEncodeAmino
+
+ RPC method.
+
+
+ Since: cosmos-sdk 0.47
+ tags:
+ - Service
+ /cosmos/tx/v1beta1/simulate:
+ post:
+ summary: Simulate simulates executing a transaction for estimating gas usage.
+ operationId: CosmosTxV1Beta1Simulate
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ gas_info:
+ description: gas_info is the information about gas used in the simulation.
+ type: object
+ properties:
+ gas_wanted:
+ type: string
+ format: uint64
+ description: >-
+ GasWanted is the maximum units of work we allow this tx to
+ perform.
+ gas_used:
+ type: string
+ format: uint64
+ description: GasUsed is the amount of gas actually consumed.
+ result:
+ description: result is the result of the simulation.
+ type: object
+ properties:
+ data:
+ type: string
+ format: byte
+ description: >-
+ Data is any data returned from message or handler
+ execution. It MUST be
+
+ length prefixed in order to separate data from multiple
+ message executions.
+
+ Deprecated. This field is still populated, but prefer
+ msg_response instead
+
+ because it also contains the Msg response typeURL.
+ log:
+ type: string
+ description: >-
+ Log contains the log information from message or handler
+ execution.
+ events:
+ type: array
+ items:
+ type: object
+ properties:
+ type:
+ type: string
+ attributes:
+ type: array
+ items:
+ type: object
+ properties:
+ key:
+ type: string
+ value:
+ type: string
+ index:
+ type: boolean
+ title: nondeterministic
+ description: >-
+ EventAttribute is a single key-value pair,
+ associated with an event.
+ description: >-
+ Event allows application developers to attach additional
+ information to
+
+ ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx
+ and ResponseDeliverTx.
+
+ Later, transactions may be queried using these events.
+ description: >-
+ Events contains a slice of Event objects that were emitted
+ during message
+
+ or handler execution.
+ msg_responses:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the
+ type of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's
+ path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the
+ binary all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available
+ in the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the
+ regular
+
+ representation of the deserialized, embedded message,
+ with an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message
+ [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ msg_responses contains the Msg handler responses type
+ packed in Anys.
+
+
+ Since: cosmos-sdk 0.46
+ description: |-
+ SimulateResponse is the response type for the
+ Service.SimulateRPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: body
+ description: |-
+ SimulateRequest is the request type for the Service.Simulate
+ RPC method.
+ in: body
+ required: true
+ schema:
+ $ref: '#/definitions/cosmos.tx.v1beta1.SimulateRequest'
+ tags:
+ - Service
+ /cosmos/tx/v1beta1/txs:
+ get:
+ summary: GetTxsEvent fetches txs by event.
+ operationId: CosmosTxV1Beta1GetTxsEvent
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ $ref: '#/definitions/cosmos.tx.v1beta1.GetTxsEventResponse'
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: events
+ description: events is the list of transaction event type.
+ in: query
+ required: false
+ type: array
+ items:
+ type: string
+ collectionFormat: multi
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ - name: order_by
+ description: |2-
+ - ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaults to ASC in this case.
+ - ORDER_BY_ASC: ORDER_BY_ASC defines ascending order
+ - ORDER_BY_DESC: ORDER_BY_DESC defines descending order
+ in: query
+ required: false
+ type: string
+ enum:
+ - ORDER_BY_UNSPECIFIED
+ - ORDER_BY_ASC
+ - ORDER_BY_DESC
+ default: ORDER_BY_UNSPECIFIED
+ - name: page
+ description: >-
+ page is the page number to query, starts at 1. If not provided, will
+ default to first page.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ tags:
+ - Service
+ post:
+ summary: BroadcastTx broadcast transaction.
+ operationId: CosmosTxV1Beta1BroadcastTx
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ tx_response:
+ description: tx_response is the queried TxResponses.
+ type: object
+ properties:
+ height:
+ type: string
+ format: int64
+ title: The block height
+ txhash:
+ type: string
+ description: The transaction hash.
+ codespace:
+ type: string
+ title: Namespace for the Code
+ code:
+ type: integer
+ format: int64
+ description: Response code.
+ data:
+ type: string
+ description: Result bytes, if any.
+ raw_log:
+ type: string
+ description: >-
+ The output of the application's logger (raw string). May
+ be
+
+ non-deterministic.
+ logs:
+ type: array
+ items:
+ type: object
+ properties:
+ msg_index:
+ type: integer
+ format: int64
+ log:
+ type: string
+ events:
+ type: array
+ items:
+ type: object
+ properties:
+ type:
+ type: string
+ attributes:
+ type: array
+ items:
+ type: object
+ properties:
+ key:
+ type: string
+ value:
+ type: string
+ description: >-
+ Attribute defines an attribute wrapper where
+ the key and value are
+
+ strings instead of raw bytes.
+ description: >-
+ StringEvent defines en Event object wrapper where
+ all the attributes
+
+ contain key/value pairs that are strings instead
+ of raw bytes.
+ description: >-
+ Events contains a slice of Event objects that were
+ emitted during some
+
+ execution.
+ description: >-
+ ABCIMessageLog defines a structure containing an indexed
+ tx ABCI message log.
+ description: >-
+ The output of the application's logger (typed). May be
+ non-deterministic.
+ info:
+ type: string
+ description: Additional information. May be non-deterministic.
+ gas_wanted:
+ type: string
+ format: int64
+ description: Amount of gas requested for transaction.
+ gas_used:
+ type: string
+ format: int64
+ description: Amount of gas consumed by transaction.
+ tx:
+ description: The request transaction bytes.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ timestamp:
+ type: string
+ description: >-
+ Time of the previous block. For heights > 1, it's the
+ weighted median of
+
+ the timestamps of the valid votes in the block.LastCommit.
+ For height == 1,
+
+ it's genesis time.
+ events:
+ type: array
+ items:
+ type: object
+ properties:
+ type:
+ type: string
+ attributes:
+ type: array
+ items:
+ type: object
+ properties:
+ key:
+ type: string
+ value:
+ type: string
+ index:
+ type: boolean
+ title: nondeterministic
+ description: >-
+ EventAttribute is a single key-value pair,
+ associated with an event.
+ description: >-
+ Event allows application developers to attach additional
+ information to
+
+ ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx
+ and ResponseDeliverTx.
+
+ Later, transactions may be queried using these events.
+ description: >-
+ Events defines all the events emitted by processing a
+ transaction. Note,
+
+ these events include those emitted by processing all the
+ messages and those
+
+ emitted from the ante. Whereas Logs contains the events,
+ with
+
+ additional metadata, emitted only by processing the
+ messages.
+
+
+ Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
+ description: |-
+ BroadcastTxResponse is the response type for the
+ Service.BroadcastTx method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: body
+ description: >-
+ BroadcastTxRequest is the request type for the
+ Service.BroadcastTxRequest
+
+ RPC method.
+ in: body
+ required: true
+ schema:
+ type: object
+ properties:
+ tx_bytes:
+ type: string
+ format: byte
+ description: tx_bytes is the raw transaction.
+ mode:
+ type: string
+ enum:
+ - BROADCAST_MODE_UNSPECIFIED
+ - BROADCAST_MODE_BLOCK
+ - BROADCAST_MODE_SYNC
+ - BROADCAST_MODE_ASYNC
+ default: BROADCAST_MODE_UNSPECIFIED
+ description: >-
+ BroadcastMode specifies the broadcast mode for the
+ TxService.Broadcast RPC method.
+
+ - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering
+ - BROADCAST_MODE_BLOCK: DEPRECATED: use BROADCAST_MODE_SYNC instead,
+ BROADCAST_MODE_BLOCK is not supported by the SDK from v0.47.x
+ onwards.
+ - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for
+ a CheckTx execution response only.
+ - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns
+ immediately.
+ description: >-
+ BroadcastTxRequest is the request type for the
+ Service.BroadcastTxRequest
+
+ RPC method.
+ tags:
+ - Service
+ /cosmos/tx/v1beta1/txs/block/{height}:
+ get:
+ summary: GetBlockWithTxs fetches a block with decoded txs.
+ description: 'Since: cosmos-sdk 0.45.2'
+ operationId: CosmosTxV1Beta1GetBlockWithTxs
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ $ref: '#/definitions/cosmos.tx.v1beta1.GetBlockWithTxsResponse'
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: height
+ description: height is the height of the block to query.
+ in: path
+ required: true
+ type: string
+ format: int64
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Service
+ /cosmos/tx/v1beta1/txs/{hash}:
+ get:
+ summary: GetTx fetches a tx by hash.
+ operationId: CosmosTxV1Beta1GetTx
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ $ref: '#/definitions/cosmos.tx.v1beta1.GetTxResponse'
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: hash
+ description: hash is the tx hash to query, encoded as a hex string.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Service
+ /cosmos/upgrade/v1beta1/applied_plan/{name}:
+ get:
+ summary: AppliedPlan queries a previously applied upgrade plan by its name.
+ operationId: CosmosUpgradeV1Beta1AppliedPlan
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ height:
+ type: string
+ format: int64
+ description: height is the block height at which the plan was applied.
+ description: >-
+ QueryAppliedPlanResponse is the response type for the
+ Query/AppliedPlan RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: name
+ description: name is the name of the applied plan to query for.
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /cosmos/upgrade/v1beta1/authority:
+ get:
+ summary: Returns the account with authority to conduct upgrades
+ description: 'Since: cosmos-sdk 0.46'
+ operationId: CosmosUpgradeV1Beta1Authority
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ address:
+ type: string
+ description: 'Since: cosmos-sdk 0.46'
+ title: QueryAuthorityResponse is the response type for Query/Authority
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /cosmos/upgrade/v1beta1/current_plan:
+ get:
+ summary: CurrentPlan queries the current upgrade plan.
+ operationId: CosmosUpgradeV1Beta1CurrentPlan
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ plan:
+ description: plan is the current upgrade plan.
+ type: object
+ properties:
+ name:
+ type: string
+ description: >-
+ Sets the name for the upgrade. This name will be used by
+ the upgraded
+
+ version of the software to apply any special "on-upgrade"
+ commands during
+
+ the first BeginBlock method after the upgrade is applied.
+ It is also used
+
+ to detect whether a software version can handle a given
+ upgrade. If no
+
+ upgrade handler with this name has been set in the
+ software, it will be
+
+ assumed that the software is out-of-date when the upgrade
+ Time or Height is
+
+ reached and the software will exit.
+ time:
+ type: string
+ format: date-time
+ description: >-
+ Deprecated: Time based upgrades have been deprecated. Time
+ based upgrade logic
+
+ has been removed from the SDK.
+
+ If this field is not empty, an error will be thrown.
+ height:
+ type: string
+ format: int64
+ description: The height at which the upgrade must be performed.
+ info:
+ type: string
+ title: >-
+ Any application specific upgrade info to be included
+ on-chain
+
+ such as a git commit that validators could automatically
+ upgrade to
+ upgraded_client_state:
+ description: >-
+ Deprecated: UpgradedClientState field has been deprecated.
+ IBC upgrade logic has been
+
+ moved to the IBC module in the sub module 02-client.
+
+ If this field is not empty, an error will be thrown.
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ QueryCurrentPlanResponse is the response type for the
+ Query/CurrentPlan RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /cosmos/upgrade/v1beta1/module_versions:
+ get:
+ summary: ModuleVersions queries the list of module versions from state.
+ description: 'Since: cosmos-sdk 0.43'
+ operationId: CosmosUpgradeV1Beta1ModuleVersions
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ module_versions:
+ type: array
+ items:
+ type: object
+ properties:
+ name:
+ type: string
+ title: name of the app module
+ version:
+ type: string
+ format: uint64
+ title: consensus version of the app module
+ description: |-
+ ModuleVersion specifies a module and its consensus version.
+
+ Since: cosmos-sdk 0.43
+ description: >-
+ module_versions is a list of module names with their consensus
+ versions.
+ description: >-
+ QueryModuleVersionsResponse is the response type for the
+ Query/ModuleVersions
+
+ RPC method.
+
+
+ Since: cosmos-sdk 0.43
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: module_name
+ description: |-
+ module_name is a field to query a specific module
+ consensus version from state. Leaving this empty will
+ fetch the full list of module versions from state
+ in: query
+ required: false
+ type: string
+ tags:
+ - Query
+ /cosmos/upgrade/v1beta1/upgraded_consensus_state/{last_height}:
+ get:
+ summary: >-
+ UpgradedConsensusState queries the consensus state that will serve
+
+ as a trusted kernel for the next version of this chain. It will only be
+
+ stored at the last height of this chain.
+
+ UpgradedConsensusState RPC not supported with legacy querier
+
+ This rpc is deprecated now that IBC has its own replacement
+
+ (https://github.com/cosmos/ibc-go/blob/2c880a22e9f9cc75f62b527ca94aa75ce1106001/proto/ibc/core/client/v1/query.proto#L54)
+ operationId: CosmosUpgradeV1Beta1UpgradedConsensusState
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ upgraded_consensus_state:
+ type: string
+ format: byte
+ title: 'Since: cosmos-sdk 0.43'
+ description: >-
+ QueryUpgradedConsensusStateResponse is the response type for the
+ Query/UpgradedConsensusState
+
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: last_height
+ description: |-
+ last height of the current chain must be sent in request
+ as this is the height under which next consensus state is stored
+ in: path
+ required: true
+ type: string
+ format: int64
+ tags:
+ - Query
+ /ethermint/evm/v1/ethereum_tx:
+ post:
+ summary: EthereumTx defines a method submitting Ethereum transactions.
+ operationId: EthermintEvmV1EthereumTx
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ hash:
+ type: string
+ title: >-
+ hash of the ethereum transaction in hex format. This hash
+ differs from the
+
+ Tendermint sha256 hash of the transaction bytes. See
+
+ https://github.com/tendermint/tendermint/issues/6539 for
+ reference
+ logs:
+ type: array
+ items:
+ type: object
+ properties:
+ address:
+ type: string
+ title: address of the contract that generated the event
+ topics:
+ type: array
+ items:
+ type: string
+ description: topics is a list of topics provided by the contract.
+ data:
+ type: string
+ format: byte
+ title: >-
+ data which is supplied by the contract, usually
+ ABI-encoded
+ block_number:
+ type: string
+ format: uint64
+ title: >-
+ block_number of the block in which the transaction was
+ included
+ tx_hash:
+ type: string
+ title: tx_hash is the transaction hash
+ tx_index:
+ type: string
+ format: uint64
+ title: tx_index of the transaction in the block
+ block_hash:
+ type: string
+ title: >-
+ block_hash of the block in which the transaction was
+ included
+ index:
+ type: string
+ format: uint64
+ title: index of the log in the block
+ removed:
+ type: boolean
+ description: >-
+ removed is true if this log was reverted due to a chain
+
+ reorganisation. You must pay attention to this field if
+ you receive logs
+
+ through a filter query.
+ description: >-
+ Log represents an protobuf compatible Ethereum Log that
+ defines a contract
+
+ log event. These events are generated by the LOG opcode and
+ stored/indexed by
+
+ the node.
+
+
+ NOTE: address, topics and data are consensus fields. The
+ rest of the fields
+
+ are derived, i.e. filled in by the nodes, but not secured by
+ consensus.
+ description: >-
+ logs contains the transaction hash and the proto-compatible
+ ethereum
+
+ logs.
+ ret:
+ type: string
+ format: byte
+ title: >-
+ ret is the returned data from evm function (result or data
+ supplied with revert
+
+ opcode)
+ vm_error:
+ type: string
+ title: vm_error is the error returned by vm execution
+ gas_used:
+ type: string
+ format: uint64
+ title: >-
+ gas_used specifies how much gas was consumed by the
+ transaction
+ description: MsgEthereumTxResponse defines the Msg/EthereumTx response type.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+ // or ...
+ if (any.isSameTypeAs(Foo.getDefaultInstance())) {
+ foo = any.unpack(Foo.getDefaultInstance());
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+ JSON
+
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: data.type_url
+ description: >-
+ A URL/resource name that uniquely identifies the type of the
+ serialized
+
+ protocol buffer message. This string must contain at least
+
+ one "/" character. The last segment of the URL's path must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in a canonical
+ form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary all types that
+ they
+
+ expect it to use in the context of Any. However, for URLs which use
+ the
+
+ scheme `http`, `https`, or no scheme, one can optionally set up a
+ type
+
+ server that maps type URLs to message definitions as follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in the official
+
+ protobuf release, and it is not used for type URLs beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme) might be
+
+ used with implementation specific semantics.
+ in: query
+ required: false
+ type: string
+ - name: data.value
+ description: >-
+ Must be a valid serialized protocol buffer of the above specified
+ type.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: size
+ description: size is the encoded storage size of the transaction (DEPRECATED)
+ in: query
+ required: false
+ type: number
+ format: double
+ - name: hash
+ description: hash of the transaction in hex format
+ in: query
+ required: false
+ type: string
+ - name: from
+ description: >-
+ from is the ethereum signer address in hex format. This address
+ value is checked
+
+ against the address derived from the signature (V, R, S) using the
+
+ secp256k1 elliptic curve
+ in: query
+ required: false
+ type: string
+ tags:
+ - Msg
+ /ethermint/feemarket/v1/base_fee:
+ get:
+ summary: BaseFee queries the base fee of the parent block of the current block.
+ operationId: EthermintFeemarketV1BaseFee
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ base_fee:
+ type: string
+ title: base_fee is the EIP1559 base fee
+ description: QueryBaseFeeResponse returns the EIP1559 base fee.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /ethermint/feemarket/v1/block_gas:
+ get:
+ summary: BlockGas queries the gas used at a given block height
+ operationId: EthermintFeemarketV1BlockGas
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ gas:
+ type: string
+ format: int64
+ title: gas is the returned block gas
+ description: QueryBlockGasResponse returns block gas used for a given height.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /ethermint/feemarket/v1/params:
+ get:
+ summary: Params queries the parameters of x/feemarket module.
+ operationId: EthermintFeemarketV1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: params define the evm module parameters.
+ type: object
+ properties:
+ no_base_fee:
+ type: boolean
+ title: >-
+ no_base_fee forces the EIP-1559 base fee to 0 (needed for
+ 0 price calls)
+ base_fee_change_denominator:
+ type: integer
+ format: int64
+ description: >-
+ base_fee_change_denominator bounds the amount the base fee
+ can change
+
+ between blocks.
+ elasticity_multiplier:
+ type: integer
+ format: int64
+ description: >-
+ elasticity_multiplier bounds the maximum gas limit an
+ EIP-1559 block may
+
+ have.
+ enable_height:
+ type: string
+ format: int64
+ description: >-
+ enable_height defines at which block height the base fee
+ calculation is enabled.
+ base_fee:
+ type: string
+ description: base_fee for EIP-1559 blocks.
+ min_gas_price:
+ type: string
+ title: >-
+ min_gas_price defines the minimum gas price value for
+ cosmos and eth transactions
+ min_gas_multiplier:
+ type: string
+ title: >-
+ min_gas_multiplier bounds the minimum gas used to be
+ charged
+
+ to senders based on gas limit
+ title: Params defines the EVM module parameters
+ description: >-
+ QueryParamsResponse defines the response type for querying x/evm
+ parameters.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /ibc/apps/interchain_accounts/controller/v1/owners/{owner}/connections/{connection_id}:
+ get:
+ summary: >-
+ InterchainAccount returns the interchain account address for a given
+ owner address on a given connection
+ operationId: IbcApplicationsInterchainAccountsControllerV1InterchainAccount
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ address:
+ type: string
+ description: >-
+ QueryInterchainAccountResponse the response type for the
+ Query/InterchainAccount RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: owner
+ in: path
+ required: true
+ type: string
+ - name: connection_id
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /ibc/apps/interchain_accounts/controller/v1/params:
+ get:
+ summary: Params queries all parameters of the ICA controller submodule.
+ operationId: IbcApplicationsInterchainAccountsControllerV1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: params defines the parameters of the module.
+ type: object
+ properties:
+ controller_enabled:
+ type: boolean
+ description: >-
+ controller_enabled enables or disables the controller
+ submodule.
+ description: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /ibc/apps/interchain_accounts/host/v1/params:
+ get:
+ summary: Params queries all parameters of the ICA host submodule.
+ operationId: IbcApplicationsInterchainAccountsHostV1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: params defines the parameters of the module.
+ type: object
+ properties:
+ host_enabled:
+ type: boolean
+ description: host_enabled enables or disables the host submodule.
+ allow_messages:
+ type: array
+ items:
+ type: string
+ description: >-
+ allow_messages defines a list of sdk message typeURLs
+ allowed to be executed on a host chain.
+ description: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ additionalProperties: {}
+ tags:
+ - Query
+ /ibc/apps/transfer/v1/channels/{channel_id}/ports/{port_id}/escrow_address:
+ get:
+ summary: >-
+ EscrowAddress returns the escrow address for a particular port and
+ channel id.
+ operationId: IbcApplicationsTransferV1EscrowAddress
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ escrow_address:
+ type: string
+ title: the escrow account address
+ description: >-
+ QueryEscrowAddressResponse is the response type of the
+ EscrowAddress RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: unique channel identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: unique port identifier
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /ibc/apps/transfer/v1/denom_hashes/{trace}:
+ get:
+ summary: DenomHash queries a denomination hash information.
+ operationId: IbcApplicationsTransferV1DenomHash
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ hash:
+ type: string
+ description: hash (in hex format) of the denomination trace information.
+ description: >-
+ QueryDenomHashResponse is the response type for the
+ Query/DenomHash RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: trace
+ description: The denomination trace ([port_id]/[channel_id])+/[denom]
+ in: path
+ required: true
+ type: string
+ pattern: .+
+ tags:
+ - Query
+ /ibc/apps/transfer/v1/denom_traces:
+ get:
+ summary: DenomTraces queries all denomination traces.
+ operationId: IbcApplicationsTransferV1DenomTraces
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ denom_traces:
+ type: array
+ items:
+ type: object
+ properties:
+ path:
+ type: string
+ description: >-
+ path defines the chain of port/channel identifiers used
+ for tracing the
+
+ source of the fungible token.
+ base_denom:
+ type: string
+ description: base denomination of the relayed fungible token.
+ description: >-
+ DenomTrace contains the base denomination for ICS20 fungible
+ tokens and the
+
+ source tracing information path.
+ description: denom_traces returns all denominations trace information.
+ pagination:
+ description: pagination defines the pagination in the response.
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ QueryConnectionsResponse is the response type for the
+ Query/DenomTraces RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /ibc/apps/transfer/v1/denom_traces/{hash}:
+ get:
+ summary: DenomTrace queries a denomination trace information.
+ operationId: IbcApplicationsTransferV1DenomTrace
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ denom_trace:
+ description: >-
+ denom_trace returns the requested denomination trace
+ information.
+ type: object
+ properties:
+ path:
+ type: string
+ description: >-
+ path defines the chain of port/channel identifiers used
+ for tracing the
+
+ source of the fungible token.
+ base_denom:
+ type: string
+ description: base denomination of the relayed fungible token.
+ description: >-
+ QueryDenomTraceResponse is the response type for the
+ Query/DenomTrace RPC
+
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: hash
+ description: >-
+ hash (in hex format) or denom (full denom with ibc prefix) of the
+ denomination trace information.
+ in: path
+ required: true
+ type: string
+ pattern: .+
+ tags:
+ - Query
+ /ibc/apps/transfer/v1/denoms/{denom}/total_escrow:
+ get:
+ summary: >-
+ TotalEscrowForDenom returns the total amount of tokens in escrow based
+ on the denom.
+ operationId: IbcApplicationsTransferV1TotalEscrowForDenom
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ amount:
+ type: object
+ properties:
+ denom:
+ type: string
+ amount:
+ type: string
+ description: >-
+ Coin defines a token with a denomination and an amount.
+
+
+ NOTE: The amount field is an Int which implements the custom
+ method
+
+ signatures required by gogoproto.
+ description: >-
+ QueryTotalEscrowForDenomResponse is the response type for
+ TotalEscrowForDenom RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: denom
+ in: path
+ required: true
+ type: string
+ pattern: .+
+ tags:
+ - Query
+ /ibc/apps/transfer/v1/params:
+ get:
+ summary: Params queries all parameters of the ibc-transfer module.
+ operationId: IbcApplicationsTransferV1Params
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ params:
+ description: params defines the parameters of the module.
+ type: object
+ properties:
+ send_enabled:
+ type: boolean
+ description: >-
+ send_enabled enables or disables all cross-chain token
+ transfers from this
+
+ chain.
+ receive_enabled:
+ type: boolean
+ description: >-
+ receive_enabled enables or disables all cross-chain token
+ transfers to this
+
+ chain.
+ description: >-
+ QueryParamsResponse is the response type for the Query/Params RPC
+ method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels:
+ get:
+ summary: Channels queries all the IBC channels of a chain.
+ operationId: IbcCoreChannelV1Channels
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ channels:
+ type: array
+ items:
+ type: object
+ properties:
+ state:
+ title: current state of the channel end
+ type: string
+ enum:
+ - STATE_UNINITIALIZED_UNSPECIFIED
+ - STATE_INIT
+ - STATE_TRYOPEN
+ - STATE_OPEN
+ - STATE_CLOSED
+ default: STATE_UNINITIALIZED_UNSPECIFIED
+ description: >-
+ State defines if a channel is in one of the following
+ states:
+
+ CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.
+
+ - STATE_UNINITIALIZED_UNSPECIFIED: Default State
+ - STATE_INIT: A channel has just started the opening handshake.
+ - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.
+ - STATE_OPEN: A channel has completed the handshake. Open channels are
+ ready to send and receive packets.
+ - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive
+ packets.
+ ordering:
+ title: whether the channel is ordered or unordered
+ type: string
+ enum:
+ - ORDER_NONE_UNSPECIFIED
+ - ORDER_UNORDERED
+ - ORDER_ORDERED
+ default: ORDER_NONE_UNSPECIFIED
+ description: >-
+ - ORDER_NONE_UNSPECIFIED: zero-value for channel
+ ordering
+ - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in
+ which they were sent.
+ - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
+ counterparty:
+ title: counterparty channel end
+ type: object
+ properties:
+ port_id:
+ type: string
+ description: >-
+ port on the counterparty chain which owns the other
+ end of the channel.
+ channel_id:
+ type: string
+ title: channel end on the counterparty chain
+ connection_hops:
+ type: array
+ items:
+ type: string
+ title: >-
+ list of connection identifiers, in order, along which
+ packets sent on
+
+ this channel will travel
+ version:
+ type: string
+ title: >-
+ opaque channel version, which is agreed upon during the
+ handshake
+ port_id:
+ type: string
+ title: port identifier
+ channel_id:
+ type: string
+ title: channel identifier
+ description: >-
+ IdentifiedChannel defines a channel with additional port and
+ channel
+
+ identifier fields.
+ description: list of stored channels of the chain.
+ pagination:
+ title: pagination response
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ PageResponse is to be embedded in gRPC response messages where
+ the
+
+ corresponding request message has used PageRequest.
+
+ message SomeResponse {
+ repeated Bar results = 1;
+ PageResponse page = 2;
+ }
+ height:
+ title: query block height
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ description: >-
+ QueryChannelsResponse is the response type for the Query/Channels
+ RPC method.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}:
+ get:
+ summary: Channel queries an IBC Channel.
+ operationId: IbcCoreChannelV1Channel
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ channel:
+ title: channel associated with the request identifiers
+ type: object
+ properties:
+ state:
+ title: current state of the channel end
+ type: string
+ enum:
+ - STATE_UNINITIALIZED_UNSPECIFIED
+ - STATE_INIT
+ - STATE_TRYOPEN
+ - STATE_OPEN
+ - STATE_CLOSED
+ default: STATE_UNINITIALIZED_UNSPECIFIED
+ description: >-
+ State defines if a channel is in one of the following
+ states:
+
+ CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED.
+
+ - STATE_UNINITIALIZED_UNSPECIFIED: Default State
+ - STATE_INIT: A channel has just started the opening handshake.
+ - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain.
+ - STATE_OPEN: A channel has completed the handshake. Open channels are
+ ready to send and receive packets.
+ - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive
+ packets.
+ ordering:
+ title: whether the channel is ordered or unordered
+ type: string
+ enum:
+ - ORDER_NONE_UNSPECIFIED
+ - ORDER_UNORDERED
+ - ORDER_ORDERED
+ default: ORDER_NONE_UNSPECIFIED
+ description: |-
+ - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering
+ - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in
+ which they were sent.
+ - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
+ counterparty:
+ title: counterparty channel end
+ type: object
+ properties:
+ port_id:
+ type: string
+ description: >-
+ port on the counterparty chain which owns the other
+ end of the channel.
+ channel_id:
+ type: string
+ title: channel end on the counterparty chain
+ connection_hops:
+ type: array
+ items:
+ type: string
+ title: >-
+ list of connection identifiers, in order, along which
+ packets sent on
+
+ this channel will travel
+ version:
+ type: string
+ title: >-
+ opaque channel version, which is agreed upon during the
+ handshake
+ description: >-
+ Channel defines pipeline for exactly-once packet delivery
+ between specific
+
+ modules on separate blockchains, which has at least one end
+ capable of
+
+ sending packets and one end capable of receiving packets.
+ proof:
+ type: string
+ format: byte
+ title: merkle proof of existence
+ proof_height:
+ title: height at which the proof was retrieved
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ description: >-
+ QueryChannelResponse is the response type for the Query/Channel
+ RPC method.
+
+ Besides the Channel end, it includes a proof and the height from
+ which the
+
+ proof was retrieved.
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/client_state:
+ get:
+ summary: >-
+ ChannelClientState queries for the client state for the channel
+ associated
+
+ with the provided channel identifiers.
+ operationId: IbcCoreChannelV1ChannelClientState
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ identified_client_state:
+ title: client state associated with the channel
+ type: object
+ properties:
+ client_id:
+ type: string
+ title: client identifier
+ client_state:
+ title: client state
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type
+ of the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be
+ in a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can
+ optionally set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results
+ based on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty
+ scheme) might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any
+ values in the form
+
+ of utility functions or additional generated methods of
+ the Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and
+ the unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will
+ yield type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a
+ custom JSON
+
+ representation, that representation will be embedded
+ adding a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ description: >-
+ IdentifiedClientState defines a client state with an
+ additional client
+
+ identifier field.
+ proof:
+ type: string
+ format: byte
+ title: merkle proof of existence
+ proof_height:
+ title: height at which the proof was retrieved
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: |-
+ QueryChannelClientStateResponse is the Response type for the
+ Query/QueryChannelClientState RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/consensus_state/revision/{revision_number}/height/{revision_height}:
+ get:
+ summary: |-
+ ChannelConsensusState queries for the consensus state for the channel
+ associated with the provided channel identifiers.
+ operationId: IbcCoreChannelV1ChannelConsensusState
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ consensus_state:
+ title: consensus state associated with the channel
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at least
+
+ one "/" character. The last segment of the URL's path must
+ represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in a
+ canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary all
+ types that they
+
+ expect it to use in the context of Any. However, for URLs
+ which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in the
+ official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer message
+ along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values in
+ the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by default
+ use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the last
+ '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with an
+
+ additional field `@type` which contains the type URL. Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding a
+ field
+
+ `value` which holds the custom JSON in addition to the `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ client_id:
+ type: string
+ title: client ID associated with the consensus state
+ proof:
+ type: string
+ format: byte
+ title: merkle proof of existence
+ proof_height:
+ title: height at which the proof was retrieved
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: |-
+ QueryChannelClientStateResponse is the Response type for the
+ Query/QueryChannelClientState RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ - name: revision_number
+ description: revision number of the consensus state
+ in: path
+ required: true
+ type: string
+ format: uint64
+ - name: revision_height
+ description: revision height of the consensus state
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/next_sequence:
+ get:
+ summary: >-
+ NextSequenceReceive returns the next receive sequence for a given
+ channel.
+ operationId: IbcCoreChannelV1NextSequenceReceive
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ next_sequence_receive:
+ type: string
+ format: uint64
+ title: next sequence receive number
+ proof:
+ type: string
+ format: byte
+ title: merkle proof of existence
+ proof_height:
+ title: height at which the proof was retrieved
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: |-
+ QuerySequenceResponse is the request type for the
+ Query/QueryNextSequenceReceiveResponse RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acknowledgements:
+ get:
+ summary: >-
+ PacketAcknowledgements returns all the packet acknowledgements
+ associated
+
+ with a channel.
+ operationId: IbcCoreChannelV1PacketAcknowledgements
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ acknowledgements:
+ type: array
+ items:
+ type: object
+ properties:
+ port_id:
+ type: string
+ description: channel port identifier.
+ channel_id:
+ type: string
+ description: channel unique identifier.
+ sequence:
+ type: string
+ format: uint64
+ description: packet sequence.
+ data:
+ type: string
+ format: byte
+ description: embedded data that represents packet state.
+ description: >-
+ PacketState defines the generic type necessary to retrieve
+ and store
+
+ packet commitments, acknowledgements, and receipts.
+
+ Caller is responsible for knowing the context necessary to
+ interpret this
+
+ state as a commitment, acknowledgement, or a receipt.
+ pagination:
+ title: pagination response
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ PageResponse is to be embedded in gRPC response messages where
+ the
+
+ corresponding request message has used PageRequest.
+
+ message SomeResponse {
+ repeated Bar results = 1;
+ PageResponse page = 2;
+ }
+ height:
+ title: query block height
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: |-
+ QueryPacketAcknowledgemetsResponse is the request type for the
+ Query/QueryPacketAcknowledgements RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ - name: packet_commitment_sequences
+ description: list of packet sequences
+ in: query
+ required: false
+ type: array
+ items:
+ type: string
+ format: uint64
+ collectionFormat: multi
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_acks/{sequence}:
+ get:
+ summary: PacketAcknowledgement queries a stored packet acknowledgement hash.
+ operationId: IbcCoreChannelV1PacketAcknowledgement
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ acknowledgement:
+ type: string
+ format: byte
+ title: packet associated with the request fields
+ proof:
+ type: string
+ format: byte
+ title: merkle proof of existence
+ proof_height:
+ title: height at which the proof was retrieved
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: >-
+ QueryPacketAcknowledgementResponse defines the client query
+ response for a
+
+ packet which also includes a proof and the height from which the
+
+ proof was retrieved
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ - name: sequence
+ description: packet sequence
+ in: path
+ required: true
+ type: string
+ format: uint64
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments:
+ get:
+ summary: |-
+ PacketCommitments returns all the packet commitments hashes associated
+ with a channel.
+ operationId: IbcCoreChannelV1PacketCommitments
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ commitments:
+ type: array
+ items:
+ type: object
+ properties:
+ port_id:
+ type: string
+ description: channel port identifier.
+ channel_id:
+ type: string
+ description: channel unique identifier.
+ sequence:
+ type: string
+ format: uint64
+ description: packet sequence.
+ data:
+ type: string
+ format: byte
+ description: embedded data that represents packet state.
+ description: >-
+ PacketState defines the generic type necessary to retrieve
+ and store
+
+ packet commitments, acknowledgements, and receipts.
+
+ Caller is responsible for knowing the context necessary to
+ interpret this
+
+ state as a commitment, acknowledgement, or a receipt.
+ pagination:
+ title: pagination response
+ type: object
+ properties:
+ next_key:
+ type: string
+ format: byte
+ description: |-
+ next_key is the key to be passed to PageRequest.key to
+ query the next page most efficiently. It will be empty if
+ there are no more results.
+ total:
+ type: string
+ format: uint64
+ title: >-
+ total is total number of results available if
+ PageRequest.count_total
+
+ was set, its value is undefined otherwise
+ description: >-
+ PageResponse is to be embedded in gRPC response messages where
+ the
+
+ corresponding request message has used PageRequest.
+
+ message SomeResponse {
+ repeated Bar results = 1;
+ PageResponse page = 2;
+ }
+ height:
+ title: query block height
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: |-
+ QueryPacketCommitmentsResponse is the request type for the
+ Query/QueryPacketCommitments RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ - name: pagination.key
+ description: |-
+ key is a value returned in PageResponse.next_key to begin
+ querying the next page most efficiently. Only one of offset or key
+ should be set.
+ in: query
+ required: false
+ type: string
+ format: byte
+ - name: pagination.offset
+ description: >-
+ offset is a numeric offset that can be used when key is unavailable.
+
+ It is less efficient than using key. Only one of offset or key
+ should
+
+ be set.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.limit
+ description: >-
+ limit is the total number of results to be returned in the result
+ page.
+
+ If left empty it will default to a value to be set by each app.
+ in: query
+ required: false
+ type: string
+ format: uint64
+ - name: pagination.count_total
+ description: >-
+ count_total is set to true to indicate that the result set should
+ include
+
+ a count of the total number of items available for pagination in
+ UIs.
+
+ count_total is only respected when offset is used. It is ignored
+ when key
+
+ is set.
+ in: query
+ required: false
+ type: boolean
+ - name: pagination.reverse
+ description: >-
+ reverse is set to true if results are to be returned in the
+ descending order.
+
+
+ Since: cosmos-sdk 0.43
+ in: query
+ required: false
+ type: boolean
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_ack_sequences}/unreceived_acks:
+ get:
+ summary: >-
+ UnreceivedAcks returns all the unreceived IBC acknowledgements
+ associated
+
+ with a channel and sequences.
+ operationId: IbcCoreChannelV1UnreceivedAcks
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ sequences:
+ type: array
+ items:
+ type: string
+ format: uint64
+ title: list of unreceived acknowledgement sequences
+ height:
+ title: query block height
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: |-
+ QueryUnreceivedAcksResponse is the response type for the
+ Query/UnreceivedAcks RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ - name: packet_ack_sequences
+ description: list of acknowledgement sequences
+ in: path
+ required: true
+ type: array
+ items:
+ type: string
+ format: uint64
+ collectionFormat: csv
+ minItems: 1
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{packet_commitment_sequences}/unreceived_packets:
+ get:
+ summary: >-
+ UnreceivedPackets returns all the unreceived IBC packets associated with
+ a
+
+ channel and sequences.
+ operationId: IbcCoreChannelV1UnreceivedPackets
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ sequences:
+ type: array
+ items:
+ type: string
+ format: uint64
+ title: list of unreceived packet sequences
+ height:
+ title: query block height
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: |-
+ QueryUnreceivedPacketsResponse is the response type for the
+ Query/UnreceivedPacketCommitments RPC method
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":
+ }
+
+ If the embedded message type is well-known and has a custom
+ JSON
+
+ representation, that representation will be embedded adding
+ a field
+
+ `value` which holds the custom JSON in addition to the
+ `@type`
+
+ field. Example (for message [google.protobuf.Duration][]):
+
+ {
+ "@type": "type.googleapis.com/google.protobuf.Duration",
+ "value": "1.212s"
+ }
+ parameters:
+ - name: channel_id
+ description: channel unique identifier
+ in: path
+ required: true
+ type: string
+ - name: port_id
+ description: port unique identifier
+ in: path
+ required: true
+ type: string
+ - name: packet_commitment_sequences
+ description: list of packet sequences
+ in: path
+ required: true
+ type: array
+ items:
+ type: string
+ format: uint64
+ collectionFormat: csv
+ minItems: 1
+ tags:
+ - Query
+ /ibc/core/channel/v1/channels/{channel_id}/ports/{port_id}/packet_commitments/{sequence}:
+ get:
+ summary: PacketCommitment queries a stored packet commitment hash.
+ operationId: IbcCoreChannelV1PacketCommitment
+ responses:
+ '200':
+ description: A successful response.
+ schema:
+ type: object
+ properties:
+ commitment:
+ type: string
+ format: byte
+ title: packet associated with the request fields
+ proof:
+ type: string
+ format: byte
+ title: merkle proof of existence
+ proof_height:
+ title: height at which the proof was retrieved
+ type: object
+ properties:
+ revision_number:
+ type: string
+ format: uint64
+ title: the revision that the client is currently on
+ revision_height:
+ type: string
+ format: uint64
+ title: the height within the given revision
+ description: >-
+ Normally the RevisionHeight is incremented at each height
+ while keeping
+
+ RevisionNumber the same. However some consensus algorithms may
+ choose to
+
+ reset the height in certain conditions e.g. hard forks,
+ state-machine
+
+ breaking changes In these cases, the RevisionNumber is
+ incremented so that
+
+ height continues to be monitonically increasing even as the
+ RevisionHeight
+
+ gets reset
+ title: >-
+ QueryPacketCommitmentResponse defines the client query response
+ for a packet
+
+ which also includes a proof and the height from which the proof
+ was
+
+ retrieved
+ default:
+ description: An unexpected error response.
+ schema:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ message:
+ type: string
+ details:
+ type: array
+ items:
+ type: object
+ properties:
+ '@type':
+ type: string
+ description: >-
+ A URL/resource name that uniquely identifies the type of
+ the serialized
+
+ protocol buffer message. This string must contain at
+ least
+
+ one "/" character. The last segment of the URL's path
+ must represent
+
+ the fully qualified name of the type (as in
+
+ `path/google.protobuf.Duration`). The name should be in
+ a canonical form
+
+ (e.g., leading "." is not accepted).
+
+
+ In practice, teams usually precompile into the binary
+ all types that they
+
+ expect it to use in the context of Any. However, for
+ URLs which use the
+
+ scheme `http`, `https`, or no scheme, one can optionally
+ set up a type
+
+ server that maps type URLs to message definitions as
+ follows:
+
+
+ * If no scheme is provided, `https` is assumed.
+
+ * An HTTP GET on the URL must yield a
+ [google.protobuf.Type][]
+ value in binary format, or produce an error.
+ * Applications are allowed to cache lookup results based
+ on the
+ URL, or have them precompiled into a binary to avoid any
+ lookup. Therefore, binary compatibility needs to be preserved
+ on changes to types. (Use versioned type names to manage
+ breaking changes.)
+
+ Note: this functionality is not currently available in
+ the official
+
+ protobuf release, and it is not used for type URLs
+ beginning with
+
+ type.googleapis.com.
+
+
+ Schemes other than `http`, `https` (or the empty scheme)
+ might be
+
+ used with implementation specific semantics.
+ additionalProperties: {}
+ description: >-
+ `Any` contains an arbitrary serialized protocol buffer
+ message along with a
+
+ URL that describes the type of the serialized message.
+
+
+ Protobuf library provides support to pack/unpack Any values
+ in the form
+
+ of utility functions or additional generated methods of the
+ Any type.
+
+
+ Example 1: Pack and unpack a message in C++.
+
+ Foo foo = ...;
+ Any any;
+ any.PackFrom(foo);
+ ...
+ if (any.UnpackTo(&foo)) {
+ ...
+ }
+
+ Example 2: Pack and unpack a message in Java.
+
+ Foo foo = ...;
+ Any any = Any.pack(foo);
+ ...
+ if (any.is(Foo.class)) {
+ foo = any.unpack(Foo.class);
+ }
+
+ Example 3: Pack and unpack a message in Python.
+
+ foo = Foo(...)
+ any = Any()
+ any.Pack(foo)
+ ...
+ if any.Is(Foo.DESCRIPTOR):
+ any.Unpack(foo)
+ ...
+
+ Example 4: Pack and unpack a message in Go
+
+ foo := &pb.Foo{...}
+ any, err := anypb.New(foo)
+ if err != nil {
+ ...
+ }
+ ...
+ foo := &pb.Foo{}
+ if err := any.UnmarshalTo(foo); err != nil {
+ ...
+ }
+
+ The pack methods provided by protobuf library will by
+ default use
+
+ 'type.googleapis.com/full.type.name' as the type URL and the
+ unpack
+
+ methods only use the fully qualified type name after the
+ last '/'
+
+ in the type URL, for example "foo.bar.com/x/y.z" will yield
+ type
+
+ name "y.z".
+
+
+
+ JSON
+
+ ====
+
+ The JSON representation of an `Any` value uses the regular
+
+ representation of the deserialized, embedded message, with
+ an
+
+ additional field `@type` which contains the type URL.
+ Example:
+
+ package google.profile;
+ message Person {
+ string first_name = 1;
+ string last_name = 2;
+ }
+
+ {
+ "@type": "type.googleapis.com/google.profile.Person",
+ "firstName": ,
+ "lastName":