#[non_exhaustive]pub enum ConfigAction {
AddMember {
new_member: Member,
},
RemoveMember {
old_member: Pubkey,
},
ChangeThreshold {
new_threshold: u16,
},
SetTimeLock {
new_time_lock: u32,
},
AddSpendingLimit {
create_key: Pubkey,
vault_index: u8,
mint: Pubkey,
amount: u64,
period: Period,
members: Vec<Pubkey>,
destinations: Vec<Pubkey>,
},
RemoveSpendingLimit {
spending_limit: Pubkey,
},
}Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
AddMember
Add a new member to the multisig.
RemoveMember
Fields
§
old_member: PubkeyRemove a member from the multisig.
ChangeThreshold
Change the threshold of the multisig.
SetTimeLock
Change the time_lock of the multisig.
AddSpendingLimit
Fields
§
create_key: PubkeyKey that is used to seed the SpendingLimit PDA.
§
mint: PubkeyThe token mint the spending limit is for.
§
amount: u64The amount of tokens that can be spent in a period.
This amount is in decimals of the mint,
so 1 SOL would be 1_000_000_000 and 1 USDC would be 1_000_000.
§
period: PeriodThe reset period of the spending limit.
When it passes, the remaining amount is reset, unless it’s Period::OneTime.
Change the time_lock of the multisig.
RemoveSpendingLimit
Fields
§
spending_limit: PubkeyRemove a spending limit from the multisig.
Trait Implementations§
source§impl BorshDeserialize for ConfigActionwhere
Member: BorshDeserialize,
Pubkey: BorshDeserialize,
u16: BorshDeserialize,
u32: BorshDeserialize,
u8: BorshDeserialize,
u64: BorshDeserialize,
Period: BorshDeserialize,
Vec<Pubkey>: BorshDeserialize,
impl BorshDeserialize for ConfigActionwhere Member: BorshDeserialize, Pubkey: BorshDeserialize, u16: BorshDeserialize, u32: BorshDeserialize, u8: BorshDeserialize, u64: BorshDeserialize, Period: BorshDeserialize, Vec<Pubkey>: BorshDeserialize,
source§impl BorshSerialize for ConfigActionwhere
Member: BorshSerialize,
Pubkey: BorshSerialize,
u16: BorshSerialize,
u32: BorshSerialize,
u8: BorshSerialize,
u64: BorshSerialize,
Period: BorshSerialize,
Vec<Pubkey>: BorshSerialize,
impl BorshSerialize for ConfigActionwhere Member: BorshSerialize, Pubkey: BorshSerialize, u16: BorshSerialize, u32: BorshSerialize, u8: BorshSerialize, u64: BorshSerialize, Period: BorshSerialize, Vec<Pubkey>: BorshSerialize,
source§impl Clone for ConfigAction
impl Clone for ConfigAction
source§fn clone(&self) -> ConfigAction
fn clone(&self) -> ConfigAction
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl PartialEq<ConfigAction> for ConfigAction
impl PartialEq<ConfigAction> for ConfigAction
source§fn eq(&self, other: &ConfigAction) -> bool
fn eq(&self, other: &ConfigAction) -> bool
This method tests for
self and other values to be equal, and is used
by ==.impl Eq for ConfigAction
impl StructuralEq for ConfigAction
impl StructuralPartialEq for ConfigAction
Auto Trait Implementations§
impl RefUnwindSafe for ConfigAction
impl Send for ConfigAction
impl Sync for ConfigAction
impl Unpin for ConfigAction
impl UnwindSafe for ConfigAction
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.