use osmosis_std_derive::CosmwasmExt;
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.FeeToken")]
pub struct FeeToken {
#[prost(string, tag = "1")]
pub denom: ::prost::alloc::string::String,
#[prost(uint64, tag = "2")]
#[serde(alias = "poolID")]
#[serde(
serialize_with = "crate::serde::as_str::serialize",
deserialize_with = "crate::serde::as_str::deserialize"
)]
pub pool_id: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.Params")]
pub struct Params {
#[prost(string, repeated, tag = "1")]
pub whitelisted_fee_token_setters: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.GenesisState")]
pub struct GenesisState {
#[prost(string, tag = "1")]
pub basedenom: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub feetokens: ::prost::alloc::vec::Vec<FeeToken>,
#[prost(message, optional, tag = "4")]
pub params: ::core::option::Option<Params>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.UpdateFeeTokenProposal")]
pub struct UpdateFeeTokenProposal {
#[prost(string, tag = "1")]
pub title: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub description: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "3")]
pub feetokens: ::prost::alloc::vec::Vec<FeeToken>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryFeeTokensRequest")]
#[proto_query(
path = "/osmosis.txfees.v1beta1.Query/FeeTokens",
response_type = QueryFeeTokensResponse
)]
pub struct QueryFeeTokensRequest {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryFeeTokensResponse")]
pub struct QueryFeeTokensResponse {
#[prost(message, repeated, tag = "1")]
pub fee_tokens: ::prost::alloc::vec::Vec<FeeToken>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryDenomSpotPriceRequest")]
#[proto_query(
path = "/osmosis.txfees.v1beta1.Query/DenomSpotPrice",
response_type = QueryDenomSpotPriceResponse
)]
pub struct QueryDenomSpotPriceRequest {
#[prost(string, tag = "1")]
pub denom: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryDenomSpotPriceResponse")]
pub struct QueryDenomSpotPriceResponse {
#[prost(uint64, tag = "1")]
#[serde(alias = "poolID")]
#[serde(
serialize_with = "crate::serde::as_str::serialize",
deserialize_with = "crate::serde::as_str::deserialize"
)]
pub pool_id: u64,
#[prost(string, tag = "2")]
pub spot_price: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryDenomPoolIdRequest")]
#[proto_query(
path = "/osmosis.txfees.v1beta1.Query/DenomPoolId",
response_type = QueryDenomPoolIdResponse
)]
pub struct QueryDenomPoolIdRequest {
#[prost(string, tag = "1")]
pub denom: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryDenomPoolIdResponse")]
pub struct QueryDenomPoolIdResponse {
#[prost(uint64, tag = "1")]
#[serde(alias = "poolID")]
#[serde(
serialize_with = "crate::serde::as_str::serialize",
deserialize_with = "crate::serde::as_str::deserialize"
)]
pub pool_id: u64,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryBaseDenomRequest")]
#[proto_query(
path = "/osmosis.txfees.v1beta1.Query/BaseDenom",
response_type = QueryBaseDenomResponse
)]
pub struct QueryBaseDenomRequest {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryBaseDenomResponse")]
pub struct QueryBaseDenomResponse {
#[prost(string, tag = "1")]
pub base_denom: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryEipBaseFeeRequest")]
#[proto_query(
path = "/osmosis.txfees.v1beta1.Query/GetEipBaseFee",
response_type = QueryEipBaseFeeResponse
)]
pub struct QueryEipBaseFeeRequest {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.QueryEipBaseFeeResponse")]
pub struct QueryEipBaseFeeResponse {
#[prost(string, tag = "1")]
pub base_fee: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.MsgSetFeeTokens")]
pub struct MsgSetFeeTokens {
#[prost(message, repeated, tag = "1")]
pub fee_tokens: ::prost::alloc::vec::Vec<FeeToken>,
#[prost(string, tag = "2")]
pub sender: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
Clone,
PartialEq,
Eq,
::prost::Message,
::serde::Serialize,
::serde::Deserialize,
::schemars::JsonSchema,
CosmwasmExt,
)]
#[proto_message(type_url = "/osmosis.txfees.v1beta1.MsgSetFeeTokensResponse")]
pub struct MsgSetFeeTokensResponse {}
pub struct TxfeesQuerier<'a, Q: cosmwasm_std::CustomQuery> {
querier: &'a cosmwasm_std::QuerierWrapper<'a, Q>,
}
impl<'a, Q: cosmwasm_std::CustomQuery> TxfeesQuerier<'a, Q> {
pub fn new(querier: &'a cosmwasm_std::QuerierWrapper<'a, Q>) -> Self {
Self { querier }
}
pub fn fee_tokens(&self) -> Result<QueryFeeTokensResponse, cosmwasm_std::StdError> {
QueryFeeTokensRequest {}.query(self.querier)
}
pub fn denom_spot_price(
&self,
denom: ::prost::alloc::string::String,
) -> Result<QueryDenomSpotPriceResponse, cosmwasm_std::StdError> {
QueryDenomSpotPriceRequest { denom }.query(self.querier)
}
pub fn denom_pool_id(
&self,
denom: ::prost::alloc::string::String,
) -> Result<QueryDenomPoolIdResponse, cosmwasm_std::StdError> {
QueryDenomPoolIdRequest { denom }.query(self.querier)
}
pub fn base_denom(&self) -> Result<QueryBaseDenomResponse, cosmwasm_std::StdError> {
QueryBaseDenomRequest {}.query(self.querier)
}
pub fn get_eip_base_fee(&self) -> Result<QueryEipBaseFeeResponse, cosmwasm_std::StdError> {
QueryEipBaseFeeRequest {}.query(self.querier)
}
}