fn init(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
operator: soroban_sdk::Address,
issuance_relayer: soroban_sdk::Address,
payment_registry: soroban_sdk::Address,
) -> Result<(), VouchifyError>
fn get_voucher(
env: soroban_sdk::Env,
voucher_id: soroban_sdk::String,
) -> Result
fn share_voucher(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
voucher_id: soroban_sdk::String,
child_voucher_id: soroban_sdk::String,
recipient: soroban_sdk::Address,
share_amount: i128,
expires_at: u64,
external_ref: soroban_sdk::String,
is_gift: bool,
) -> Result
fn expire_voucher(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
voucher_id: soroban_sdk::String,
) -> Result
fn redeem_voucher(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
voucher_id: soroban_sdk::String,
amount: i128,
) -> Result
fn refund_voucher(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
voucher_id: soroban_sdk::String,
) -> Result
fn payment_registry(
env: soroban_sdk::Env,
) -> Result
fn transfer_voucher(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
voucher_id: soroban_sdk::String,
new_owner: soroban_sdk::Address,
) -> Result
fn create_unfunded_voucher(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
voucher_id: soroban_sdk::String,
buyer: soroban_sdk::Address,
current_owner: soroban_sdk::Address,
merchant_id: u64,
face_value: i128,
expires_at: u64,
external_ref: soroban_sdk::String,
is_gift: bool,
) -> Result
fn create_voucher_from_payment(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
voucher_id: soroban_sdk::String,
payment_id: soroban_sdk::String,
current_owner: soroban_sdk::Address,
merchant_id: u64,
face_value: i128,
expires_at: u64,
external_ref: soroban_sdk::String,
is_gift: bool,
) -> Result