spend: TxDescriptor<{
    amount: bigint;
    asset_kind: VersionedLocatableAsset;
    beneficiary: XcmVersionedLocation;
    valid_from: number | undefined;
}>

Propose and approve a spend of treasury funds.

Must be [Config::SpendOrigin] with the Success value being at least amount of asset_kind in the native asset. The amount of asset_kind is converted for assertion using the [Config::BalanceConverter].

Create an approved spend for transferring a specific amount of asset_kind to a designated beneficiary. The spend must be claimed using the payout dispatchable within the [Config::PayoutPeriod].

  • asset_kind: An indicator of the specific asset class to be spent.
  • amount: The amount to be transferred from the treasury to the beneficiary.
  • beneficiary: The beneficiary of the spend.
  • valid_from: The block number from which the spend can be claimed. It can refer to the past if the resulting spend has not yet expired according to the [Config::PayoutPeriod]. If None, the spend can be claimed immediately after approval.

Emits [Event::AssetSpendApproved] if successful.