qorechain-sdk 0.6.1

QoreChain SDK for Rust: networks, denom/address utils, HD accounts (native/EVM/SVM), ML-DSA-87 PQC signing, typed messages for all custom modules, tx lifecycle (auto-gas, tracking, search), typed queries, WS subscriptions, and REST/JSON-RPC read clients.
Documentation
// @generated
// This file is @generated by prost-build.
#[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>,
}
/// SpendingRule defines spending limits for an abstract account.
#[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 {
}
/// MsgRegisterAuthenticator links a foreign-scheme wallet key (e.g. a Phantom
/// ed25519 key) to an account so it may act for that account under least-privilege,
/// time-bounded, revocable terms. Only the account owner (root key) may call it.
#[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,
    /// "ed25519" | "secp256k1"
    #[prost(string, tag="3")]
    pub scheme: ::prost::alloc::string::String,
    /// raw public key bytes
    #[prost(bytes="vec", tag="4")]
    pub pubkey: ::prost::alloc::vec::Vec<u8>,
    /// e.g. "svm", "send"
    #[prost(string, repeated, tag="5")]
    pub permissions: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    /// unix seconds; must be within MaxSessionTTL
    #[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 {
}
/// MsgRevokeAuthenticator instantly disables a previously linked wallet key.
/// Only the account owner (root key) may call it.
#[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 {
}
// @@protoc_insertion_point(module)