@coolwallet/xrp
Version:
Coolwallet Ripple App
31 lines (30 loc) • 1.64 kB
TypeScript
import * as types from '../config/types';
declare type HexInput = string | number;
declare type PaymentInput = HexInput | undefined;
export declare const toHexValue: (value: HexInput, byteLength?: number | undefined) => string;
export declare const toRlpBytes: (value: PaymentInput, byteLength?: number | undefined) => Uint8Array;
export declare const encodeMemoField: (value?: string | undefined) => Uint8Array;
export declare const getPaymentArgument: (addressIndex: number, payment: types.Payment, newScript: boolean) => Promise<string>;
export declare const getMessageArgument: (addressIndex: number, message: string) => Promise<string>;
/**
* Convert mantissa (bigint) into a 54-byte buffer where each byte represents
* one bit of the 54-bit mantissa value.
*
* Example flow:
* mantissa = 1_000_000_000_000_000n
* hex = 0x038D7EA4C68000
* 54-bit binary = 000011100011010111111010100100110001101000000000000000
* each bit -> 1 byte (0 -> 0x00, 1 -> 0x01)
* result = "000000000000010100000101000001010001010101000001010100010100..."
* (108 hex chars / 54 bytes)
*/
export declare const MANTISSA_BIT_LENGTH = 54;
export declare const mantissaToBitBytes: (mantissa: bigint) => string;
export declare const encodeIouAmount: (amount: string) => {
mantissa: bigint;
exponent: number;
encoded: string;
};
export declare const getTrustSetArgument: (addressIndex: number, payment: types.TokenPayment, isRLUSD: boolean) => Promise<string>;
export declare const getIouTransferArgument: (addressIndex: number, payment: types.IouTransferPayment, isRLUSD: boolean) => Promise<string>;
export {};