UNPKG

xrpl

Version:

A TypeScript/JavaScript API for interacting with the XRP Ledger in Node.js and the browser

157 lines (142 loc) 5.14 kB
import { BaseRequest, BaseResponse, LookupByLedgerRequest } from './baseMethod' /** * Represents a payment channel in the XRP Ledger. */ export interface Channel { /** The owner of the channel, as an Address. */ account: string /** The total amount of XRP, in drops allocated to this channel. */ amount: string /** * The total amount of XRP, in drops, paid out from this channel, * as of the ledger version used. (You can calculate the amount of * XRP left in the channel by subtracting balance from amount.) */ balance: string /** * A unique ID for this channel, as a 64-character hexadecimal string. * This is also the ID of the channel object in the ledger's state data. */ channel_id: string /** * The destination account of the channel, as an Address. * Only this account can receive the XRP in the channel while it is open. */ destination_account: string /** * The number of seconds the payment channel must stay open after the owner * of the channel requests to close it. */ settle_delay: number /** * The public key for the payment channel in the XRP Ledger's base58 format. * Signed claims against this channel must be redeemed with the matching key pair. */ public_key?: string /** * The public key for the payment channel in hexadecimal format, if one was * specified at channel creation. Signed claims against this channel must be * redeemed with the matching key pair. */ public_key_hex?: string /** * Time, in seconds since the Ripple Epoch, when this channel is set to expire. * This expiration date is mutable. If this is before the close time of the most * recent validated ledger, the channel is expired. */ expiration?: number /** * Time, in seconds since the Ripple Epoch, of this channel's immutable expiration, * if one was specified at channel creation. If this is before the close time of the * most recent validated ledger, the channel is expired. */ cancel_after?: number /** * A 32-bit unsigned integer to use as a source tag for payments through this payment channel, * if one was specified at channel creation. This indicates the payment channel's originator or * other purpose at the source account. Conventionally, if you bounce payments from this channel, * you should specify this value in the DestinationTag of the return payment. */ source_tag?: number /** * A 32-bit unsigned integer to use as a destination tag for payments through this channel, * if one was specified at channel creation. This indicates the payment channel's beneficiary * or other purpose at the destination account. */ destination_tag?: number } /** * The account_channels method returns information about an account's Payment * Channels. This includes only channels where the specified account is the * channel's source, not the destination. (A channel's "source" and "owner" are * the same.) All information retrieved is relative to a particular version of * the ledger. Returns an {@link AccountChannelsResponse}. * * @category Requests */ export interface AccountChannelsRequest extends BaseRequest, LookupByLedgerRequest { command: 'account_channels' /** * The unique identifier of an account, typically the account's address. The * request returns channels where this account is the channel's owner/source. * */ account: string /** * The unique identifier of an account, typically the account's address. If * provided, filter results to payment channels whose destination is this * account. */ destination_account?: string /** * Limit the number of transactions to retrieve. Cannot be less than 10 or * more than 400. The default is 200. */ limit?: number /** * Value from a previous paginated response. Resume retrieving data where * that response left off. */ marker?: unknown } /** * The expected response from an {@link AccountChannelsRequest}. * * @category Responses */ export interface AccountChannelsResponse extends BaseResponse { result: { /** * The address of the source/owner of the payment channels. This * corresponds to the account field of the request. */ account: string /** Payment channels owned by this account. */ channels: Channel[] /** * The identifying hash of the ledger version used to generate this * response. */ ledger_hash: string /** The ledger index of the ledger version used to generate this response. */ ledger_index: number /** * If true, the information in this response comes from a validated ledger * version. Otherwise, the information is subject to change. */ validated?: boolean /** * The limit to how many channel objects were actually returned by this * request. */ limit?: number /** * Server-defined value for pagination. Pass this to the next call to * resume getting results where this call left off. Omitted when there are * no additional pages after this one. */ marker?: unknown } }