@@ -135,7 +135,7 @@ function getTxInputSignaturesCount<TNumber extends number | bigint>(
135135 * Decompose a raw psbt into useful information, such as the total amounts,
136136 * change amounts, and transaction outputs.
137137 */
138- export function explainPsbt < TNumber extends number | bigint , Tx extends bitgo . UtxoTransaction < bigint > > (
138+ function explainPsbt < TNumber extends number | bigint , Tx extends bitgo . UtxoTransaction < bigint > > (
139139 psbt : bitgo . UtxoPsbt < Tx > ,
140140 params : ExplainTransactionOptions < TNumber > ,
141141 network : utxolib . Network
@@ -212,11 +212,7 @@ export function explainPsbt<TNumber extends number | bigint, Tx extends bitgo.Ut
212212 } as TransactionExplanation ;
213213}
214214
215- /**
216- * Decompose a raw transaction into useful information, such as the total amounts,
217- * change amounts, and transaction outputs.
218- */
219- export function explainTx < TNumber extends number | bigint > (
215+ function explainLegacyTx < TNumber extends number | bigint > (
220216 tx : bitgo . UtxoTransaction < TNumber > ,
221217 params : ExplainTransactionOptions < TNumber > ,
222218 network : utxolib . Network
@@ -229,3 +225,19 @@ export function explainTx<TNumber extends number | bigint>(
229225 signatures : inputSignaturesCount . reduce ( ( prev , curr ) => ( curr > prev ? curr : prev ) , 0 ) ,
230226 } as TransactionExplanation ;
231227}
228+
229+ /**
230+ * Decompose a raw transaction into useful information, such as the total amounts,
231+ * change amounts, and transaction outputs.
232+ */
233+ export function explainTx < TNumber extends number | bigint > (
234+ tx : bitgo . UtxoTransaction < TNumber > | bitgo . UtxoPsbt ,
235+ params : ExplainTransactionOptions < TNumber > ,
236+ network : utxolib . Network
237+ ) : TransactionExplanation {
238+ if ( tx instanceof bitgo . UtxoPsbt ) {
239+ return explainPsbt ( tx , params , network ) ;
240+ } else {
241+ return explainLegacyTx ( tx , params , network ) ;
242+ }
243+ }
0 commit comments