Skip to main content

ic_query/icrc/
mod.rs

1//! Module: icrc
2//!
3//! Responsibility: top-level generic ICRC ledger query commands.
4//! Does not own: SNS lookup, NNS registry cache behavior, or release flow.
5//! Boundary: exposes live read-only token metadata, account balance, allowance,
6//! index discovery, transaction history, block type, and archive reports.
7
8#[cfg(feature = "cli")]
9mod commands;
10#[cfg(feature = "host")]
11pub(crate) mod ledger;
12#[cfg(feature = "host")]
13mod live;
14mod model;
15mod text;
16
17#[cfg(feature = "host")]
18pub use live::{
19    build_icrc_allowance_report, build_icrc_archives_report, build_icrc_balance_report,
20    build_icrc_block_types_report, build_icrc_capabilities_report, build_icrc_index_report,
21    build_icrc_tip_certificate_report, build_icrc_token_report, build_icrc_transactions_report,
22};
23pub use model::{
24    IcrcAllowanceReport, IcrcAllowanceRequest, IcrcArchiveFollowErrorRow, IcrcArchiveRow,
25    IcrcArchivedBlocksRow, IcrcArchivedRangeRow, IcrcArchivesReport, IcrcArchivesRequest,
26    IcrcBalanceReport, IcrcBalanceRequest, IcrcBlockTypeRow, IcrcBlockTypesReport,
27    IcrcBlockTypesRequest, IcrcCapabilitiesReport, IcrcCapabilitiesRequest, IcrcCapabilityRow,
28    IcrcError, IcrcFollowedArchiveBlockRow, IcrcIndexReport, IcrcIndexRequest,
29    IcrcTipCertificateReport, IcrcTipCertificateRequest, IcrcTokenMetadataRow, IcrcTokenReport,
30    IcrcTokenRequest, IcrcTokenStandardRow, IcrcTransactionBlockRow, IcrcTransactionsReport,
31    IcrcTransactionsRequest,
32};
33pub use text::{
34    icrc_allowance_report_text, icrc_archives_report_text, icrc_balance_report_text,
35    icrc_block_types_report_text, icrc_capabilities_report_text, icrc_index_report_text,
36    icrc_tip_certificate_report_text, icrc_token_report_text, icrc_transactions_report_text,
37};
38
39#[cfg(feature = "cli")]
40pub use commands::run;
41
42#[cfg(all(test, feature = "cli", feature = "host"))]
43mod tests;