package db

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. case class AccountDb(xpub: ExtPublicKey, hdAccount: HDAccount) extends Product with Serializable

    Represents the xpub at the account level, NOT the root xpub that in conjunction with the path specified in hdAccount can be used to generate the account level xpub m / purpose' / coin_type' / account'

    Represents the xpub at the account level, NOT the root xpub that in conjunction with the path specified in hdAccount can be used to generate the account level xpub m / purpose' / coin_type' / account'

    See also

    https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#path-levels

  2. sealed trait AddressDb extends AnyRef
  3. case class AddressRecord(purpose: HDPurpose, accountCoin: HDCoinType, accountIndex: Int, accountChain: HDChainType, addressIndex: Int, address: BitcoinAddress, pubKey: ECPublicKey, hashedPubKey: Sha256Hash160Digest, scriptPubKeyId: Long, scriptWitnessOpt: Option[ScriptWitness]) extends Product with Serializable
  4. case class AddressTagDb(address: BitcoinAddress, tagName: AddressTagName, tagType: AddressTagType) extends Product with Serializable
  5. case class IncomingTransactionDb(txIdBE: DoubleSha256DigestBE, incomingAmount: CurrencyUnit) extends TxDB with Product with Serializable

    Represents a relevant transaction for the wallet that we should be keeping track of

    Represents a relevant transaction for the wallet that we should be keeping track of

    txIdBE

    Transaction ID

  6. case class LegacyAddressDb(path: LegacyHDPath, ecPublicKey: ECPublicKey, hashedPubKey: Sha256Hash160Digest, address: P2PKHAddress, scriptPubKey: ScriptPubKey) extends AddressDb with Product with Serializable

    P2PKH

  7. case class LegacySpendingInfo(outPoint: TransactionOutPoint, output: TransactionOutput, privKeyPath: LegacyHDPath, state: TxoState, spendingTxIdOpt: Option[DoubleSha256DigestBE], id: Option[Long] = None) extends DbRowAutoInc[SpendingInfoDb] with SpendingInfoDb with Product with Serializable

    DB representation of a legacy UTXO

  8. case class NestedSegWitAddressDb(path: NestedSegWitHDPath, ecPublicKey: ECPublicKey, hashedPubKey: Sha256Hash160Digest, address: P2SHAddress, witnessScript: ScriptWitness, scriptPubKey: ScriptPubKey) extends AddressDb with Product with Serializable

    Segwit P2PKH-in-P2SH

  9. case class NestedSegwitV0SpendingInfo(outPoint: TransactionOutPoint, output: TransactionOutput, privKeyPath: NestedSegWitHDPath, redeemScript: ScriptPubKey, scriptWitness: ScriptWitness, state: TxoState, spendingTxIdOpt: Option[DoubleSha256DigestBE], id: Option[Long] = None) extends DbRowAutoInc[SpendingInfoDb] with SpendingInfoDb with Product with Serializable

    DB representation of a nested segwit V0 SegWit UTXO

  10. case class OutgoingTransactionDb(txIdBE: DoubleSha256DigestBE, inputAmount: CurrencyUnit, sentAmount: CurrencyUnit, actualFee: CurrencyUnit, expectedFee: CurrencyUnit, feeRate: SatoshisPerByte) extends TxDB with Product with Serializable

    Represents a relevant transaction for the wallet that we should be keeping track of

    Represents a relevant transaction for the wallet that we should be keeping track of

    txIdBE

    Transaction ID

    actualFee

    fee paid by the transaction

    expectedFee

    Fee rate the wallet expected to pay

    feeRate

    Fee rate the transaction actually paid

  11. case class ScriptPubKeyDb(scriptPubKey: ScriptPubKey, hash: Sha256Digest, id: Option[Long] = None) extends DbRowAutoInc[ScriptPubKeyDb] with Product with Serializable
  12. case class SegWitAddressDb(path: SegWitHDPath, ecPublicKey: ECPublicKey, hashedPubKey: Sha256Hash160Digest, address: Bech32Address, witnessScript: ScriptWitness, scriptPubKey: ScriptPubKey) extends AddressDb with Product with Serializable

    Segwit P2PKH

  13. case class SegwitV0SpendingInfo(outPoint: TransactionOutPoint, output: TransactionOutput, privKeyPath: SegWitHDPath, scriptWitness: ScriptWitness, state: TxoState, spendingTxIdOpt: Option[DoubleSha256DigestBE], id: Option[Long] = None) extends DbRowAutoInc[SpendingInfoDb] with SpendingInfoDb with Product with Serializable

    DB representation of a native V0 SegWit UTXO

  14. sealed trait SpendingInfoDb extends DbRowAutoInc[SpendingInfoDb]

    The database level representation of a UTXO.

    The database level representation of a UTXO. When storing a UTXO we don't want to store sensitive material such as private keys. We instead store the necessary information we need to derive the private keys, given the root wallet seed.

  15. case class TransactionDb(txIdBE: DoubleSha256DigestBE, transaction: Transaction, unsignedTxIdBE: DoubleSha256DigestBE, unsignedTx: Transaction, wTxIdBEOpt: Option[DoubleSha256DigestBE], totalOutput: CurrencyUnit, numInputs: Int, numOutputs: Int, lockTime: UInt32, blockHashOpt: Option[DoubleSha256DigestBE]) extends TxDB with Product with Serializable

    Represents a relevant transaction for the wallet that we should be keeping track of

    Represents a relevant transaction for the wallet that we should be keeping track of

    txIdBE

    Transaction ID

    transaction

    Serialized Transaction

    unsignedTxIdBE

    Transaction ID of the unsigned transaction

    unsignedTx

    Unsigned Transaction. This is useful so we can reconcile what our estimated fees were against our actual fees in the case of ECDSA signature size variability

    wTxIdBEOpt

    Witness Transaction ID

    numInputs

    Number of inputs in the transaction

    numOutputs

    Number of outputs in the transaction

    lockTime

    locktime of the transaction

  16. trait TxDB extends AnyRef
  17. case class UTXORecord(outpoint: TransactionOutPoint, state: TxoState, scriptPubKeyId: Long, value: CurrencyUnit, path: HDPath, redeemScript: Option[ScriptPubKey], scriptWitness: Option[ScriptWitness], spendingTxIdOpt: Option[DoubleSha256DigestBE], id: Option[Long] = None) extends DbRowAutoInc[UTXORecord] with Product with Serializable

Ungrouped