use super::*;
pub trait ReservableTree: Tree {
fn reserve(
key: impl Into<Self::NodeId>,
new_key: impl Into<Self::NodeId>,
amount: Self::Balance,
) -> Result<(), Self::Error>;
fn system_reserve(
key: impl Into<Self::NodeId>,
amount: Self::Balance,
) -> Result<(), Self::Error>;
fn system_unreserve(key: impl Into<Self::NodeId>) -> Result<Self::Balance, Self::Error>;
fn get_system_reserve(key: impl Into<Self::NodeId>) -> Result<Self::Balance, Self::Error>;
}