fn __constructor(
env: soroban_sdk::Env,
treasury: soroban_sdk::Address,
treasury_share_bps: u32,
yield_controller: soroban_sdk::Address,
distribution_period: u64,
owner: soroban_sdk::Address,
admin: soroban_sdk::Address,
)
fn set_yield_controller(env: soroban_sdk::Env, yield_controller: soroban_sdk::Address)
fn add_member(env: soroban_sdk::Env, member: soroban_sdk::Address)
fn remove_member(env: soroban_sdk::Env, member: soroban_sdk::Address)
fn list_members(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn set_treasury(env: soroban_sdk::Env, treasury: soroban_sdk::Address)
fn get_treasury(env: soroban_sdk::Env) -> soroban_sdk::Address
fn set_treasury_share(env: soroban_sdk::Env, share_bps: u32)
fn get_treasury_share(env: soroban_sdk::Env) -> u32
fn set_distribution_period(env: soroban_sdk::Env, period: u64)
fn get_distribution_period(env: soroban_sdk::Env) -> u64
fn get_next_distribution_time(env: soroban_sdk::Env) -> u64
fn time_before_next_distribution(env: soroban_sdk::Env) -> u64
fn is_distribution_available(env: soroban_sdk::Env) -> bool
fn distribute_yield(
env: soroban_sdk::Env,
token: soroban_sdk::Address,
amount: i128,
) -> i128
fn get_distribution_info(env: soroban_sdk::Env) -> Distribution
fn get_distribution_history(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn get_current_epoch(env: soroban_sdk::Env) -> u64
fn set_admin(env: soroban_sdk::Env, new_admin: soroban_sdk::Address)
fn get_yield_controller(env: soroban_sdk::Env) -> soroban_sdk::Address
fn get_total_distributed(env: soroban_sdk::Env) -> i128