pub trait CreditsAleo<N: Network> {
Show 24 methods
// Required methods
fn new(deployer: &Account<N>, endpoint: &str) -> Result<Self, Error>
where Self: Sized;
fn bond_validator(
&self,
account: &Account<N>,
withdrawal_address: Address<N>,
amount: u64,
commission: u8,
) -> Result<(), Error>;
fn bond_public(
&self,
account: &Account<N>,
validator: Address<N>,
withdrawal_address: Address<N>,
amount: u64,
) -> Result<(), Error>;
fn unbond_public(
&self,
account: &Account<N>,
staker: Address<N>,
amount: u64,
) -> Result<(), Error>;
fn claim_unbond_public(
&self,
account: &Account<N>,
staker: Address<N>,
) -> Result<(), Error>;
fn set_validator_state(
&self,
account: &Account<N>,
is_open: bool,
) -> Result<(), Error>;
fn transfer_public(
&self,
account: &Account<N>,
receiver: Address<N>,
amount: u64,
) -> Result<(), Error>;
fn transfer_public_as_signer(
&self,
account: &Account<N>,
receiver: Address<N>,
amount: u64,
) -> Result<(), Error>;
fn transfer_private(
&self,
account: &Account<N>,
sender_record: Credits<N>,
receiver: Address<N>,
amount: u64,
) -> Result<(Credits<N>, Credits<N>), Error>;
fn transfer_private_to_public(
&self,
account: &Account<N>,
sender_record: Credits<N>,
receiver: Address<N>,
amount: u64,
) -> Result<Credits<N>, Error>;
fn transfer_public_to_private(
&self,
account: &Account<N>,
receiver: Address<N>,
amount: u64,
) -> Result<Credits<N>, Error>;
fn join(
&self,
account: &Account<N>,
first_record: Credits<N>,
second_record: Credits<N>,
) -> Result<Credits<N>, Error>;
fn split(
&self,
account: &Account<N>,
record: Credits<N>,
amount: u64,
) -> Result<(Credits<N>, Credits<N>), Error>;
fn fee_private(
&self,
account: &Account<N>,
sender_record: Credits<N>,
amount: u64,
priority_fee: u64,
deployment_id: Field<N>,
) -> Result<Credits<N>, Error>;
fn fee_public(
&self,
account: &Account<N>,
amount: u64,
priority_fee: u64,
deployment_id: Field<N>,
) -> Result<(), Error>;
fn upgrade(
&self,
account: &Account<N>,
record: Credits<N>,
) -> Result<Credits<N>, Error>;
fn get_committee(&self, key: Address<N>) -> Option<CommitteeState<N>>;
fn get_delegated(&self, key: Address<N>) -> Option<u64>;
fn get_metadata(&self, key: Address<N>) -> Option<u32>;
fn get_bonded(&self, key: Address<N>) -> Option<BondState<N>>;
fn get_unbonding(&self, key: Address<N>) -> Option<UnbondState<N>>;
fn get_account(&self, key: Address<N>) -> Option<u64>;
fn get_withdraw(&self, key: Address<N>) -> Option<Address<N>>;
fn get_pool(&self, key: Address<N>) -> Option<u64>;
}Expand description
Program trait with network and interpreter implementations.