Skip to content

Module BSV::Wallet::Serializer::CreateActionArgs

BRC-103 serialiser for create_action args (call byte 1).

Wire layout (port of go-sdk/wallet/serializer/create_action_args.go): [string] description [optional_bytes] input_beef (NegativeOne = nil) [inputs] NegativeOne | varint_count + input_record… [outputs] NegativeOne | varint_count + output_record… [optional_uint32] lock_time [optional_uint32] version [string_slice] labels [options_block] 0x00 = absent | 0x01 + fields

Input record: [32 bytes] outpoint txid (wire order) [varint] outpoint vout [int_bytes or NegativeOne + varint] unlocking_script or length placeholder [string] input_description [optional_uint32] sequence_number

Output record: [int_bytes] locking_script [varint] satoshis [string] output_description [optional_string] basket [optional_string] custom_instructions [string_slice] tags

Options block (after 0x01 presence byte): [optional_bool] sign_and_process [optional_bool] accept_delayed_broadcast [0x01 or 0xFF] trust_self (1=known, 0xFF=absent) [txid_slice] known_txids [optional_bool] return_txid_only [optional_bool] no_send [optional_bytes] no_send_change (encoded outpoints, NegativeOne = nil) [txid_slice] send_with [optional_bool] randomize_outputs

Constants

TRUST_SELF_KNOWN

Not documented.

Public Class Methods

deserialize(bytes)

  • @param bytes [String] binary
  • @raise [ArgumentError]
  • @return [Hash]

serialize(args)

  • @param args [Hash]
  • @return [String] binary