fn init(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
shares: soroban_sdk::Vec,
mutable: bool,
participation_token: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn claim(
env: soroban_sdk::Env,
shareholder: soroban_sdk::Address,
round_id: u64,
) -> Result
fn upgrade(
env: soroban_sdk::Env,
new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>
fn claim_all(
env: soroban_sdk::Env,
shareholder: soroban_sdk::Address,
) -> Result
fn get_round(
env: soroban_sdk::Env,
round_id: u64,
) -> Result
fn get_share(
env: soroban_sdk::Env,
shareholder: soroban_sdk::Address,
) -> Result
fn set_admin(
env: soroban_sdk::Env,
new_admin: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn buy_shares(
env: soroban_sdk::Env,
buyer: soroban_sdk::Address,
seller: soroban_sdk::Address,
shares_amount: i128,
) -> Result<(), soroban_sdk::Error>
fn get_config(env: soroban_sdk::Env) -> Result
fn get_listing(
env: soroban_sdk::Env,
seller: soroban_sdk::Address,
) -> Option
fn get_schedule(env: soroban_sdk::Env) -> Option
fn set_schedule(
env: soroban_sdk::Env,
first_distribution_time: u64,
interval_seconds: u64,
total_distributions: u32,
) -> Result<(), soroban_sdk::Error>
fn get_claimable(
env: soroban_sdk::Env,
shareholder: soroban_sdk::Address,
round_id: u64,
) -> Result
fn lock_contract(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn update_shares(
env: soroban_sdk::Env,
shares: soroban_sdk::Vec,
) -> Result<(), soroban_sdk::Error>
fn cancel_listing(
env: soroban_sdk::Env,
seller: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn get_allocation(
env: soroban_sdk::Env,
shareholder: soroban_sdk::Address,
token: soroban_sdk::Address,
) -> Result
fn init_with_type(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
shares: soroban_sdk::Vec,
mutable: bool,
participation_token: soroban_sdk::Address,
pool_type: PoolType,
) -> Result<(), soroban_sdk::Error>
fn transfer_shares(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
amount: i128,
) -> Result<(), soroban_sdk::Error>
fn transfer_tokens(
env: soroban_sdk::Env,
token_address: soroban_sdk::Address,
recipient: soroban_sdk::Address,
amount: i128,
) -> Result<(), soroban_sdk::Error>
fn claim_with_proof(
env: soroban_sdk::Env,
shareholder: soroban_sdk::Address,
round_id: u64,
balance: i128,
proof: soroban_sdk::Vec>,
) -> Result
fn disable_schedule(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn is_round_expired(
env: soroban_sdk::Env,
round_id: u64,
) -> Result
fn get_active_rounds(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn is_round_claimable(
env: soroban_sdk::Env,
round_id: u64,
) -> Result
fn create_distribution(
env: soroban_sdk::Env,
token_address: soroban_sdk::Address,
) -> Result
fn get_total_claimable(
env: soroban_sdk::Env,
shareholder: soroban_sdk::Address,
) -> Result
fn withdraw_allocation(
env: soroban_sdk::Env,
token_address: soroban_sdk::Address,
shareholder: soroban_sdk::Address,
amount: i128,
) -> Result<(), soroban_sdk::Error>
fn get_require_snapshot(env: soroban_sdk::Env) -> bool
fn get_unclaimed_amount(
env: soroban_sdk::Env,
round_id: u64,
) -> Result
fn list_shares_for_sale(
env: soroban_sdk::Env,
seller: soroban_sdk::Address,
shares_amount: i128,
price_per_share: i128,
payment_token: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn set_require_snapshot(
env: soroban_sdk::Env,
value: bool,
) -> Result<(), soroban_sdk::Error>
fn get_commission_config(
env: soroban_sdk::Env,
) -> Result
fn reclaim_expired_round(
env: soroban_sdk::Env,
round_id: u64,
) -> Result
fn get_distribution_config(env: soroban_sdk::Env) -> DistributionConfig
fn get_next_scheduled_time(env: soroban_sdk::Env) -> Option
fn set_buy_commission_rate(
env: soroban_sdk::Env,
new_rate_bps: i128,
) -> Result<(), soroban_sdk::Error>
fn set_distribution_config(
env: soroban_sdk::Env,
config: DistributionConfig,
) -> Result<(), soroban_sdk::Error>
fn set_commission_recipient(
env: soroban_sdk::Env,
new_recipient: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn create_distribution_snapshot(
env: soroban_sdk::Env,
token_address: soroban_sdk::Address,
merkle_root: soroban_sdk::BytesN<32>,
) -> Result
fn trigger_scheduled_distribution(
env: soroban_sdk::Env,
token_address: soroban_sdk::Address,
) -> Result
fn set_distribution_commission_rate(
env: soroban_sdk::Env,
new_rate_bps: i128,
) -> Result<(), soroban_sdk::Error>