use cdk_common::wallet::WalletSaga;
use uuid::Uuid;
use crate::amount::SplitTarget;
use crate::nuts::{PreSwap, Proofs, PublicKey, SpendingConditions};
use crate::Amount;
#[derive(Debug)]
pub struct Initial {
pub operation_id: Uuid,
}
#[derive(Debug)]
pub struct Prepared {
pub operation_id: Uuid,
pub amount: Option<Amount>,
pub amount_split_target: SplitTarget,
pub input_ys: Vec<PublicKey>,
pub spending_conditions: Option<SpendingConditions>,
pub pre_swap: PreSwap,
pub saga: WalletSaga,
}
#[derive(Debug)]
pub struct Finalized {
pub send_proofs: Option<Proofs>,
}