#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct ConfigView {
#[prost(bool, tag="1")]
pub enabled: bool,
#[prost(int32, tag="2")]
pub max_session_keys: i32,
#[prost(int32, tag="3")]
pub max_spending_rules: i32,
#[prost(int64, tag="4")]
pub default_session_ttl: i64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AccountView {
#[prost(string, tag="1")]
pub address: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub contract_address: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub account_type: ::prost::alloc::string::String,
#[prost(uint32, tag="4")]
pub spending_rules_count: u32,
#[prost(uint32, tag="5")]
pub session_keys_count: u32,
#[prost(int64, tag="6")]
pub created_at: i64,
#[prost(string, tag="7")]
pub owner: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryConfigRequest {
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryConfigResponse {
#[prost(message, optional, tag="1")]
pub config: ::core::option::Option<ConfigView>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryAccountRequest {
#[prost(string, tag="1")]
pub address: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryAccountResponse {
#[prost(message, optional, tag="1")]
pub account: ::core::option::Option<AccountView>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryAccountsRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryAccountsResponse {
#[prost(message, repeated, tag="1")]
pub accounts: ::prost::alloc::vec::Vec<AccountView>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryPermissionSchemaRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryPermissionSchemaResponse {
#[prost(string, tag="1")]
pub schema_version: ::prost::alloc::string::String,
#[prost(string, repeated, tag="2")]
pub permissions: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(map="string, string", tag="3")]
pub msg_permissions: ::std::collections::HashMap<::prost::alloc::string::String, ::prost::alloc::string::String>,
#[prost(string, repeated, tag="4")]
pub key_management_msgs: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SpendingRule {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(int64, tag="2")]
pub daily_limit: i64,
#[prost(int64, tag="3")]
pub per_tx_limit: i64,
#[prost(string, repeated, tag="4")]
pub allowed_denoms: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(bool, tag="5")]
pub enabled: bool,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgCreateAbstractAccount {
#[prost(string, tag="1")]
pub owner: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub account_type: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgCreateAbstractAccountResponse {
#[prost(string, tag="1")]
pub address: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgUpdateSpendingRules {
#[prost(string, tag="1")]
pub owner: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub account_address: ::prost::alloc::string::String,
#[prost(message, repeated, tag="3")]
pub rules: ::prost::alloc::vec::Vec<SpendingRule>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgUpdateSpendingRulesResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgRegisterAuthenticator {
#[prost(string, tag="1")]
pub owner: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub account_address: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub scheme: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="4")]
pub pubkey: ::prost::alloc::vec::Vec<u8>,
#[prost(string, repeated, tag="5")]
pub permissions: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(int64, tag="6")]
pub expiry_unix: i64,
#[prost(string, tag="7")]
pub label: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgRegisterAuthenticatorResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgRevokeAuthenticator {
#[prost(string, tag="1")]
pub owner: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub account_address: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub scheme: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="4")]
pub pubkey: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgRevokeAuthenticatorResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgExecuteEvm {
#[prost(string, tag="1")]
pub relayer: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub account: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub scheme: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="4")]
pub pubkey: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes="vec", tag="5")]
pub signature: ::prost::alloc::vec::Vec<u8>,
#[prost(string, tag="6")]
pub to: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub value: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="8")]
pub data: ::prost::alloc::vec::Vec<u8>,
#[prost(uint64, tag="9")]
pub gas_limit: u64,
#[prost(uint64, tag="10")]
pub nonce: u64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgExecuteEvmResponse {
#[prost(bool, tag="1")]
pub success: bool,
#[prost(bytes="vec", tag="2")]
pub ret: ::prost::alloc::vec::Vec<u8>,
#[prost(uint64, tag="3")]
pub gas_used: u64,
#[prost(string, tag="4")]
pub vm_error: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgExecuteCosmos {
#[prost(string, tag="1")]
pub relayer: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub account: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub scheme: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="4")]
pub pubkey: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes="vec", tag="5")]
pub signature: ::prost::alloc::vec::Vec<u8>,
#[prost(string, tag="6")]
pub to: ::prost::alloc::string::String,
#[prost(message, repeated, tag="7")]
pub amount: ::prost::alloc::vec::Vec<::cosmrs::proto::cosmos::base::v1beta1::Coin>,
#[prost(uint64, tag="8")]
pub nonce: u64,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgExecuteCosmosResponse {
#[prost(bool, tag="1")]
pub success: bool,
}