Skip to main content

krusty_kms_client/
lib.rs

1//! Starknet client for interacting with TONGO contracts and the wider Starknet ecosystem.
2//!
3//! This crate provides utilities and clients for deploying and interacting
4//! with TONGO contracts on Starknet using the starknet-rs SDK, as well as
5//! higher-level abstractions for wallets, ERC-20 tokens, staking, and
6//! transaction batching.
7
8pub mod abi;
9pub mod account;
10pub mod address;
11pub mod contract;
12pub mod erc20;
13pub mod events;
14pub mod operations;
15pub mod provider;
16pub mod serialization;
17pub mod staking;
18pub mod tx;
19pub mod types;
20pub mod wallet;
21
22pub use account::Account;
23pub use address::{pub_key_to_tongo_address, tongo_address_to_pub_key};
24pub use contract::TongoContract;
25pub use erc20::Erc20;
26pub use events::TongoEventReader;
27pub use krusty_kms_common::{KmsError, Result};
28pub use operations::{
29    build_erc20_approve, build_fund_calls, build_outside_fund_calls, build_ragequit_call,
30    build_rollover_call, build_transfer_call, build_withdraw_call,
31};
32pub use provider::create_provider;
33pub use staking::{PoolPosition, Staking};
34pub use starknet_rust;
35pub use tx::{Tx, TxBuilder};
36pub use types::{
37    decrypt_cipher_balance, erc20_to_tongo, tongo_to_erc20, AccountState, CipherBalance,
38    DecryptedAccountState,
39};
40pub use wallet::deploy::{deploy_oz_account, estimate_deploy_fee, DeployResult};
41pub use wallet::{Wallet, WalletExecutor};