use {
crate::extension::{Extension, ExtensionType},
bytemuck::{Pod, Zeroable},
trezoa_zk_sdk::encryption::pod::{
auth_encryption::PodAeCiphertext,
elgamal::{PodElGamalCiphertext, PodElGamalPubkey},
},
};
pub mod instruction;
#[derive(Clone, Copy, Debug, Default, PartialEq, Pod, Zeroable)]
#[repr(C)]
pub struct ConfidentialMintBurn {
pub confidential_supply: PodElGamalCiphertext,
pub decryptable_supply: PodAeCiphertext,
pub supply_elgamal_pubkey: PodElGamalPubkey,
pub pending_burn: PodElGamalCiphertext,
}
impl Extension for ConfidentialMintBurn {
const TYPE: ExtensionType = ExtensionType::ConfidentialMintBurn;
}