fn init(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
shares: soroban_sdk::Vec,
mutable: bool,
) -> Result<(), soroban_sdk::Error>
fn migrate(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn upgrade(
env: soroban_sdk::Env,
new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>
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,
) -> Result
fn list_shares(
env: soroban_sdk::Env,
) -> Result, soroban_sdk::Error>
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 list_all_sales(
env: soroban_sdk::Env,
) -> 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 distribute_tokens(
env: soroban_sdk::Env,
token_address: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn start_distribution(
env: soroban_sdk::Env,
token_address: 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 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 process_distribution(
env: soroban_sdk::Env,
batch_size: u32,
) -> Result
fn finalize_distribution(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn get_commission_config(
env: soroban_sdk::Env,
) -> Result
fn get_shareholder_count(env: soroban_sdk::Env) -> Result
fn set_buy_commission_rate(
env: soroban_sdk::Env,
new_rate_bps: i128,
) -> Result<(), soroban_sdk::Error>
fn set_commission_recipient(
env: soroban_sdk::Env,
new_recipient: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn set_distribution_commission_rate(
env: soroban_sdk::Env,
new_rate_bps: i128,
) -> Result<(), soroban_sdk::Error>