fn __constructor(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
vault: soroban_sdk::Address,
timelock_ns: u64,
) -> Result<(), GovernanceError>
fn submit_set_paused(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
paused: bool,
) -> Result
fn submit_set_admin(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
new_admin: soroban_sdk::Address,
) -> Result
fn submit_set_curator(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
new_curator: soroban_sdk::Address,
) -> Result
fn submit_set_governance(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
governance: soroban_sdk::Address,
) -> Result
fn submit_set_supply_queue(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
entries: soroban_sdk::Vec,
) -> Result
fn submit_set_fees(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
performance_fee_wad: i128,
performance_recipient: soroban_sdk::Address,
management_fee_wad: i128,
management_recipient: soroban_sdk::Address,
max_growth_rate_wad: Option,
) -> Result
fn submit_set_withdrawal_cooldown(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
withdrawal_cooldown_ns: u64,
) -> Result
fn submit_set_idle_resync_cooldown(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
idle_resync_cooldown_ns: u64,
) -> Result
fn submit_set_restrictions(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
mode: u32,
accounts: soroban_sdk::Vec,
) -> Result
fn set_paused(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
paused: bool,
) -> Result<(), GovernanceError>
fn set_restrictions(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
mode: u32,
accounts: soroban_sdk::Vec,
) -> Result<(), GovernanceError>
fn submit_set_sentinel(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
sentinel: soroban_sdk::Address,
) -> Result
fn submit_set_allocators(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
allocators: soroban_sdk::Vec,
) -> Result
fn submit_set_allowed_adapters(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
adapters: soroban_sdk::Vec,
) -> Result
fn submit_set_timelock(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
kind: TimelockKind,
new_timelock_ns: u64,
) -> Result
fn submit_set_cap(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
market_id: u32,
new_cap: i128,
) -> Result
fn submit_remove_market(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
market_id: u32,
) -> Result
fn submit_set_group_cap(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
cap_group_id: soroban_sdk::String,
new_cap: i128,
) -> Result
fn submit_set_group_rel_cap(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
cap_group_id: soroban_sdk::String,
new_relative_cap_wad: i128,
) -> Result
fn submit_set_group_member(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
market_id: u32,
cap_group_id: soroban_sdk::String,
) -> Result
fn submit_set_skim_recipient(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
recipient: soroban_sdk::Address,
) -> Result
fn submit_skim(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
token: soroban_sdk::Address,
) -> Result
fn submit_upgrade(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result
fn submit_migrate(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result
fn submit_cancel_migration(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result
fn abdicate(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
kind: GovernanceActionKind,
) -> Result<(), GovernanceError>
fn is_abdicated(env: soroban_sdk::Env, kind: GovernanceActionKind) -> bool
Submit an opaque governance action when typed governance APIs are insufficient.
Prefer typed submission methods whenever the action has a typed form.
Use a stable, documented key namespace for the action schema, and set
payload_hash to the hash of the exact canonical payload bytes the
downstream consumer will verify. Reusing keys across schemas or hashing
non-canonical bytes can create unsafe or unverifiable governance state.
fn submit_other(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
key: soroban_sdk::Symbol,
payload_hash: soroban_sdk::BytesN<32>,
) -> Result
Check whether an opaque key/hash governance action is approved.
Typed state should use typed query/accept paths instead. For opaque
actions, key names the documented action schema and payload_hash
must be the hash of the exact canonical payload bytes that will be
consumed. Misuse can make approvals unverifiable or unsafe to execute.
fn check_other(
env: soroban_sdk::Env,
key: soroban_sdk::Symbol,
payload_hash: soroban_sdk::BytesN<32>,
) -> bool
fn consume_other(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
key: soroban_sdk::Symbol,
payload_hash: soroban_sdk::BytesN<32>,
) -> Result<(), GovernanceError>
Revoke pending opaque governance actions by their exact key/hash pair.
This is only for actions submitted through submit_other; prefer typed
revoke helpers for typed proposals. The key namespace and
payload_hash must match the original canonical payload identifier.
Mismatched or ambiguous values can leave unsafe or unverifiable
governance state pending.
fn revoke_other_pending(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
key: soroban_sdk::Symbol,
payload_hash: soroban_sdk::BytesN<32>,
) -> Result
fn accept(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
proposal_id: u64,
) -> Result<(), GovernanceError>
fn accept_kind(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
kind: GovernanceActionKind,
) -> Result
fn revoke(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
proposal_id: u64,
) -> Result<(), GovernanceError>
fn revoke_kind(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
kind: GovernanceActionKind,
) -> Result
fn pending(
env: soroban_sdk::Env,
proposal_id: u64,
) -> Result
fn pending_ids(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn timelock_ns(env: soroban_sdk::Env, kind: TimelockKind) -> u64
fn timelocks(env: soroban_sdk::Env) -> Timelocks
fn admin(env: soroban_sdk::Env) -> Result
fn vault(env: soroban_sdk::Env) -> Result
fn sentinel(env: soroban_sdk::Env) -> Option
fn extend_ttl(env: soroban_sdk::Env) -> Result<(), GovernanceError>