Skip to content

Commit

Permalink
refactor(sdk-coin-xrp): move interfaces to /lib
Browse files Browse the repository at this point in the history
Ticket: WIN-3569

TICKET: WIN-3569
  • Loading branch information
hitansh-bitgo committed Oct 4, 2024
1 parent 59337c2 commit 8c42a30
Show file tree
Hide file tree
Showing 3 changed files with 84 additions and 67 deletions.
1 change: 1 addition & 0 deletions modules/sdk-coin-xrp/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
export * from './xrp';
export * from './txrp';
export * from './register';
export * from './lib/iface';
70 changes: 70 additions & 0 deletions modules/sdk-coin-xrp/src/lib/iface.ts
Original file line number Diff line number Diff line change
@@ -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;
}
80 changes: 13 additions & 67 deletions modules/sdk-coin-xrp/src/xrp.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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) {
Expand Down

0 comments on commit 8c42a30

Please sign in to comment.