light_sdk/cpi/v1/
mod.rs

1//! V1 CPI for Light system program.
2//!
3//! # Main Types
4//!
5//! - [`LightSystemProgramCpi`] - CPI instruction data builder
6//! - [`CpiAccounts`] - CPI accounts struct
7//!
8//!
9//! # Advanced Usage
10//!
11//! For maximum flexible light system program CPIs, see the [`lowlevel`] module or use `light-compressed-account` directly.
12
13mod accounts;
14mod invoke;
15
16pub use accounts::CpiAccounts;
17pub use invoke::LightSystemProgramCpi;
18
19/// Low-level types and functions for flexible Light system program CPIs.
20///
21/// # Main Types
22///
23/// For most use cases, you only need:
24/// - [`LightSystemProgramCpi`] - Main CPI interface
25/// - [`CpiAccounts`] - Account management
26///
27/// The remaining types in this module are exported for low-level operations and internal use.
28pub mod lowlevel {
29    pub use super::accounts::{
30        get_account_metas_from_config, CpiInstructionConfig, SYSTEM_ACCOUNTS_LEN,
31    };
32}