fn deposit(
env: soroban_sdk::Env,
campaign_id: u64,
donor: soroban_sdk::Address,
amount: i128,
)
fn get_admin(env: soroban_sdk::Env) -> soroban_sdk::Address
fn has_voted(
env: soroban_sdk::Env,
campaign_id: u64,
donor: soroban_sdk::Address,
) -> bool
fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
token_address: soroban_sdk::Address,
)
Donor casts a vote to pause a suspicious campaign. Vote weight = donor's total deposited amount. Auto-pauses the campaign when cumulative weight >= 60% of total_deposited.
fn vote_pause(env: soroban_sdk::Env, campaign_id: u64, donor: soroban_sdk::Address)
Donor retracts their pause vote. If vote weight drops below the threshold the campaign is unpaused.
fn revoke_vote(env: soroban_sdk::Env, campaign_id: u64, donor: soroban_sdk::Address)
fn get_campaign(env: soroban_sdk::Env, campaign_id: u64) -> Campaign
fn get_milestone(
env: soroban_sdk::Env,
campaign_id: u64,
milestone_index: u32,
) -> Milestone
fn campaign_count(env: soroban_sdk::Env) -> u64
fn pause_campaign(env: soroban_sdk::Env, campaign_id: u64)
fn create_campaign(
env: soroban_sdk::Env,
organizer: soroban_sdk::Address,
milestone_amounts: soroban_sdk::Vec,
milestone_recipients: soroban_sdk::Vec,
milestone_descs: soroban_sdk::Vec,
) -> u64
fn get_vote_weight(env: soroban_sdk::Env, campaign_id: u64) -> i128
Executes a proportional refund of unspent escrow funds to all donors. Requires: campaign paused AND vote weight >= 60% threshold.
fn execute_clawback(env: soroban_sdk::Env, campaign_id: u64)
fn unpause_campaign(env: soroban_sdk::Env, campaign_id: u64)
fn verify_milestone(env: soroban_sdk::Env, campaign_id: u64)
fn get_donor_deposit(
env: soroban_sdk::Env,
campaign_id: u64,
donor: soroban_sdk::Address,
) -> i128
fn release_milestone(env: soroban_sdk::Env, campaign_id: u64)