DASH client class extending UTXOClient.

Hierarchy

  • Client
    • Client

Constructors

  • Parameters

    • params: XChainClientParams & {
          dataProviders: UtxoOnlineDataProviders[];
          explorerProviders: ExplorerProviders;
      } & {
          nodeAuth?: NodeAuth;
          nodeUrls: NodeUrls;
      } = defaultDashParams

    Returns Client

Properties

chain: string
dataProviders: UtxoOnlineDataProviders[]
explorerProviders: ExplorerProviders
feeBounds: FeeBounds
network: Network
nodeAuth?: NodeAuth
nodeUrls: NodeUrls
phrase: string
rootDerivationPaths: undefined | RootDerivationPaths

Methods

  • Broadcast a transaction.

    Parameters

    • txHex: string

      The transaction hex string.

    Returns Promise<string>

    The transaction hash.

  • Compiles a memo into a buffer.

    Parameters

    • memo: string

      The memo to be compiled.

    Returns Buffer

    The compiled memo as a buffer.

  • Get the DASH address corresponding to the given index.

    Parameters

    • index: number = 0

      The index of the address.

    Returns string

    The DASH address.

    Deprecated

    This function will be removed eventually. Use getAddressAsync instead.

    Throws

    Thrown if index is less than zero.

    Throws

    Thrown if phrase is not provided.

    Throws

    Thrown if address is not defined.

  • Asynchronously get the DASH address corresponding to the given index.

    Parameters

    • index: number = 0

      The index of the address.

    Returns Promise<string>

    A promise resolving to the DASH address.

  • Get the asset info for DASH.

    Returns AssetInfo

    The asset info for DASH.

  • Asynchronously get the balance for a DASH address.

    Parameters

    • address: string

      The DASH address.

    Returns Promise<Balance[]>

    A promise resolving to an array of balances.

  • Get the private and public keys for DASH.

    Parameters

    • phrase: string

      The phrase used to derive keys.

    • index: number = 0

      The index for key derivation.

    Returns ECPairInterface

    The DASH ECPairInterface object.

    Throws

    Thrown if private key cannot be obtained from the phrase.

  • Get the explorer URL for a given address based on the network.

    Parameters

    • address: string

      The address to query.

    Returns string

    The explorer URL for the address.

  • Get the explorer URL for a given transaction ID based on the network.

    Parameters

    • txID: string

      The transaction ID.

    Returns string

    The explorer URL for the transaction.

  • Get the explorer URL based on the network.

    Returns string

    The explorer URL.

  • Calculates the transaction fee based on the provided UTXOs, fee rate, and optional compiled memo.

    Parameters

    • inputs: UTXO[]

      The UTXOs used as inputs for the transaction.

    • feeRate: number

      The fee rate for the transaction.

    • data: null | Buffer = null

      The compiled memo as a buffer (optional).

    Returns number

    The calculated transaction fee amount.

  • Get the fee rate from the Thorchain API.

    Returns Promise<number>

    The fee rate

  • Get fee rates

    Parameters

    • Optional protocol: THORCHAIN

      Protocol to interact with. If there's no protocol provided, fee rates are retrieved from chain data providers

    Returns Promise<FeeRates>

    The fee rates (average, fast, fastest) in Satoshis/byte

  • Get estimated fees.

    Parameters

    • Optional options: FeeEstimateOptions

      Options for fee estimation.

    Returns Promise<Fees>

    Estimated fees.

  • Get estimated fees with fee rates.

    Parameters

    • Optional options: FeeEstimateOptions

      Options for fee estimation.

    Returns Promise<FeesWithRates>

    Estimated fees along with fee rates.

  • Get the full derivation path based on the wallet index.

    Parameters

    • walletIndex: number

      The HD wallet index

    Returns string

    The full derivation path

  • Get the current network.

    Returns Network

    The current network

  • Asynchronously retrieves transaction data for a given transaction ID.

    Parameters

    • txid: string

      The transaction ID.

    Returns Promise<Tx>

    A promise resolving to the transaction data.

  • Asynchronously retrieves transactions for a given address.

    Parameters

    • Optional params: TxHistoryParams

      Parameters for transaction retrieval.

    Returns Promise<TxsPage>

    A promise resolving to a page of transactions.

  • Converts an Insight transaction response to XChain transaction.

    Parameters

    • tx: InsightTxResponse

      The Insight transaction response.

    Returns Tx

    The XChain transaction.

  • Asynchronously prepares a transaction for sending assets.

    Parameters

    • params: TxParams & {
          feeRate: number;
          sender: string;
      }

      Parameters for the transaction preparation.

    Returns Promise<DashPreparedTx>

    A promise resolving to the prepared transaction data.

  • Purge the client by clearing the mnemonic phrase.

    Returns void

  • Broadcasts a transaction hex using a round-robin approach across multiple data providers.

    Parameters

    • txHex: string

      The transaction hex to broadcast.

    Returns Promise<string>

    The hash of the broadcasted transaction.

    Throws

    Throws an error if no provider is able to broadcast the transaction.

  • Round-robin method to get balance from data providers. Throws error if no provider can get balance.

    Parameters

    • address: string

      The address to get balance for.

    Returns Promise<Balance[]>

    The balances.

    Throws

    Error If no provider is able to get balance.

  • Retrieves fee rates using a round-robin approach across multiple data providers.

    Returns Promise<FeeRates>

    The fee rates (average, fast, fastest) in Satoshis/byte.

    Throws

    Throws an error if no provider is able to retrieve fee rates.

  • Round-robin method to get transaction data from data providers. Throws error if no provider can get transaction data.

    Parameters

    • txid: string

      The transaction ID to get data for.

    Returns Promise<Tx>

    The transaction data.

    Throws

    Error If no provider is able to get transaction data.

  • Round-robin method to get transactions from data providers. Throws error if no provider can get transactions.

    Parameters

    • params: TxHistoryParams

      The parameters for fetching transactions.

    Returns Promise<TxsPage>

    The transaction history.

    Throws

    Error If no provider is able to get transactions.

  • Round-robin method to get unspent transactions from data providers. Throws error if no provider can get unspent transactions.

    Parameters

    • address: string

      The address to get unspent transactions for.

    • confirmed: boolean

      Flag to indicate whether to get confirmed transactions only.

    Returns Promise<UTXO[]>

    The unspent transactions.

    Throws

    Error If no provider is able to get unspent transactions.

  • Scan UTXOs for a given address.

    Parameters

    • address: string

      The address to scan.

    • Optional confirmedOnly: boolean

      Flag to scan only confirmed UTXOs.

    Returns Promise<UTXO[]>

    The UTXOs found.

  • Set or update the current network.

    Parameters

    • network: Network

      The network to set

    Returns void

    Throws

    Thrown if no network is provided

  • Set or update the mnemonic phrase.

    Parameters

    • phrase: string

      The new mnemonic phrase

    • Optional walletIndex: number

      (Optional) The HD wallet index

    Returns string

    The address derived from the provided phrase

    Throws

    Thrown if an invalid mnemonic phrase is provided

  • Make a GET request to the Thorchain API.

    Parameters

    • endpoint: string

      The API endpoint

    Returns Promise<unknown>

    The response data

  • Asynchronously transfers assets between addresses.

    Parameters

    • params: TxParams & {
          feeRate?: number;
      }

      Parameters for the transfer.

    Returns Promise<string>

    A promise resolving to the transaction hash.

  • Validate a DASH address.

    Parameters

    • address: string

      The DASH address to validate.

    Returns boolean

    True if the address is valid, false otherwise.

Generated using TypeDoc