bittensor_rs/queries/
mod.rs

1//! # Chain Queries
2//!
3//! Read-only queries against Bittensor blockchain state.
4//!
5//! This module provides functions for querying:
6//!
7//! - **Account**: Balances, stake amounts, and stake info
8//! - **Metagraph**: Full or selective metagraph data for subnets
9//! - **Neurons**: Individual neuron info and UID lookups
10//! - **Subnets**: Subnet existence, hyperparameters, and metadata
11//!
12//! # Example
13//!
14//! ```rust,ignore
15//! use bittensor_rs::queries::{get_metagraph, get_balance, get_neuron};
16//!
17//! async fn example(client: &subxt::OnlineClient<subxt::PolkadotConfig>, account_id: &subxt::config::polkadot::AccountId32) -> Result<(), Box<dyn std::error::Error>> {
18//!     // Get metagraph for subnet 1
19//!     let metagraph = get_metagraph(client, 1).await?;
20//!
21//!     // Check account balance
22//!     let balance = get_balance(client, account_id).await?;
23//!
24//!     // Get specific neuron by UID
25//!     let neuron = get_neuron(client, 1, 0).await?;
26//!     Ok(())
27//! }
28//! ```
29//!
30//! All query functions accept a subxt `OnlineClient` and return typed results.
31
32mod account;
33mod metagraph;
34mod neuron;
35mod subnet;
36
37pub use account::{
38    get_balance, get_stake, get_stake_info_for_coldkey, get_total_network_stake, StakeInfo,
39};
40pub use metagraph::{fields, get_metagraph, Metagraph, SelectiveMetagraph};
41pub use neuron::{get_neuron, get_neuron_lite, get_uid_for_hotkey, NeuronInfo, NeuronInfoLite};
42pub use subnet::{
43    get_subnet_hyperparameters, get_subnet_info, get_total_subnets, subnet_exists,
44    SubnetHyperparameters, SubnetInfo,
45};