diff --git a/modules/sdk-coin-xrp/src/index.ts b/modules/sdk-coin-xrp/src/index.ts index 6d06e6fa56..edbaac1249 100644 --- a/modules/sdk-coin-xrp/src/index.ts +++ b/modules/sdk-coin-xrp/src/index.ts @@ -1,3 +1,4 @@ export * from './xrp'; export * from './txrp'; export * from './register'; +export * from './lib/iface'; diff --git a/modules/sdk-coin-xrp/src/lib/iface.ts b/modules/sdk-coin-xrp/src/lib/iface.ts new file mode 100644 index 0000000000..8044601c4c --- /dev/null +++ b/modules/sdk-coin-xrp/src/lib/iface.ts @@ -0,0 +1,70 @@ +import { + InitiateRecoveryOptions as BaseInitiateRecoveryOptions, + SignTransactionOptions as BaseSignTransactionOptions, + TransactionPrebuild, + VerifyAddressOptions as BaseVerifyAddressOptions, + TransactionExplanation, +} from '@bitgo/sdk-core'; + +export interface Address { + address: string; + destinationTag?: number; +} + +export interface FeeInfo { + date: string; + height: number; + baseReserve: string; + baseFee: string; +} + +export interface SignTransactionOptions extends BaseSignTransactionOptions { + txPrebuild: TransactionPrebuild; + prv: string; + isLastSignature?: boolean; +} + +export interface ExplainTransactionOptions { + txHex?: string; + halfSigned?: { + txHex: string; // txHex is poorly named here; it is just a wrapped JSON object + }; +} + +export interface VerifyAddressOptions extends BaseVerifyAddressOptions { + rootAddress: string; +} + +export interface RecoveryInfo extends TransactionExplanation { + txHex: string; + backupKey?: string; + coin?: string; +} + +export interface RecoveryTransaction { + txHex: string; +} + +export interface InitiateRecoveryOptions extends BaseInitiateRecoveryOptions { + krsProvider?: string; +} + +export interface RecoveryOptions { + backupKey: string; + userKey: string; + rootAddress: string; + recoveryDestination: string; + bitgoKey?: string; + walletPassphrase: string; + krsProvider?: string; +} + +export interface HalfSignedTransaction { + halfSigned: { + txHex: string; + }; +} + +export interface SupplementGenerateWalletOptions { + rootPrivateKey?: string; +} diff --git a/modules/sdk-coin-xrp/src/xrp.ts b/modules/sdk-coin-xrp/src/xrp.ts index 72ce2a2d31..e8fca89427 100644 --- a/modules/sdk-coin-xrp/src/xrp.ts +++ b/modules/sdk-coin-xrp/src/xrp.ts @@ -17,84 +17,30 @@ import { BitGoBase, checkKrsProvider, getBip32Keys, - InitiateRecoveryOptions as BaseInitiateRecoveryOptions, InvalidAddressError, KeyPair, ParsedTransaction, ParseTransactionOptions, promiseProps, - SignTransactionOptions as BaseSignTransactionOptions, TransactionExplanation, - TransactionPrebuild, UnexpectedAddressError, - VerifyAddressOptions as BaseVerifyAddressOptions, VerifyTransactionOptions, } from '@bitgo/sdk-core'; import ripple from './ripple'; - -interface Address { - address: string; - destinationTag?: number; -} - -interface FeeInfo { - date: string; - height: number; - baseReserve: string; - baseFee: string; -} - -interface SignTransactionOptions extends BaseSignTransactionOptions { - txPrebuild: TransactionPrebuild; - prv: string; - isLastSignature?: boolean; -} - -interface ExplainTransactionOptions { - txHex?: string; - halfSigned?: { - txHex: string; // txHex is poorly named here; it is just a wrapped JSON object - }; -} - -interface VerifyAddressOptions extends BaseVerifyAddressOptions { - rootAddress: string; -} - -interface RecoveryInfo extends TransactionExplanation { - txHex: string; - backupKey?: string; - coin?: string; -} - -export interface RecoveryTransaction { - txHex: string; -} - -export interface InitiateRecoveryOptions extends BaseInitiateRecoveryOptions { - krsProvider?: string; -} - -export interface RecoveryOptions { - backupKey: string; - userKey: string; - rootAddress: string; - recoveryDestination: string; - bitgoKey?: string; - walletPassphrase: string; - krsProvider?: string; -} - -interface HalfSignedTransaction { - halfSigned: { - txHex: string; - }; -} - -interface SupplementGenerateWalletOptions { - rootPrivateKey?: string; -} +import { + Address, + ExplainTransactionOptions, + FeeInfo, + HalfSignedTransaction, + InitiateRecoveryOptions, + RecoveryInfo, + RecoveryOptions, + RecoveryTransaction, + SignTransactionOptions, + SupplementGenerateWalletOptions, + VerifyAddressOptions, +} from './lib/iface'; export class Xrp extends BaseCoin { protected constructor(bitgo: BitGoBase) {