Skip to main content

pump_rust_client/
lib.rs

1//! Rust SDK for the pump and pump_amm programs.
2//!
3//! Default features pull in `solana-client` for [`AsyncPumpClient`]. For CPI-only
4//! use, set `default-features = false` (instruction helpers use `solana-program`).
5
6pub mod pump {
7    use anchor_lang::declare_program;
8    declare_program!(pump);
9    // We export accounts from state, which are wrapped for better deseralization
10    pub(crate) use pump::accounts;
11    pub use pump::{client, constants, cpi, events, program, types, utils, ID, ID_CONST};
12}
13pub mod pump_amm {
14    use anchor_lang::declare_program;
15    declare_program!(pump_amm);
16    // We export accounts from state, which are wrapped for better deseralization
17    pub(crate) use pump_amm::accounts;
18    pub use pump_amm::{client, constants, cpi, events, program, types, utils, ID, ID_CONST};
19}
20pub mod pump_agent_payments {
21    use anchor_lang::declare_program;
22    declare_program!(pump_agent_payments);
23    // We export accounts from state, which are wrapped for better deseralization
24    pub(crate) use pump_agent_payments::accounts;
25    pub use pump_agent_payments::{
26        client, constants, cpi, events, program, types, utils, ID, ID_CONST,
27    };
28}
29
30pub mod account_wrapper;
31pub mod accounts;
32#[cfg(feature = "client")]
33pub mod async_client;
34pub mod constants;
35pub mod errors;
36pub mod math;
37pub mod pda;
38pub mod sdk;
39pub mod state;
40pub mod token;
41
42pub use account_wrapper::AccountWrapper;
43pub use accounts::decode;
44#[cfg(feature = "client")]
45pub use async_client::{AsyncPumpClient, ComputeBudget};
46pub use errors::{PumpClientError, Result};
47pub use sdk::{
48    AmmQuoteSource, CreateCoinParams, PumpPoolCtx, PumpPoolQuoteCtx, PumpSdk, Quote,
49    TradeQuoteParams, TradeTxParams, TradeTxWithVenueParams, TradeVenue,
50};