allowance
Module0x0000…0002
- Move path
- 0x0000…0002::allowance
- Functions
- 4027 public, 2 entry
- Structs
- 9
- Friend modules
- None
allowance
- accumulator18
- accumulator_metadata2
- accumulator_settlement8
- address10
- address_alias5
- allowance40
- authenticator_state13
- bag10
- balance18
- bcs30
- bls1238143
- borrow4
- clock3
- coin54
- coin_registry43
- config11
- deny_list21
- derived_object3
- display14
- display_registry18
- dynamic_field19
- dynamic_object_field15
- ecdsa_k13
- ecdsa_r12
- ecvrf1
- ed255191
- event3
- forwarding_address1
- funds_accumulator12
- groth1610
- group_ops23
- hash2
- hex3
- hmac1
- kiosk41
- kiosk_extension14
- linked_table19
- math7
- nitro_attestation11
- object32
- object_bag11
- object_table10
- package26
- party5
- pay8
- poseidon2
- priority_queue8
- protocol_config1
- prover0
- random20
- rangeproofs3
- ristretto25518
- scratch18
- sui2
- table10
- table_vec12
- token45
- transfer16
- transfer_policy18
- tx_context19
- types1
- url4
- vdf4
- vec_map20
- vec_set11
- versioned7
- zklogin_verified_id9
- zklogin_verified_issuer6
Declarations
Rebuilt from the module interface. No verified source is published, and function bodies are only available as bytecode.
module allowance;
struct Allowance<phantom T0> has key {
id: UID,
settings: Settings,
current_spend: u256,
}
struct AllowanceCap<phantom T0> has key {
id: UID,
allowance: ID,
}
struct AllowanceProposal<phantom T0> has drop {
pos0: Settings,
}
struct AllowanceWithdrawal<phantom T0: store> has drop {
allowance: ID,
is_sponsor: bool,
inner: Withdrawal<T0>,
}
struct RateLimit has copy, drop, store {
}
struct Settings has drop, store {
funder: address,
spender: Option<address>,
app: Option<TypeName>,
lifetime_cap: Option<u256>,
start_timestamp_ms: Option<u64>,
expiration_timestamp_ms: Option<u64>,
rate_limit: Option<RateLimit>,
name: String,
}
struct SettingsPermit<phantom T0> has drop {
dummy_field: bool,
}
struct SpendPermit<phantom T0> has drop {
dummy_field: bool,
}
struct Window has copy, drop, store {
}
public fun allowance_cap_allowance<T0>(&AllowanceCap<T0>): ID
public fun allowance_current_spend<T0>(&Allowance<T0>): u256
public fun allowance_proposal_settings<T0>(&AllowanceProposal<T0>): &Settings
public fun allowance_settings<T0>(&Allowance<T0>): &Settings
public fun app(&Settings): Option<TypeName>
public fun app_balance_spend<T0, T1>(&mut Allowance<Balance<T0>>,SpendPermit<T1>,AllowanceWithdrawal<Balance<T0>>,&Clock): Balance<T0>
fun assert_app<T0, T1>(&Allowance<T0>)
public fun balance_spend<T0>(&mut Allowance<Balance<T0>>,AllowanceWithdrawal<Balance<T0>>,&Clock): Balance<T0>
public fun calendar_rate_limit(u8, u256): RateLimit
fun charge(&mut RateLimit,u256,u64)
public(package) fun civil_from_ms(u64): (u64, u64, u64)
fun consume<T0: store>(&mut Allowance<T0>,AllowanceWithdrawal<T0>,&Clock): Withdrawal<T0>
public(package) fun days_in_month(u64, u64): u64
fun elapsed_windows(u64,u64,u8): u64
public fun expiration_timestamp_ms(&Settings): Option<u64>
public fun funder(&Settings): address
fun index_at(&Window,u64,u64): u64
fun is_leap_year(u64): bool
public fun issue<T0, T1>(AllowanceProposal<T0>,SettingsPermit<T1>)
public fun lifetime_cap(&Settings): Option<u256>
public fun monthly_rate_limit(u256): RateLimit
public fun name(&Settings): &String
entry fun new<T0>(String,address,Option<u256>,Option<u64>,Option<u64>,Option<RateLimit>)
fun new_rate_limit(u256, Window): RateLimit
fun new_settings(address,address,Option<TypeName>,Option<u256>,Option<u64>,Option<u64>,Option<RateLimit>,String): Settings
public fun periodic_rate_limit(u64, u256): RateLimit
entry fun propose_for_app<T0, T1>(String,address,Option<u256>,Option<u64>,Option<u64>,Option<RateLimit>): AllowanceProposal<T0>
public fun quarterly_rate_limit(u256): RateLimit
public fun rate_limit(&Settings): Option<RateLimit>
public fun rate_limit_limit(&RateLimit): u256
public fun rate_limit_spent(&RateLimit): u256
public fun rate_limit_window(&RateLimit): Window
public fun revoke<T0>(AllowanceCap<T0>,Allowance<T0>)
public fun rotate_spender<T0, T1>(&mut Allowance<T0>,SettingsPermit<T1>,address)
public fun settings_permit<T0>(Permit<T0>): SettingsPermit<T0>
fun share_new<T0>(Settings)
public fun spend_permit<T0>(Permit<T0>): SpendPermit<T0>
public fun spender(&Settings): Option<address>
public fun start_timestamp_ms(&Settings): Option<u64>
public fun yearly_rate_limit(u256): RateLimit