WalletSpendKind enum
What kind of money-committing action is being authorized — drives the
host's prompt copy ("Authorize this payment" vs "Authorize recovering
funds"). Every arm the package can emit; a host switch stays exhaustive.
Values
- send → const WalletSpendKind
-
An interactive send to an external recipient (signs + broadcasts now).
- queuedSend → const WalletSpendKind
-
An offline-queued send. Emitted at TWO distinct moments, and a host prompt may want different copy for each — WalletSpendIntent.bindingToken tells them apart (null ⇔ the commit moment):
- COMMIT (
session.queueSend, binding null): the intent is durably persisted now; signing happens later. See the caveat on WalletSendAuthorizer.authorizeSpend. - AUTHORIZE-NOW (
session.authorizeParkedSend, FR-23-b, binding set): the user asked the SDK to sign a parked send at this moment, so the signature happens INSIDE this bracket — like send, not deferred. This is how an offline queue drains at host custody at all.
- COMMIT (
- shield → const WalletSpendKind
-
Shielding the wallet's own transparent funds (signs + broadcasts now).
- unshield → const WalletSpendKind
-
Moving shielded funds to the wallet's own transparent address (signs + broadcasts now).
- sweep → const WalletSpendKind
-
The manual one-time-address recovery sweep (signs + broadcasts one tx per funded address — the total is unknown up front, so WalletSpendIntent.amountZat is null).
- reclaim → const WalletSpendKind
-
Reopening a bricked one-time-address (TEX) send window (#315): a small self-mint from the wallet's own shielded pool to its own one-time address so the window frees up (signs + broadcasts now). Wallet-INTERNAL — the moved amount returns to the wallet via sweep; the true cost is the two transactions' network fees. WalletSpendIntent.amountZat is null (the fee isn't known up front, and the principal is not a debit — it returns).
- swapDeposit → const WalletSpendKind
-
A swap's outgoing ZEC deposit (OutOfZec execute). Signs + broadcasts NOW, inside this bracket (FR-23-a / custody invariant): the deposit is durably enqueued then signed at execute, while the user is present — so swap works at every custody tier (a host-custody wallet serves the seed here). NOT the deferred-signing caveat that queuedSend still carries. An IntoZec execute moves no wallet funds and is never authorized.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- index → int
-
A numeric identifier for the enumerated value.
no setterinherited
- name → String
-
Available on Enum, provided by the EnumName extension
The name of the enum value.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
-
values
→ const List<
WalletSpendKind> - A constant List of the values in this enum, in order of their declaration.