drive/state_transition_action/shielded/shield/v0/
mod.rs

1mod transformer;
2
3use crate::state_transition_action::shielded::ShieldedActionNote;
4use dpp::address_funds::{AddressFundsFeeStrategy, PlatformAddress};
5use dpp::fee::Credits;
6use dpp::prelude::{AddressNonce, UserFeeIncrease};
7use std::collections::BTreeMap;
8
9/// Shield transition action v0
10#[derive(Debug, Clone)]
11pub struct ShieldTransitionActionV0 {
12    /// inputs with remaining balance after shielding
13    pub inputs_with_remaining_balance: BTreeMap<PlatformAddress, (AddressNonce, Credits)>,
14    /// The amount being shielded (sent into the shielded pool)
15    pub shield_amount: Credits,
16    /// Notes from the orchard bundle actions
17    pub notes: Vec<ShieldedActionNote>,
18    /// fee strategy
19    pub fee_strategy: AddressFundsFeeStrategy,
20    /// fee multiplier
21    pub user_fee_increase: UserFeeIncrease,
22    /// Current total balance of the shielded pool
23    pub current_total_balance: Credits,
24}