Crate nnsdao_sdk_basic
source · [−]Expand description
This SDK provides the basic functionality to build a DAO, which can be imported and used. To use it, you need to implement DaoCustomFn Trait and customize the business logic. Example of implementing DaoCustomFn Trait
#[derive(Clone, Debug, Default, CandidType, Deserialize)]
struct CustomFn{}
#[async_trait]
impl DaoCustomFn for CustomFn {
async fn is_member(&self, _member: Principal) -> Result<bool, String> {
Ok(true)
}
async fn handle_proposal(&self) -> Result<(), String> {
Ok(())
}
}
let dao_basic = DaoBasic::new(CustomFn::default());
dao_basic.get_proposal(1);
Structs
Change proposal status parameters
Basic DAO structure
Proposal unit structure
Create parameters for the proposal
Voting parameters
Enums
The state of a Proposal
Votes with weights
Traits
You need to use the basic methods implemented by the party
Type Definitions
Voting weight