@armada/sdk / index / PlanTransferParams
Interface: PlanTransferParams
Defined in: src/tx/plan.ts:27
Properties
txos
readonlytxos: readonlyTXO[]
Defined in: src/tx/plan.ts:29
Candidate spendable notes (typically the wallet's unspent TXOs for the chain).
tokenAddress
readonlytokenAddress:`0x${string}`
Defined in: src/tx/plan.ts:30
outputs
readonlyoutputs: readonlyTransferOutputRequest[]
Defined in: src/tx/plan.ts:31
fee?
readonlyoptionalfee?:FeeRequest
Defined in: src/tx/plan.ts:32
unshield?
readonlyoptionalunshield?:object
Defined in: src/tx/plan.ts:46
Unshield output — sends value to an EVM recipient (funds leave the pool). Modelled as the LAST output commitment (a public UnshieldNoteERC20, npk = recipient), so it counts toward the spend target + circuit shape but carries no ciphertext.
adaptParams binds a destination commitment into boundParams.adaptParams (a SNARK public input) — e.g. the cross-chain-unshield CCTP tuple from encodeCctpBinding, or a yield re-shield binding. Omitted for a plain same-chain unshield (defaults to ZERO_BYTES32).
adaptContract is the cross-contract-call target committed by the proof. Defaults to ZERO_ADDRESS (a plain unshield-to-pool). Set it to the adapter address for a relay-adapt call (e.g. the yield adapter for lendAndShield/redeemAndShield), where recipient is that adapter.
recipient
readonlyrecipient:`0x${string}`
value
readonlyvalue:bigint
adaptParams?
readonlyoptionaladaptParams?:`0x${string}`
adaptContract?
readonlyoptionaladaptContract?:`0x${string}`
adaptBinding?
readonlyoptionaladaptBinding?:CctpBinding
The DECODED cross-chain binding matching adaptParams — carried through to the signer as boundParams.decodedAdaptParams so an external/policy signer can inspect the CCTP destination it authorizes. When provided it MUST encode to adaptParams (asserted), else the plan is rejected.
roots
readonlyroots:ReadonlyMap<number,bigint>
Defined in: src/tx/plan.ts:59
Per-tree merkle roots (the input notes' tree must have an entry).
chainID
readonlychainID:bigint
Defined in: src/tx/plan.ts:60
minGasPrice?
readonlyoptionalminGasPrice?:bigint
Defined in: src/tx/plan.ts:61
supportedShapes?
readonlyoptionalsupportedShapes?:ReadonlySet<string>
Defined in: src/tx/plan.ts:67
Shape keys (<nullifiers>x<commitments>) the deployment has circuit artifacts for. When provided, planTransfer rejects a plan whose shape isn't in the set with UnsupportedCircuitShapeError — fail-fast, before the signer is asked and 30s of proving is spent. Omit to skip the check.