package utxo

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. sealed trait BitcoinUTXOSpendingInfo extends UTXOSpendingInfo
  2. sealed trait BitcoinUTXOSpendingInfoFull extends UTXOSpendingInfo with UTXOSpendingInfoFull with BitcoinUTXOSpendingInfo
  3. sealed trait BitcoinUTXOSpendingInfoSingle extends UTXOSpendingInfo with UTXOSpendingInfoSingle with BitcoinUTXOSpendingInfo
  4. sealed trait ConditionalPath extends AnyRef

    Represents the spending branch being taken in a ScriptPubKey's execution

    Represents the spending branch being taken in a ScriptPubKey's execution

    If you over-specify a path, such as giving a condition where none is needed, then the remaining over-specified path will be ignored.

    For example, if you wanted to spend a ConditionalScriptPubKey(P2PK1, P2PK2) (which looks like OP_IF <P2PK1> OP_ELSE <P2PK2> OP_ENDIF) with the P2PK1 case, then you would construct a ConditionalSpendingInfo using nonNestedTrue as your ConditionalPath. Otherwise if you wanted to use P2PK2 you would use nonNestedFalse.

  5. sealed trait ConditionalSpendingInfo extends UTXOSpendingInfo with RawScriptUTXOSpendingInfo
  6. case class ConditionalSpendingInfoFull(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: ConditionalScriptPubKey, signers: Vector[Sign], hashType: HashType, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with RawScriptUTXOSpendingInfoFull with ConditionalSpendingInfo with Product with Serializable

    Info required for signing a ConditionalScriptPubKey

  7. case class ConditionalSpendingInfoSingle(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: ConditionalScriptPubKey, signer: Sign, hashType: HashType, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with ConditionalSpendingInfo with RawScriptUTXOSpendingInfoSingle with Product with Serializable
  8. case class EmptySpendingInfo(outPoint: TransactionOutPoint, amount: CurrencyUnit, hashType: HashType) extends UTXOSpendingInfo with RawScriptUTXOSpendingInfoFull with Product with Serializable

    For spending EmptyScriptPubKeys in tests.

    For spending EmptyScriptPubKeys in tests. Probably should not be used in real life

  9. sealed trait LockTimeSpendingInfo extends UTXOSpendingInfo with RawScriptUTXOSpendingInfo
  10. case class LockTimeSpendingInfoFull(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: LockTimeScriptPubKey, signers: Vector[Sign], hashType: HashType, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with RawScriptUTXOSpendingInfoFull with LockTimeSpendingInfo with Product with Serializable
  11. case class LockTimeSpendingInfoSingle(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: LockTimeScriptPubKey, signer: Sign, hashType: HashType, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with LockTimeSpendingInfo with RawScriptUTXOSpendingInfoSingle with Product with Serializable
  12. sealed trait MultiSignatureSpendingInfo extends UTXOSpendingInfo with RawScriptUTXOSpendingInfo
  13. case class MultiSignatureSpendingInfoFull(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: MultiSignatureScriptPubKey, signers: Vector[Sign], hashType: HashType) extends UTXOSpendingInfo with RawScriptUTXOSpendingInfoFull with MultiSignatureSpendingInfo with Product with Serializable
  14. case class MultiSignatureSpendingInfoSingle(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: MultiSignatureScriptPubKey, signer: Sign, hashType: HashType) extends UTXOSpendingInfo with MultiSignatureSpendingInfo with RawScriptUTXOSpendingInfoSingle with Product with Serializable
  15. case class P2PKHSpendingInfo(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2PKHScriptPubKey, signer: Sign, hashType: HashType) extends UTXOSpendingInfo with RawScriptUTXOSpendingInfoFull with RawScriptUTXOSpendingInfoSingle with Product with Serializable
  16. case class P2PKSpendingInfo(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2PKScriptPubKey, signer: Sign, hashType: HashType) extends UTXOSpendingInfo with RawScriptUTXOSpendingInfoFull with RawScriptUTXOSpendingInfoSingle with Product with Serializable
  17. case class P2PKWithTimeoutSpendingInfo(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2PKWithTimeoutScriptPubKey, signer: Sign, hashType: HashType, isBeforeTimeout: Boolean) extends UTXOSpendingInfo with RawScriptUTXOSpendingInfoFull with RawScriptUTXOSpendingInfoSingle with Product with Serializable
  18. sealed trait P2SHNestedSegwitV0UTXOSpendingInfo extends UTXOSpendingInfo with P2SHSpendingInfo
  19. case class P2SHNestedSegwitV0UTXOSpendingInfoFull(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2SHScriptPubKey, signers: Vector[Sign], hashType: HashType, redeemScript: WitnessScriptPubKeyV0, scriptWitness: ScriptWitnessV0, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with P2SHSpendingInfo with P2SHNestedSegwitV0UTXOSpendingInfo with P2SHSpendingInfoFull with Product with Serializable

    This is for the case we are spending a p2sh(p2w{pkh,sh}) script.

    This is for the case we are spending a p2sh(p2w{pkh,sh}) script. This means that we have nested a witness spk inside of a p2sh spk

  20. case class P2SHNestedSegwitV0UTXOSpendingInfoSingle(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2SHScriptPubKey, signer: Sign, hashType: HashType, redeemScript: WitnessScriptPubKeyV0, scriptWitness: ScriptWitnessV0, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with P2SHNestedSegwitV0UTXOSpendingInfo with P2SHSpendingInfoSingle with Product with Serializable
  21. sealed trait P2SHNoNestSpendingInfo extends UTXOSpendingInfo with P2SHSpendingInfo
  22. case class P2SHNoNestSpendingInfoFull(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2SHScriptPubKey, signers: Vector[Sign], hashType: HashType, redeemScript: RawScriptPubKey, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with P2SHSpendingInfoFull with P2SHNoNestSpendingInfo with Product with Serializable

    This is the case were we are attempting to spend a p2sh spk

  23. case class P2SHNoNestSpendingInfoSingle(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2SHScriptPubKey, signer: Sign, hashType: HashType, redeemScript: RawScriptPubKey, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with P2SHNoNestSpendingInfo with P2SHSpendingInfoSingle with Product with Serializable
  24. sealed trait P2SHSpendingInfo extends UTXOSpendingInfo with BitcoinUTXOSpendingInfo
  25. sealed trait P2SHSpendingInfoFull extends UTXOSpendingInfo with BitcoinUTXOSpendingInfoFull with P2SHSpendingInfo
  26. sealed trait P2SHSpendingInfoSingle extends UTXOSpendingInfo with P2SHSpendingInfo with BitcoinUTXOSpendingInfoSingle
  27. case class P2WPKHV0SpendingInfo(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2WPKHWitnessSPKV0, signer: Sign, hashType: HashType, scriptWitness: P2WPKHWitnessV0) extends UTXOSpendingInfo with SegwitV0NativeUTXOSpendingInfoFull with SegwitV0NativeUTXOSpendingInfoSingle with Product with Serializable
  28. sealed trait P2WSHV0SpendingInfo extends UTXOSpendingInfo with SegwitV0NativeUTXOSpendingInfo
  29. case class P2WSHV0SpendingInfoFull(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2WSHWitnessSPKV0, signers: Vector[Sign], hashType: HashType, scriptWitness: P2WSHWitnessV0, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with SegwitV0NativeUTXOSpendingInfoFull with P2WSHV0SpendingInfo with Product with Serializable
  30. case class P2WSHV0SpendingInfoSingle(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: P2WSHWitnessSPKV0, signer: Sign, hashType: HashType, scriptWitness: P2WSHWitnessV0, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with P2WSHV0SpendingInfo with SegwitV0NativeUTXOSpendingInfoSingle with Product with Serializable
  31. sealed trait RawScriptUTXOSpendingInfo extends UTXOSpendingInfo with BitcoinUTXOSpendingInfo
  32. sealed trait RawScriptUTXOSpendingInfoFull extends UTXOSpendingInfo with BitcoinUTXOSpendingInfoFull with RawScriptUTXOSpendingInfo

    This represents the information needed to be spend scripts like p2pkh or p2pk scripts.

    This represents the information needed to be spend scripts like p2pkh or p2pk scripts. Basically there is no nesting that requires a redeem script here

  33. sealed trait RawScriptUTXOSpendingInfoSingle extends UTXOSpendingInfo with BitcoinUTXOSpendingInfoSingle with RawScriptUTXOSpendingInfo

    This represents the information needed to be sign, with a single key, scripts like p2pkh or multisig scripts.

    This represents the information needed to be sign, with a single key, scripts like p2pkh or multisig scripts. Basically this is for ScriptPubKeys where there is no nesting that requires a redeem script

  34. sealed abstract class ReceivedState extends TxoState
  35. sealed trait SegwitV0NativeUTXOSpendingInfo extends UTXOSpendingInfo with BitcoinUTXOSpendingInfo
  36. sealed trait SegwitV0NativeUTXOSpendingInfoFull extends UTXOSpendingInfo with BitcoinUTXOSpendingInfoFull with SegwitV0NativeUTXOSpendingInfo

    This is the case where we are spending a witness v0 script

  37. sealed trait SegwitV0NativeUTXOSpendingInfoSingle extends UTXOSpendingInfo with SegwitV0NativeUTXOSpendingInfo with BitcoinUTXOSpendingInfoSingle

    This is the case where we are signing a witness v0 script

  38. sealed abstract class SpentState extends TxoState
  39. sealed abstract class TxoState extends AnyRef

    Represents the various states a transaction output can be in

  40. sealed abstract class UTXOSpendingInfo extends AnyRef
  41. sealed trait UTXOSpendingInfoFull extends UTXOSpendingInfo

    Contains the information required to fully sign an unspent transaction output (UTXO) on a blockchain.

    Contains the information required to fully sign an unspent transaction output (UTXO) on a blockchain.

    If you want to partially sign a UTXO you will likely need to use UTXOSpendingInfoSingle.

  42. sealed trait UTXOSpendingInfoSingle extends UTXOSpendingInfo

    Contains the information required to sign an unspent transaction output (UTXO) for a single key

  43. case class UnassignedSegwitNativeUTXOSpendingInfo(outPoint: TransactionOutPoint, amount: CurrencyUnit, scriptPubKey: WitnessScriptPubKey, signers: Vector[Sign], hashType: HashType, scriptWitness: ScriptWitness, conditionalPath: ConditionalPath) extends UTXOSpendingInfo with BitcoinUTXOSpendingInfoFull with BitcoinUTXOSpendingInfoSingle with Product with Serializable

    This is the case where we are spending a witness v0 script

Ungrouped