use light_compressed_account::instruction_data::compressed_proof::ValidityProof;
pub trait LightCpi: Sized {
fn new_cpi(cpi_signer: crate::CpiSigner, proof: ValidityProof) -> Self;
fn get_mode(&self) -> u8;
fn get_bump(&self) -> u8;
#[must_use = "write_to_cpi_context_first returns a new value"]
fn write_to_cpi_context_first(self) -> Self;
#[must_use = "write_to_cpi_context_set returns a new value"]
fn write_to_cpi_context_set(self) -> Self;
#[must_use = "execute_with_cpi_context returns a new value"]
fn execute_with_cpi_context(self) -> Self;
fn get_with_cpi_context(&self) -> bool;
fn get_cpi_context(
&self,
) -> &light_compressed_account::instruction_data::cpi_context::CompressedCpiContext;
fn has_read_only_accounts(&self) -> bool;
}