@bitgo/sdk-core 1.0.1-rc.0 → 1.1.0-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/account-lib/baseCoin/baseKeyPair.d.ts +27 -0
- package/dist/src/account-lib/baseCoin/baseKeyPair.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/baseKeyPair.js +3 -0
- package/dist/src/account-lib/baseCoin/baseTransaction.d.ts +71 -0
- package/dist/src/account-lib/baseCoin/baseTransaction.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/baseTransaction.js +69 -0
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts +128 -0
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.js +138 -0
- package/dist/src/account-lib/baseCoin/baseTransactionBuilderFactory.d.ts +29 -0
- package/dist/src/account-lib/baseCoin/baseTransactionBuilderFactory.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/baseTransactionBuilderFactory.js +19 -0
- package/dist/src/account-lib/baseCoin/baseUtils.d.ts +45 -0
- package/dist/src/account-lib/baseCoin/baseUtils.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/baseUtils.js +3 -0
- package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +75 -0
- package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/blsKeyPair.js +179 -0
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +50 -0
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +145 -0
- package/dist/src/account-lib/baseCoin/enum.d.ts +45 -0
- package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/enum.js +74 -0
- package/dist/src/account-lib/baseCoin/errors.d.ts +59 -0
- package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/errors.js +105 -0
- package/dist/src/account-lib/baseCoin/iface.d.ts +155 -0
- package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/iface.js +38 -0
- package/dist/src/account-lib/baseCoin/index.d.ts +12 -0
- package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/index.js +31 -0
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts +55 -0
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.js +124 -0
- package/dist/src/account-lib/index.d.ts +5 -0
- package/dist/src/account-lib/index.d.ts.map +1 -0
- package/dist/src/account-lib/index.js +17 -0
- package/dist/src/account-lib/mpc/curves/baseCurve.d.ts +19 -0
- package/dist/src/account-lib/mpc/curves/baseCurve.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/curves/baseCurve.js +6 -0
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts +17 -0
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/curves/ed25519.js +57 -0
- package/dist/src/account-lib/mpc/curves/index.d.ts +6 -0
- package/dist/src/account-lib/mpc/curves/index.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/curves/index.js +8 -0
- package/dist/src/account-lib/mpc/curves/secp256k1.d.ts +17 -0
- package/dist/src/account-lib/mpc/curves/secp256k1.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/curves/secp256k1.js +70 -0
- package/dist/src/account-lib/mpc/hdTree.d.ts +24 -0
- package/dist/src/account-lib/mpc/hdTree.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/hdTree.js +94 -0
- package/dist/src/account-lib/mpc/index.d.ts +8 -0
- package/dist/src/account-lib/mpc/index.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/index.js +23 -0
- package/dist/src/account-lib/mpc/shamir.d.ts +26 -0
- package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/shamir.js +86 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +25 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +121 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/index.d.ts +4 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/index.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/index.js +29 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +40 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/types.js +3 -0
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +29 -0
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +276 -0
- package/dist/src/account-lib/mpc/tss/eddsa/index.d.ts +4 -0
- package/dist/src/account-lib/mpc/tss/eddsa/index.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/tss/eddsa/index.js +30 -0
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +70 -0
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/tss/eddsa/types.js +3 -0
- package/dist/src/account-lib/mpc/tss/index.d.ts +6 -0
- package/dist/src/account-lib/mpc/tss/index.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/tss/index.js +35 -0
- package/dist/src/account-lib/mpc/util.d.ts +8 -0
- package/dist/src/account-lib/mpc/util.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/util.js +42 -0
- package/dist/src/account-lib/util/crypto.d.ts +106 -0
- package/dist/src/account-lib/util/crypto.d.ts.map +1 -0
- package/dist/src/account-lib/util/crypto.js +269 -0
- package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts +49 -0
- package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts.map +1 -0
- package/dist/src/account-lib/util/ed25519KeyDeriver.js +87 -0
- package/dist/src/api/bip32path.d.ts +24 -0
- package/dist/src/api/bip32path.d.ts.map +1 -0
- package/dist/src/api/bip32path.js +45 -0
- package/dist/src/api/index.d.ts +3 -0
- package/dist/src/api/index.d.ts.map +1 -0
- package/dist/src/{v2 → api}/index.js +2 -2
- package/dist/src/api/types.d.ts +20 -0
- package/dist/src/api/types.d.ts.map +1 -0
- package/dist/src/api/types.js +3 -0
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts +230 -0
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -0
- package/dist/src/bitgo/baseCoin/baseCoin.js +292 -0
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +257 -0
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -0
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +3 -0
- package/dist/src/bitgo/baseCoin/index.d.ts +3 -0
- package/dist/src/bitgo/baseCoin/index.d.ts.map +1 -0
- package/dist/src/bitgo/baseCoin/index.js +15 -0
- package/dist/src/bitgo/bip32util.d.ts +17 -0
- package/dist/src/bitgo/bip32util.d.ts.map +1 -0
- package/dist/src/bitgo/bip32util.js +59 -0
- package/dist/src/bitgo/bitcoin.d.ts +16 -0
- package/dist/src/bitgo/bitcoin.d.ts.map +1 -0
- package/dist/src/bitgo/bitcoin.js +52 -0
- package/dist/src/bitgo/bitgoBase.d.ts +22 -0
- package/dist/src/bitgo/bitgoBase.d.ts.map +1 -0
- package/dist/src/bitgo/bitgoBase.js +3 -0
- package/dist/src/bitgo/coinFactory.d.ts +31 -0
- package/dist/src/bitgo/coinFactory.d.ts.map +1 -0
- package/dist/src/bitgo/coinFactory.js +59 -0
- package/dist/src/bitgo/config.d.ts +8 -0
- package/dist/src/bitgo/config.d.ts.map +1 -0
- package/dist/src/bitgo/config.js +25 -0
- package/dist/src/bitgo/ecdh.d.ts +24 -0
- package/dist/src/bitgo/ecdh.d.ts.map +1 -0
- package/dist/src/bitgo/ecdh.js +80 -0
- package/dist/src/bitgo/enterprise/enterprise.d.ts +64 -0
- package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -0
- package/dist/src/bitgo/enterprise/enterprise.js +120 -0
- package/dist/src/bitgo/enterprise/enterprises.d.ts +25 -0
- package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -0
- package/dist/src/bitgo/enterprise/enterprises.js +70 -0
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts +15 -0
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -0
- package/dist/src/bitgo/enterprise/iEnterprise.js +3 -0
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts +10 -0
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -0
- package/dist/src/bitgo/enterprise/iEnterprises.js +3 -0
- package/dist/src/bitgo/enterprise/index.d.ts +5 -0
- package/dist/src/bitgo/enterprise/index.d.ts.map +1 -0
- package/dist/src/bitgo/enterprise/index.js +17 -0
- package/dist/src/{v2 → bitgo}/environments.d.ts +0 -0
- package/dist/src/bitgo/environments.d.ts.map +1 -0
- package/dist/src/bitgo/environments.js +142 -0
- package/dist/src/bitgo/errors.d.ts +83 -0
- package/dist/src/bitgo/errors.d.ts.map +1 -0
- package/dist/src/bitgo/errors.js +163 -0
- package/dist/src/bitgo/index.d.ts +26 -0
- package/dist/src/bitgo/index.d.ts.map +1 -0
- package/dist/src/bitgo/index.js +51 -0
- package/dist/src/bitgo/internal/index.d.ts +3 -0
- package/dist/src/bitgo/internal/index.d.ts.map +1 -0
- package/dist/src/bitgo/internal/index.js +15 -0
- package/dist/src/bitgo/internal/internal.d.ts +19 -0
- package/dist/src/bitgo/internal/internal.d.ts.map +1 -0
- package/dist/src/bitgo/internal/internal.js +33 -0
- package/dist/src/bitgo/internal/keycard.d.ts +33 -0
- package/dist/src/bitgo/internal/keycard.d.ts.map +1 -0
- package/dist/src/bitgo/internal/keycard.js +304 -0
- package/dist/src/bitgo/keychain/iKeychains.d.ts +118 -0
- package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -0
- package/dist/src/bitgo/keychain/iKeychains.js +10 -0
- package/dist/src/bitgo/keychain/index.d.ts +3 -0
- package/dist/src/bitgo/keychain/index.d.ts.map +1 -0
- package/dist/src/bitgo/keychain/index.js +15 -0
- package/dist/src/bitgo/keychain/keychains.d.ts +90 -0
- package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -0
- package/dist/src/bitgo/keychain/keychains.js +280 -0
- package/dist/src/bitgo/market/iMarkets.d.ts +12 -0
- package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -0
- package/dist/src/bitgo/market/iMarkets.js +3 -0
- package/dist/src/bitgo/market/index.d.ts +3 -0
- package/dist/src/bitgo/market/index.d.ts.map +1 -0
- package/dist/src/bitgo/market/index.js +15 -0
- package/dist/src/bitgo/market/markets.d.ts +29 -0
- package/dist/src/bitgo/market/markets.d.ts.map +1 -0
- package/dist/src/bitgo/market/markets.js +70 -0
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +73 -0
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -0
- package/dist/src/bitgo/pendingApproval/iPendingApproval.js +28 -0
- package/dist/src/bitgo/pendingApproval/iPendingApprovals.d.ts +16 -0
- package/dist/src/bitgo/pendingApproval/iPendingApprovals.d.ts.map +1 -0
- package/dist/src/bitgo/pendingApproval/iPendingApprovals.js +3 -0
- package/dist/src/bitgo/pendingApproval/index.d.ts +5 -0
- package/dist/src/bitgo/pendingApproval/index.d.ts.map +1 -0
- package/dist/src/bitgo/pendingApproval/index.js +17 -0
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +99 -0
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -0
- package/dist/src/bitgo/pendingApproval/pendingApproval.js +319 -0
- package/dist/src/bitgo/pendingApproval/pendingApprovals.d.ts +19 -0
- package/dist/src/bitgo/pendingApproval/pendingApprovals.d.ts.map +1 -0
- package/dist/src/bitgo/pendingApproval/pendingApprovals.js +76 -0
- package/dist/src/bitgo/recovery/index.d.ts +2 -0
- package/dist/src/bitgo/recovery/index.d.ts.map +1 -0
- package/dist/src/bitgo/recovery/index.js +14 -0
- package/dist/src/bitgo/recovery/initiate.d.ts +49 -0
- package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -0
- package/dist/src/bitgo/recovery/initiate.js +119 -0
- package/dist/src/bitgo/trading/affirmation.d.ts +35 -0
- package/dist/src/bitgo/trading/affirmation.d.ts.map +1 -0
- package/dist/src/bitgo/trading/affirmation.js +53 -0
- package/dist/src/bitgo/trading/affirmations.d.ts +23 -0
- package/dist/src/bitgo/trading/affirmations.d.ts.map +1 -0
- package/dist/src/bitgo/trading/affirmations.js +45 -0
- package/dist/src/bitgo/trading/iAffirmation.d.ts +15 -0
- package/dist/src/bitgo/trading/iAffirmation.d.ts.map +1 -0
- package/dist/src/bitgo/trading/iAffirmation.js +13 -0
- package/dist/src/bitgo/trading/iAffirmations.d.ts +10 -0
- package/dist/src/bitgo/trading/iAffirmations.d.ts.map +1 -0
- package/dist/src/bitgo/trading/iAffirmations.js +3 -0
- package/dist/src/bitgo/trading/iSettlement.d.ts +25 -0
- package/dist/src/bitgo/trading/iSettlement.d.ts.map +1 -0
- package/dist/src/bitgo/trading/iSettlement.js +17 -0
- package/dist/src/bitgo/trading/iSettlements.d.ts +19 -0
- package/dist/src/bitgo/trading/iSettlements.d.ts.map +1 -0
- package/dist/src/bitgo/trading/iSettlements.js +3 -0
- package/dist/src/bitgo/trading/iTradingAccount.d.ts +41 -0
- package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -0
- package/dist/src/bitgo/trading/iTradingAccount.js +3 -0
- package/dist/src/bitgo/trading/iTradingPartner.d.ts +14 -0
- package/dist/src/bitgo/trading/iTradingPartner.d.ts.map +1 -0
- package/dist/src/bitgo/trading/iTradingPartner.js +17 -0
- package/dist/src/bitgo/trading/iTradingPartners.d.ts +15 -0
- package/dist/src/bitgo/trading/iTradingPartners.d.ts.map +1 -0
- package/dist/src/bitgo/trading/iTradingPartners.js +9 -0
- package/dist/src/bitgo/trading/index.d.ts +18 -0
- package/dist/src/bitgo/trading/index.d.ts.map +1 -0
- package/dist/src/bitgo/trading/index.js +30 -0
- package/dist/src/bitgo/trading/lock.d.ts +16 -0
- package/dist/src/bitgo/trading/lock.d.ts.map +1 -0
- package/dist/src/bitgo/trading/lock.js +12 -0
- package/dist/src/bitgo/trading/payload.d.ts +22 -0
- package/dist/src/bitgo/trading/payload.d.ts.map +1 -0
- package/dist/src/bitgo/trading/payload.js +3 -0
- package/dist/src/bitgo/trading/settlement.d.ts +16 -0
- package/dist/src/bitgo/trading/settlement.d.ts.map +1 -0
- package/dist/src/bitgo/trading/settlement.js +21 -0
- package/dist/src/bitgo/trading/settlements.d.ts +32 -0
- package/dist/src/bitgo/trading/settlements.d.ts.map +1 -0
- package/dist/src/bitgo/trading/settlements.js +61 -0
- package/dist/src/bitgo/trading/trade.d.ts +29 -0
- package/dist/src/bitgo/trading/trade.d.ts.map +1 -0
- package/dist/src/bitgo/trading/trade.js +11 -0
- package/dist/src/bitgo/trading/tradingAccount.d.ts +53 -0
- package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -0
- package/dist/src/bitgo/trading/tradingAccount.js +127 -0
- package/dist/src/bitgo/trading/tradingPartner.d.ts +26 -0
- package/dist/src/bitgo/trading/tradingPartner.d.ts.map +1 -0
- package/dist/src/bitgo/trading/tradingPartner.js +31 -0
- package/dist/src/bitgo/trading/tradingPartners.d.ts +24 -0
- package/dist/src/bitgo/trading/tradingPartners.d.ts.map +1 -0
- package/dist/src/bitgo/trading/tradingPartners.js +32 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +35 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +95 -0
- package/dist/src/bitgo/tss/ecdsa/index.d.ts +4 -0
- package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -0
- package/dist/src/bitgo/tss/ecdsa/index.js +26 -0
- package/dist/src/bitgo/tss/ecdsa/types.d.ts +30 -0
- package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -0
- package/dist/src/bitgo/tss/ecdsa/types.js +3 -0
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +102 -0
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -0
- package/dist/src/bitgo/tss/eddsa/eddsa.js +256 -0
- package/dist/src/bitgo/tss/eddsa/index.d.ts +6 -0
- package/dist/src/bitgo/tss/eddsa/index.d.ts.map +1 -0
- package/dist/src/bitgo/tss/eddsa/index.js +37 -0
- package/dist/src/bitgo/tss/eddsa/types.d.ts +23 -0
- package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -0
- package/dist/src/bitgo/tss/eddsa/types.js +3 -0
- package/dist/src/bitgo/tss/index.d.ts +6 -0
- package/dist/src/bitgo/tss/index.d.ts.map +1 -0
- package/dist/src/bitgo/tss/index.js +42 -0
- package/dist/src/bitgo/tss/types.d.ts +6 -0
- package/dist/src/bitgo/tss/types.d.ts.map +1 -0
- package/dist/src/bitgo/tss/types.js +10 -0
- package/dist/src/bitgo/types.d.ts +4 -0
- package/dist/src/bitgo/types.d.ts.map +1 -0
- package/dist/src/bitgo/types.js +3 -0
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +6 -0
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -0
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +30 -0
- package/dist/src/bitgo/utils/blsUtils.d.ts +51 -0
- package/dist/src/bitgo/utils/blsUtils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/blsUtils.js +166 -0
- package/dist/src/bitgo/utils/iBlsUtils.d.ts +14 -0
- package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/iBlsUtils.js +3 -0
- package/dist/src/bitgo/utils/index.d.ts +12 -0
- package/dist/src/bitgo/utils/index.d.ts.map +1 -0
- package/dist/src/bitgo/utils/index.js +37 -0
- package/dist/src/bitgo/utils/mpcUtils.d.ts +31 -0
- package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/mpcUtils.js +55 -0
- package/dist/src/bitgo/utils/opengpgUtils.d.ts +51 -0
- package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/opengpgUtils.js +136 -0
- package/dist/src/bitgo/utils/promise-utils.d.ts +5 -0
- package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/promise-utils.js +12 -0
- package/dist/src/bitgo/utils/triple.d.ts +3 -0
- package/dist/src/bitgo/utils/triple.d.ts.map +1 -0
- package/dist/src/bitgo/utils/triple.js +8 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +117 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +351 -0
- package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +5 -0
- package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/index.js +29 -0
- package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +72 -0
- package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/types.js +10 -0
- package/dist/src/bitgo/utils/tss/index.d.ts +4 -0
- package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/index.js +29 -0
- package/dist/src/bitgo/utils/util.d.ts +77 -0
- package/dist/src/bitgo/utils/util.d.ts.map +1 -0
- package/dist/src/bitgo/utils/util.js +198 -0
- package/dist/src/bitgo/wallet/iWallet.d.ts +510 -0
- package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/iWallet.js +3 -0
- package/dist/src/bitgo/wallet/iWallets.d.ts +105 -0
- package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/iWallets.js +3 -0
- package/dist/src/bitgo/wallet/index.d.ts +5 -0
- package/dist/src/bitgo/wallet/index.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/index.js +17 -0
- package/dist/src/bitgo/wallet/wallet.d.ts +650 -0
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/wallet.js +2039 -0
- package/dist/src/bitgo/wallet/wallets.d.ts +134 -0
- package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/wallets.js +605 -0
- package/dist/src/bitgo/webhook/iWebhooks.d.ts +26 -0
- package/dist/src/bitgo/webhook/iWebhooks.d.ts.map +1 -0
- package/dist/src/bitgo/webhook/iWebhooks.js +3 -0
- package/dist/src/bitgo/webhook/index.d.ts +3 -0
- package/dist/src/bitgo/webhook/index.d.ts.map +1 -0
- package/dist/src/bitgo/webhook/index.js +15 -0
- package/dist/src/bitgo/webhook/webhooks.d.ts +43 -0
- package/dist/src/bitgo/webhook/webhooks.d.ts.map +1 -0
- package/dist/src/bitgo/webhook/webhooks.js +102 -0
- package/dist/src/{bigojsError.d.ts → bitgojsError.d.ts} +1 -1
- package/dist/src/bitgojsError.d.ts.map +1 -0
- package/dist/src/bitgojsError.js +11 -0
- package/dist/src/common.d.ts +1 -1
- package/dist/src/common.d.ts.map +1 -1
- package/dist/src/common.js +3 -3
- package/dist/src/index.d.ts +4 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +6 -5
- package/dist/tsconfig.tsbuildinfo +4441 -457
- package/package.json +32 -13
- package/dist/src/bigojsError.d.ts.map +0 -1
- package/dist/src/bigojsError.js +0 -11
- package/dist/src/v2/environments.d.ts.map +0 -1
- package/dist/src/v2/environments.js +0 -142
- package/dist/src/v2/index.d.ts +0 -3
- package/dist/src/v2/index.d.ts.map +0 -1
- package/dist/src/v2/types.d.ts +0 -2
- package/dist/src/v2/types.d.ts.map +0 -1
- package/dist/src/v2/types.js +0 -3
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TradingReferralRequesterSide = void 0;
|
|
4
|
+
var TradingReferralRequesterSide;
|
|
5
|
+
(function (TradingReferralRequesterSide) {
|
|
6
|
+
TradingReferralRequesterSide["PRIMARY"] = "primary";
|
|
7
|
+
TradingReferralRequesterSide["SECONDARY"] = "secondary";
|
|
8
|
+
})(TradingReferralRequesterSide = exports.TradingReferralRequesterSide || (exports.TradingReferralRequesterSide = {}));
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaVRyYWRpbmdQYXJ0bmVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby90cmFkaW5nL2lUcmFkaW5nUGFydG5lcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsSUFBWSw0QkFHWDtBQUhELFdBQVksNEJBQTRCO0lBQ3RDLG1EQUFtQixDQUFBO0lBQ25CLHVEQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFIVyw0QkFBNEIsR0FBNUIsb0NBQTRCLEtBQTVCLG9DQUE0QixRQUd2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElUcmFkaW5nUGFydG5lciwgVHJhZGluZ1BhcnRuZXJUeXBlIH0gZnJvbSAnLi9pVHJhZGluZ1BhcnRuZXInO1xuXG5leHBvcnQgZW51bSBUcmFkaW5nUmVmZXJyYWxSZXF1ZXN0ZXJTaWRlIHtcbiAgUFJJTUFSWSA9ICdwcmltYXJ5JywgLy8gaWYgcGFydG5lcnNoaXAgaXMgb2YgdHlwZSBhZ2VuY3ksIHByaW1hcnkgaXMgdGhlIGFnZW50XG4gIFNFQ09OREFSWSA9ICdzZWNvbmRhcnknLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYWRpbmdQYXJ0bmVyQWRkQnlDb2RlUGFyYW1ldGVycyB7XG4gIHJlZmVycmFsQ29kZTogc3RyaW5nO1xuICB0eXBlOiBUcmFkaW5nUGFydG5lclR5cGU7XG4gIHJlcXVlc3RlclNpZGU6IFRyYWRpbmdSZWZlcnJhbFJlcXVlc3RlclNpZGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRyYWRpbmdQYXJ0bmVycyB7XG4gIGxpc3QoKTogUHJvbWlzZTxJVHJhZGluZ1BhcnRuZXJbXT47XG4gIGFkZEJ5Q29kZShwYXJhbXM6IFRyYWRpbmdQYXJ0bmVyQWRkQnlDb2RlUGFyYW1ldGVycyk6IFByb21pc2U8SVRyYWRpbmdQYXJ0bmVyPjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from './affirmation';
|
|
2
|
+
export * from './affirmations';
|
|
3
|
+
export * from './iAffirmation';
|
|
4
|
+
export * from './iAffirmations';
|
|
5
|
+
export * from './iSettlement';
|
|
6
|
+
export * from './iSettlements';
|
|
7
|
+
export * from './iTradingAccount';
|
|
8
|
+
export * from './iTradingPartner';
|
|
9
|
+
export * from './iTradingPartners';
|
|
10
|
+
export * from './lock';
|
|
11
|
+
export * from './payload';
|
|
12
|
+
export * from './settlement';
|
|
13
|
+
export * from './settlements';
|
|
14
|
+
export * from './trade';
|
|
15
|
+
export * from './tradingAccount';
|
|
16
|
+
export * from './tradingPartner';
|
|
17
|
+
export * from './tradingPartners';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
+
};
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
__exportStar(require("./affirmation"), exports);
|
|
14
|
+
__exportStar(require("./affirmations"), exports);
|
|
15
|
+
__exportStar(require("./iAffirmation"), exports);
|
|
16
|
+
__exportStar(require("./iAffirmations"), exports);
|
|
17
|
+
__exportStar(require("./iSettlement"), exports);
|
|
18
|
+
__exportStar(require("./iSettlements"), exports);
|
|
19
|
+
__exportStar(require("./iTradingAccount"), exports);
|
|
20
|
+
__exportStar(require("./iTradingPartner"), exports);
|
|
21
|
+
__exportStar(require("./iTradingPartners"), exports);
|
|
22
|
+
__exportStar(require("./lock"), exports);
|
|
23
|
+
__exportStar(require("./payload"), exports);
|
|
24
|
+
__exportStar(require("./settlement"), exports);
|
|
25
|
+
__exportStar(require("./settlements"), exports);
|
|
26
|
+
__exportStar(require("./trade"), exports);
|
|
27
|
+
__exportStar(require("./tradingAccount"), exports);
|
|
28
|
+
__exportStar(require("./tradingPartner"), exports);
|
|
29
|
+
__exportStar(require("./tradingPartners"), exports);
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxnREFBOEI7QUFDOUIsaURBQStCO0FBQy9CLGlEQUErQjtBQUMvQixrREFBZ0M7QUFDaEMsZ0RBQThCO0FBQzlCLGlEQUErQjtBQUMvQixvREFBa0M7QUFDbEMsb0RBQWtDO0FBQ2xDLHFEQUFtQztBQUNuQyx5Q0FBdUI7QUFDdkIsNENBQTBCO0FBQzFCLCtDQUE2QjtBQUM3QixnREFBOEI7QUFDOUIsMENBQXdCO0FBQ3hCLG1EQUFpQztBQUNqQyxtREFBaUM7QUFDakMsb0RBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hZmZpcm1hdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2FmZmlybWF0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2lBZmZpcm1hdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2lBZmZpcm1hdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9pU2V0dGxlbWVudCc7XG5leHBvcnQgKiBmcm9tICcuL2lTZXR0bGVtZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2lUcmFkaW5nQWNjb3VudCc7XG5leHBvcnQgKiBmcm9tICcuL2lUcmFkaW5nUGFydG5lcic7XG5leHBvcnQgKiBmcm9tICcuL2lUcmFkaW5nUGFydG5lcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2NrJztcbmV4cG9ydCAqIGZyb20gJy4vcGF5bG9hZCc7XG5leHBvcnQgKiBmcm9tICcuL3NldHRsZW1lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXR0bGVtZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL3RyYWRlJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhZGluZ0FjY291bnQnO1xuZXhwb3J0ICogZnJvbSAnLi90cmFkaW5nUGFydG5lcic7XG5leHBvcnQgKiBmcm9tICcuL3RyYWRpbmdQYXJ0bmVycyc7XG4iXX0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface Lock {
|
|
2
|
+
id: string;
|
|
3
|
+
accountId: string;
|
|
4
|
+
status: LockStatus;
|
|
5
|
+
amount: string;
|
|
6
|
+
currency: string;
|
|
7
|
+
createdAt: Date;
|
|
8
|
+
}
|
|
9
|
+
export declare enum LockStatus {
|
|
10
|
+
ACTIVE = "active",
|
|
11
|
+
SETTLED = "settled",
|
|
12
|
+
FAILED = "failed",
|
|
13
|
+
REQUESTED = "requested",
|
|
14
|
+
RELEASED = "released"
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=lock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/lock.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LockStatus = void 0;
|
|
4
|
+
var LockStatus;
|
|
5
|
+
(function (LockStatus) {
|
|
6
|
+
LockStatus["ACTIVE"] = "active";
|
|
7
|
+
LockStatus["SETTLED"] = "settled";
|
|
8
|
+
LockStatus["FAILED"] = "failed";
|
|
9
|
+
LockStatus["REQUESTED"] = "requested";
|
|
10
|
+
LockStatus["RELEASED"] = "released";
|
|
11
|
+
})(LockStatus = exports.LockStatus || (exports.LockStatus = {}));
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby90cmFkaW5nL2xvY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBU0EsSUFBWSxVQU1YO0FBTkQsV0FBWSxVQUFVO0lBQ3BCLCtCQUFpQixDQUFBO0lBQ2pCLGlDQUFtQixDQUFBO0lBQ25CLCtCQUFpQixDQUFBO0lBQ2pCLHFDQUF1QixDQUFBO0lBQ3ZCLG1DQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFOVyxVQUFVLEdBQVYsa0JBQVUsS0FBVixrQkFBVSxRQU1yQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTG9jayB7XG4gIGlkOiBzdHJpbmc7XG4gIGFjY291bnRJZDogc3RyaW5nO1xuICBzdGF0dXM6IExvY2tTdGF0dXM7XG4gIGFtb3VudDogc3RyaW5nO1xuICBjdXJyZW5jeTogc3RyaW5nO1xuICBjcmVhdGVkQXQ6IERhdGU7XG59XG5cbmV4cG9ydCBlbnVtIExvY2tTdGF0dXMge1xuICBBQ1RJVkUgPSAnYWN0aXZlJyxcbiAgU0VUVExFRCA9ICdzZXR0bGVkJyxcbiAgRkFJTEVEID0gJ2ZhaWxlZCcsXG4gIFJFUVVFU1RFRCA9ICdyZXF1ZXN0ZWQnLFxuICBSRUxFQVNFRCA9ICdyZWxlYXNlZCcsXG59XG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
declare type CURRENT_PAYLOAD_VERSION = '1.2.0';
|
|
2
|
+
export interface Payload {
|
|
3
|
+
version: CURRENT_PAYLOAD_VERSION;
|
|
4
|
+
accountId: string;
|
|
5
|
+
amounts: PayloadAmounts[];
|
|
6
|
+
nonceHold: string;
|
|
7
|
+
nonceSettle: string;
|
|
8
|
+
}
|
|
9
|
+
export interface PayloadAmounts {
|
|
10
|
+
accountId: string;
|
|
11
|
+
sendAmount: string;
|
|
12
|
+
sendCurrency: string;
|
|
13
|
+
receiveAmount: string;
|
|
14
|
+
receiveCurrency: string;
|
|
15
|
+
sendSubtotal: string;
|
|
16
|
+
fees?: {
|
|
17
|
+
feeType: string;
|
|
18
|
+
feeAmount: string;
|
|
19
|
+
}[];
|
|
20
|
+
}
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=payload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/payload.ts"],"names":[],"mappings":"AAAA,aAAK,uBAAuB,GAAG,OAAO,CAAC;AAEvC,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,uBAAuB,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE;QAEL,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;CACL"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bG9hZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby90cmFkaW5nL3BheWxvYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbInR5cGUgQ1VSUkVOVF9QQVlMT0FEX1ZFUlNJT04gPSAnMS4yLjAnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBheWxvYWQge1xuICB2ZXJzaW9uOiBDVVJSRU5UX1BBWUxPQURfVkVSU0lPTjtcbiAgYWNjb3VudElkOiBzdHJpbmc7XG4gIGFtb3VudHM6IFBheWxvYWRBbW91bnRzW107XG4gIG5vbmNlSG9sZDogc3RyaW5nO1xuICBub25jZVNldHRsZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheWxvYWRBbW91bnRzIHtcbiAgYWNjb3VudElkOiBzdHJpbmc7XG4gIHNlbmRBbW91bnQ6IHN0cmluZztcbiAgc2VuZEN1cnJlbmN5OiBzdHJpbmc7XG4gIHJlY2VpdmVBbW91bnQ6IHN0cmluZztcbiAgcmVjZWl2ZUN1cnJlbmN5OiBzdHJpbmc7XG4gIHNlbmRTdWJ0b3RhbDogc3RyaW5nOyAvLyBzZW5kQW1vdW50IC0gZmVlc1tdLmZlZUFtb3VudFxuICBmZWVzPzoge1xuICAgIC8vIHdpbGwgb25seSBzaG93IHVwIGlmIHRoZSBhY2NvdW50SWQgaXMgdGhlIHNpZ25pbmcgYWNjb3VudElkXG4gICAgZmVlVHlwZTogc3RyaW5nO1xuICAgIGZlZUFtb3VudDogc3RyaW5nO1xuICB9W107XG59XG4iXX0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Affirmation, ISettlement, SettlementStatus, SettlementType, Trade } from '../trading';
|
|
2
|
+
export declare class Settlement implements ISettlement {
|
|
3
|
+
private readonly bitgo;
|
|
4
|
+
private readonly enterpriseId;
|
|
5
|
+
id: string;
|
|
6
|
+
requesterAccountId: string;
|
|
7
|
+
status: SettlementStatus;
|
|
8
|
+
type: SettlementType;
|
|
9
|
+
affirmations: Affirmation[];
|
|
10
|
+
createdAt: Date;
|
|
11
|
+
expireAt: Date;
|
|
12
|
+
settledAt: Date;
|
|
13
|
+
trades: Trade[];
|
|
14
|
+
constructor(settlementData: any, bitgo: any, enterpriseId: string);
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=settlement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settlement.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/settlement.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAE/F,qBAAa,UAAW,YAAW,WAAW;IAC5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAE/B,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,gBAAgB,CAAC;IACzB,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,EAAE,IAAI,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,KAAK,EAAE,CAAC;gBAEX,cAAc,KAAA,EAAE,KAAK,KAAA,EAAE,YAAY,EAAE,MAAM;CAgBxD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Settlement = void 0;
|
|
4
|
+
const trading_1 = require("../trading");
|
|
5
|
+
class Settlement {
|
|
6
|
+
constructor(settlementData, bitgo, enterpriseId) {
|
|
7
|
+
this.bitgo = bitgo;
|
|
8
|
+
this.enterpriseId = enterpriseId;
|
|
9
|
+
this.id = settlementData.id;
|
|
10
|
+
this.requesterAccountId = settlementData.requesterAccountId;
|
|
11
|
+
this.status = settlementData.status;
|
|
12
|
+
this.type = settlementData.type;
|
|
13
|
+
this.affirmations = settlementData.affirmations.map((affirmation) => new trading_1.Affirmation(affirmation, this.bitgo, this.enterpriseId));
|
|
14
|
+
this.createdAt = new Date(settlementData.createdAt);
|
|
15
|
+
this.expireAt = new Date(settlementData.expireAt);
|
|
16
|
+
this.settledAt = new Date(settlementData.settledAt);
|
|
17
|
+
this.trades = settlementData.trades;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.Settlement = Settlement;
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby90cmFkaW5nL3NldHRsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsd0NBQStGO0FBRS9GLE1BQWEsVUFBVTtJQWNyQixZQUFZLGNBQWMsRUFBRSxLQUFLLEVBQUUsWUFBb0I7UUFDckQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFFakMsSUFBSSxDQUFDLEVBQUUsR0FBRyxjQUFjLENBQUMsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxjQUFjLENBQUMsa0JBQWtCLENBQUM7UUFDNUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxJQUFJLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQztRQUNoQyxJQUFJLENBQUMsWUFBWSxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUNqRCxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxxQkFBVyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FDN0UsQ0FBQztRQUNGLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxNQUFNLEdBQUcsY0FBYyxDQUFDLE1BQWlCLENBQUM7SUFDakQsQ0FBQztDQUNGO0FBOUJELGdDQThCQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHByZXR0aWVyXG4gKi9cbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBBZmZpcm1hdGlvbiwgSVNldHRsZW1lbnQsIFNldHRsZW1lbnRTdGF0dXMsIFNldHRsZW1lbnRUeXBlLCBUcmFkZSB9IGZyb20gJy4uL3RyYWRpbmcnO1xuXG5leHBvcnQgY2xhc3MgU2V0dGxlbWVudCBpbXBsZW1lbnRzIElTZXR0bGVtZW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBiaXRnbzogQml0R29CYXNlO1xuICBwcml2YXRlIHJlYWRvbmx5IGVudGVycHJpc2VJZDogc3RyaW5nO1xuXG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuICBwdWJsaWMgcmVxdWVzdGVyQWNjb3VudElkOiBzdHJpbmc7XG4gIHB1YmxpYyBzdGF0dXM6IFNldHRsZW1lbnRTdGF0dXM7XG4gIHB1YmxpYyB0eXBlOiBTZXR0bGVtZW50VHlwZTtcbiAgcHVibGljIGFmZmlybWF0aW9uczogQWZmaXJtYXRpb25bXTtcbiAgcHVibGljIGNyZWF0ZWRBdDogRGF0ZTtcbiAgcHVibGljIGV4cGlyZUF0OiBEYXRlO1xuICBwdWJsaWMgc2V0dGxlZEF0OiBEYXRlO1xuICBwdWJsaWMgdHJhZGVzOiBUcmFkZVtdO1xuXG4gIGNvbnN0cnVjdG9yKHNldHRsZW1lbnREYXRhLCBiaXRnbywgZW50ZXJwcmlzZUlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmJpdGdvID0gYml0Z287XG4gICAgdGhpcy5lbnRlcnByaXNlSWQgPSBlbnRlcnByaXNlSWQ7XG5cbiAgICB0aGlzLmlkID0gc2V0dGxlbWVudERhdGEuaWQ7XG4gICAgdGhpcy5yZXF1ZXN0ZXJBY2NvdW50SWQgPSBzZXR0bGVtZW50RGF0YS5yZXF1ZXN0ZXJBY2NvdW50SWQ7XG4gICAgdGhpcy5zdGF0dXMgPSBzZXR0bGVtZW50RGF0YS5zdGF0dXM7XG4gICAgdGhpcy50eXBlID0gc2V0dGxlbWVudERhdGEudHlwZTtcbiAgICB0aGlzLmFmZmlybWF0aW9ucyA9IHNldHRsZW1lbnREYXRhLmFmZmlybWF0aW9ucy5tYXAoXG4gICAgICAoYWZmaXJtYXRpb24pID0+IG5ldyBBZmZpcm1hdGlvbihhZmZpcm1hdGlvbiwgdGhpcy5iaXRnbywgdGhpcy5lbnRlcnByaXNlSWQpXG4gICAgKTtcbiAgICB0aGlzLmNyZWF0ZWRBdCA9IG5ldyBEYXRlKHNldHRsZW1lbnREYXRhLmNyZWF0ZWRBdCk7XG4gICAgdGhpcy5leHBpcmVBdCA9IG5ldyBEYXRlKHNldHRsZW1lbnREYXRhLmV4cGlyZUF0KTtcbiAgICB0aGlzLnNldHRsZWRBdCA9IG5ldyBEYXRlKHNldHRsZW1lbnREYXRhLnNldHRsZWRBdCk7XG4gICAgdGhpcy50cmFkZXMgPSBzZXR0bGVtZW50RGF0YS50cmFkZXMgYXMgVHJhZGVbXTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @prettier
|
|
3
|
+
*/
|
|
4
|
+
import { BitGoBase } from '../bitgoBase';
|
|
5
|
+
import { CreateSettlementParams, GetOptions, ISettlement, ISettlements, Settlement, TradingAccount } from '../trading';
|
|
6
|
+
export declare class Settlements implements ISettlements {
|
|
7
|
+
private bitgo;
|
|
8
|
+
private enterpriseId;
|
|
9
|
+
private account?;
|
|
10
|
+
constructor(bitgo: BitGoBase, enterpriseId: string, account?: TradingAccount);
|
|
11
|
+
/**
|
|
12
|
+
* Retrieves all settlements for an enterprise
|
|
13
|
+
*/
|
|
14
|
+
list(): Promise<Settlement[]>;
|
|
15
|
+
/**
|
|
16
|
+
* Retrieves a single settlement by its ID.
|
|
17
|
+
* @param id ID of the settlement
|
|
18
|
+
* @param accountId ID of the trading account that the affirmation belongs to
|
|
19
|
+
*/
|
|
20
|
+
get({ id, accountId }: GetOptions): Promise<ISettlement>;
|
|
21
|
+
/**
|
|
22
|
+
* Submits a new settlement for a set of trades.
|
|
23
|
+
* NOTE: This function must be called as tradingAccount.settlements().create(), enterprise.settlements().create() is not a valid call.
|
|
24
|
+
* @param params
|
|
25
|
+
* @param params.requesterAccountId trading account ID that is creating this settlement
|
|
26
|
+
* @param params.payload payload authorizing the movement of funds for the included trades
|
|
27
|
+
* @param params.signature hex-encoded signature of the payload
|
|
28
|
+
* @param params.trades list of trades to settle as part of this settlement
|
|
29
|
+
*/
|
|
30
|
+
create(params: CreateSettlementParams): Promise<Settlement>;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=settlements.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settlements.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/settlements.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEvH,qBAAa,WAAY,YAAW,YAAY;IAC9C,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAiB;gBAErB,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc;IAM5E;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAcnC;;;;OAIG;IACG,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IAa9D;;;;;;;;OAQG;IACG,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC;CAkBlE"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Settlements = void 0;
|
|
4
|
+
const trading_1 = require("../trading");
|
|
5
|
+
class Settlements {
|
|
6
|
+
constructor(bitgo, enterpriseId, account) {
|
|
7
|
+
this.bitgo = bitgo;
|
|
8
|
+
this.enterpriseId = enterpriseId;
|
|
9
|
+
this.account = account;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Retrieves all settlements for an enterprise
|
|
13
|
+
*/
|
|
14
|
+
async list() {
|
|
15
|
+
let url;
|
|
16
|
+
if (this.account) {
|
|
17
|
+
url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${this.account.id}/settlements`);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/settlements`);
|
|
21
|
+
}
|
|
22
|
+
const response = (await this.bitgo.get(url).result());
|
|
23
|
+
return response.settlements.map((settlement) => new trading_1.Settlement(settlement, this.bitgo, this.enterpriseId));
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Retrieves a single settlement by its ID.
|
|
27
|
+
* @param id ID of the settlement
|
|
28
|
+
* @param accountId ID of the trading account that the affirmation belongs to
|
|
29
|
+
*/
|
|
30
|
+
async get({ id, accountId }) {
|
|
31
|
+
const account = accountId || (this.account && this.account.id);
|
|
32
|
+
if (!account) {
|
|
33
|
+
throw new Error('accountId must be provided in parameters for an enterprise context');
|
|
34
|
+
}
|
|
35
|
+
const url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${account}/settlements/${id}`);
|
|
36
|
+
const response = await this.bitgo.get(url).result();
|
|
37
|
+
return new trading_1.Settlement(response, this.bitgo, this.enterpriseId);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Submits a new settlement for a set of trades.
|
|
41
|
+
* NOTE: This function must be called as tradingAccount.settlements().create(), enterprise.settlements().create() is not a valid call.
|
|
42
|
+
* @param params
|
|
43
|
+
* @param params.requesterAccountId trading account ID that is creating this settlement
|
|
44
|
+
* @param params.payload payload authorizing the movement of funds for the included trades
|
|
45
|
+
* @param params.signature hex-encoded signature of the payload
|
|
46
|
+
* @param params.trades list of trades to settle as part of this settlement
|
|
47
|
+
*/
|
|
48
|
+
async create(params) {
|
|
49
|
+
if (!this.account) {
|
|
50
|
+
throw new Error('Must select a trading account before creating a settlement. Try tradingAccount.settlements().create()');
|
|
51
|
+
}
|
|
52
|
+
// payload must be stringified before being passed to API
|
|
53
|
+
const body = Object.assign({}, params);
|
|
54
|
+
body.payload = JSON.stringify(body.payload);
|
|
55
|
+
const url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${this.account.id}/settlements`);
|
|
56
|
+
const response = await this.bitgo.post(url).send(body).result();
|
|
57
|
+
return new trading_1.Settlement(response, this.bitgo, this.enterpriseId);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
exports.Settlements = Settlements;
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGxlbWVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy9zZXR0bGVtZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSx3Q0FBdUg7QUFFdkgsTUFBYSxXQUFXO0lBS3RCLFlBQVksS0FBZ0IsRUFBRSxZQUFvQixFQUFFLE9BQXdCO1FBQzFFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxJQUFJO1FBQ1IsSUFBSSxHQUFHLENBQUM7UUFDUixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQy9CLDRCQUE0QixJQUFJLENBQUMsWUFBWSxZQUFZLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxjQUFjLENBQ3ZGLENBQUM7U0FDSDthQUFNO1lBQ0wsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsNEJBQTRCLElBQUksQ0FBQyxZQUFZLGNBQWMsQ0FBQyxDQUFDO1NBQ2hHO1FBQ0QsTUFBTSxRQUFRLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFRLENBQUM7UUFFN0QsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxvQkFBVSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQWM7UUFDckMsTUFBTSxPQUFPLEdBQUcsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLG9FQUFvRSxDQUFDLENBQUM7U0FDdkY7UUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUNyQyw0QkFBNEIsSUFBSSxDQUFDLFlBQVksWUFBWSxPQUFPLGdCQUFnQixFQUFFLEVBQUUsQ0FDckYsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDcEQsT0FBTyxJQUFJLG9CQUFVLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBOEI7UUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FDYix1R0FBdUcsQ0FDeEcsQ0FBQztTQUNIO1FBRUQseURBQXlEO1FBQ3pELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE1BQWEsQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFNUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDckMsNEJBQTRCLElBQUksQ0FBQyxZQUFZLFlBQVksSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLGNBQWMsQ0FDdkYsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBRWhFLE9BQU8sSUFBSSxvQkFBVSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNqRSxDQUFDO0NBQ0Y7QUF6RUQsa0NBeUVDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnLi4vYml0Z29CYXNlJztcbmltcG9ydCB7IENyZWF0ZVNldHRsZW1lbnRQYXJhbXMsIEdldE9wdGlvbnMsIElTZXR0bGVtZW50LCBJU2V0dGxlbWVudHMsIFNldHRsZW1lbnQsIFRyYWRpbmdBY2NvdW50IH0gZnJvbSAnLi4vdHJhZGluZyc7XG5cbmV4cG9ydCBjbGFzcyBTZXR0bGVtZW50cyBpbXBsZW1lbnRzIElTZXR0bGVtZW50cyB7XG4gIHByaXZhdGUgYml0Z286IEJpdEdvQmFzZTtcbiAgcHJpdmF0ZSBlbnRlcnByaXNlSWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBhY2NvdW50PzogVHJhZGluZ0FjY291bnQ7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgZW50ZXJwcmlzZUlkOiBzdHJpbmcsIGFjY291bnQ/OiBUcmFkaW5nQWNjb3VudCkge1xuICAgIHRoaXMuYml0Z28gPSBiaXRnbztcbiAgICB0aGlzLmVudGVycHJpc2VJZCA9IGVudGVycHJpc2VJZDtcbiAgICB0aGlzLmFjY291bnQgPSBhY2NvdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBhbGwgc2V0dGxlbWVudHMgZm9yIGFuIGVudGVycHJpc2VcbiAgICovXG4gIGFzeW5jIGxpc3QoKTogUHJvbWlzZTxTZXR0bGVtZW50W10+IHtcbiAgICBsZXQgdXJsO1xuICAgIGlmICh0aGlzLmFjY291bnQpIHtcbiAgICAgIHVybCA9IHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybChcbiAgICAgICAgYC9hcGkvdHJhZGUvdjEvZW50ZXJwcmlzZS8ke3RoaXMuZW50ZXJwcmlzZUlkfS9hY2NvdW50LyR7dGhpcy5hY2NvdW50LmlkfS9zZXR0bGVtZW50c2BcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHVybCA9IHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybChgL2FwaS90cmFkZS92MS9lbnRlcnByaXNlLyR7dGhpcy5lbnRlcnByaXNlSWR9L3NldHRsZW1lbnRzYCk7XG4gICAgfVxuICAgIGNvbnN0IHJlc3BvbnNlID0gKGF3YWl0IHRoaXMuYml0Z28uZ2V0KHVybCkucmVzdWx0KCkpIGFzIGFueTtcblxuICAgIHJldHVybiByZXNwb25zZS5zZXR0bGVtZW50cy5tYXAoKHNldHRsZW1lbnQpID0+IG5ldyBTZXR0bGVtZW50KHNldHRsZW1lbnQsIHRoaXMuYml0Z28sIHRoaXMuZW50ZXJwcmlzZUlkKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGEgc2luZ2xlIHNldHRsZW1lbnQgYnkgaXRzIElELlxuICAgKiBAcGFyYW0gaWQgSUQgb2YgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIGFjY291bnRJZCBJRCBvZiB0aGUgdHJhZGluZyBhY2NvdW50IHRoYXQgdGhlIGFmZmlybWF0aW9uIGJlbG9uZ3MgdG9cbiAgICovXG4gIGFzeW5jIGdldCh7IGlkLCBhY2NvdW50SWQgfTogR2V0T3B0aW9ucyk6IFByb21pc2U8SVNldHRsZW1lbnQ+IHtcbiAgICBjb25zdCBhY2NvdW50ID0gYWNjb3VudElkIHx8ICh0aGlzLmFjY291bnQgJiYgdGhpcy5hY2NvdW50LmlkKTtcbiAgICBpZiAoIWFjY291bnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYWNjb3VudElkIG11c3QgYmUgcHJvdmlkZWQgaW4gcGFyYW1ldGVycyBmb3IgYW4gZW50ZXJwcmlzZSBjb250ZXh0Jyk7XG4gICAgfVxuXG4gICAgY29uc3QgdXJsID0gdGhpcy5iaXRnby5taWNyb3NlcnZpY2VzVXJsKFxuICAgICAgYC9hcGkvdHJhZGUvdjEvZW50ZXJwcmlzZS8ke3RoaXMuZW50ZXJwcmlzZUlkfS9hY2NvdW50LyR7YWNjb3VudH0vc2V0dGxlbWVudHMvJHtpZH1gXG4gICAgKTtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuYml0Z28uZ2V0KHVybCkucmVzdWx0KCk7XG4gICAgcmV0dXJuIG5ldyBTZXR0bGVtZW50KHJlc3BvbnNlLCB0aGlzLmJpdGdvLCB0aGlzLmVudGVycHJpc2VJZCk7XG4gIH1cblxuICAvKipcbiAgICogU3VibWl0cyBhIG5ldyBzZXR0bGVtZW50IGZvciBhIHNldCBvZiB0cmFkZXMuXG4gICAqIE5PVEU6IFRoaXMgZnVuY3Rpb24gbXVzdCBiZSBjYWxsZWQgYXMgdHJhZGluZ0FjY291bnQuc2V0dGxlbWVudHMoKS5jcmVhdGUoKSwgZW50ZXJwcmlzZS5zZXR0bGVtZW50cygpLmNyZWF0ZSgpIGlzIG5vdCBhIHZhbGlkIGNhbGwuXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHBhcmFtIHBhcmFtcy5yZXF1ZXN0ZXJBY2NvdW50SWQgdHJhZGluZyBhY2NvdW50IElEIHRoYXQgaXMgY3JlYXRpbmcgdGhpcyBzZXR0bGVtZW50XG4gICAqIEBwYXJhbSBwYXJhbXMucGF5bG9hZCBwYXlsb2FkIGF1dGhvcml6aW5nIHRoZSBtb3ZlbWVudCBvZiBmdW5kcyBmb3IgdGhlIGluY2x1ZGVkIHRyYWRlc1xuICAgKiBAcGFyYW0gcGFyYW1zLnNpZ25hdHVyZSBoZXgtZW5jb2RlZCBzaWduYXR1cmUgb2YgdGhlIHBheWxvYWRcbiAgICogQHBhcmFtIHBhcmFtcy50cmFkZXMgbGlzdCBvZiB0cmFkZXMgdG8gc2V0dGxlIGFzIHBhcnQgb2YgdGhpcyBzZXR0bGVtZW50XG4gICAqL1xuICBhc3luYyBjcmVhdGUocGFyYW1zOiBDcmVhdGVTZXR0bGVtZW50UGFyYW1zKTogUHJvbWlzZTxTZXR0bGVtZW50PiB7XG4gICAgaWYgKCF0aGlzLmFjY291bnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ011c3Qgc2VsZWN0IGEgdHJhZGluZyBhY2NvdW50IGJlZm9yZSBjcmVhdGluZyBhIHNldHRsZW1lbnQuIFRyeSB0cmFkaW5nQWNjb3VudC5zZXR0bGVtZW50cygpLmNyZWF0ZSgpJ1xuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBwYXlsb2FkIG11c3QgYmUgc3RyaW5naWZpZWQgYmVmb3JlIGJlaW5nIHBhc3NlZCB0byBBUElcbiAgICBjb25zdCBib2R5ID0gT2JqZWN0LmFzc2lnbih7fSwgcGFyYW1zIGFzIGFueSk7XG4gICAgYm9keS5wYXlsb2FkID0gSlNPTi5zdHJpbmdpZnkoYm9keS5wYXlsb2FkKTtcblxuICAgIGNvbnN0IHVybCA9IHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybChcbiAgICAgIGAvYXBpL3RyYWRlL3YxL2VudGVycHJpc2UvJHt0aGlzLmVudGVycHJpc2VJZH0vYWNjb3VudC8ke3RoaXMuYWNjb3VudC5pZH0vc2V0dGxlbWVudHNgXG4gICAgKTtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuYml0Z28ucG9zdCh1cmwpLnNlbmQoYm9keSkucmVzdWx0KCk7XG5cbiAgICByZXR1cm4gbmV3IFNldHRsZW1lbnQocmVzcG9uc2UsIHRoaXMuYml0Z28sIHRoaXMuZW50ZXJwcmlzZUlkKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents a single trade to be settled as part of a settlement. Only off-chain (OFC) currencies are supported, and
|
|
3
|
+
* all amounts must be represented in base units (such as cents, satoshi, or wei)
|
|
4
|
+
*/
|
|
5
|
+
export interface Trade {
|
|
6
|
+
id?: string;
|
|
7
|
+
externalId: string;
|
|
8
|
+
baseAccountId: string;
|
|
9
|
+
quoteAccountId: string;
|
|
10
|
+
timestamp: Date;
|
|
11
|
+
status: TradeStatus;
|
|
12
|
+
baseAmount: string;
|
|
13
|
+
quoteAmount: string;
|
|
14
|
+
baseCurrency: string;
|
|
15
|
+
quoteCurrency: string;
|
|
16
|
+
baseReceiveAmount?: string;
|
|
17
|
+
quoteReceiveAmount?: string;
|
|
18
|
+
baseReceiveCurrency?: string;
|
|
19
|
+
quoteReceiveCurrency?: string;
|
|
20
|
+
costBasis: string;
|
|
21
|
+
costBasisCurrency: string;
|
|
22
|
+
}
|
|
23
|
+
export declare enum TradeStatus {
|
|
24
|
+
CANCELED = "canceled",
|
|
25
|
+
EXECUTED = "executed",
|
|
26
|
+
PENDING = "pending",
|
|
27
|
+
FAILED = "failed"
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=trade.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trade.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/trade.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,KAAK;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,oBAAY,WAAW;IACrB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TradeStatus = void 0;
|
|
4
|
+
var TradeStatus;
|
|
5
|
+
(function (TradeStatus) {
|
|
6
|
+
TradeStatus["CANCELED"] = "canceled";
|
|
7
|
+
TradeStatus["EXECUTED"] = "executed";
|
|
8
|
+
TradeStatus["PENDING"] = "pending";
|
|
9
|
+
TradeStatus["FAILED"] = "failed";
|
|
10
|
+
})(TradeStatus = exports.TradeStatus || (exports.TradeStatus = {}));
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy90cmFkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF1QkEsSUFBWSxXQUtYO0FBTEQsV0FBWSxXQUFXO0lBQ3JCLG9DQUFxQixDQUFBO0lBQ3JCLG9DQUFxQixDQUFBO0lBQ3JCLGtDQUFtQixDQUFBO0lBQ25CLGdDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFMVyxXQUFXLEdBQVgsbUJBQVcsS0FBWCxtQkFBVyxRQUt0QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmVwcmVzZW50cyBhIHNpbmdsZSB0cmFkZSB0byBiZSBzZXR0bGVkIGFzIHBhcnQgb2YgYSBzZXR0bGVtZW50LiBPbmx5IG9mZi1jaGFpbiAoT0ZDKSBjdXJyZW5jaWVzIGFyZSBzdXBwb3J0ZWQsIGFuZFxuICogYWxsIGFtb3VudHMgbXVzdCBiZSByZXByZXNlbnRlZCBpbiBiYXNlIHVuaXRzIChzdWNoIGFzIGNlbnRzLCBzYXRvc2hpLCBvciB3ZWkpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhZGUge1xuICBpZD86IHN0cmluZztcbiAgZXh0ZXJuYWxJZDogc3RyaW5nO1xuICBiYXNlQWNjb3VudElkOiBzdHJpbmc7XG4gIHF1b3RlQWNjb3VudElkOiBzdHJpbmc7XG4gIHRpbWVzdGFtcDogRGF0ZTtcbiAgc3RhdHVzOiBUcmFkZVN0YXR1cztcbiAgYmFzZUFtb3VudDogc3RyaW5nO1xuICBxdW90ZUFtb3VudDogc3RyaW5nO1xuICBiYXNlQ3VycmVuY3k6IHN0cmluZztcbiAgcXVvdGVDdXJyZW5jeTogc3RyaW5nO1xuICBiYXNlUmVjZWl2ZUFtb3VudD86IHN0cmluZztcbiAgcXVvdGVSZWNlaXZlQW1vdW50Pzogc3RyaW5nO1xuICBiYXNlUmVjZWl2ZUN1cnJlbmN5Pzogc3RyaW5nO1xuICBxdW90ZVJlY2VpdmVDdXJyZW5jeT86IHN0cmluZztcbiAgY29zdEJhc2lzOiBzdHJpbmc7XG4gIGNvc3RCYXNpc0N1cnJlbmN5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFRyYWRlU3RhdHVzIHtcbiAgQ0FOQ0VMRUQgPSAnY2FuY2VsZWQnLFxuICBFWEVDVVRFRCA9ICdleGVjdXRlZCcsXG4gIFBFTkRJTkcgPSAncGVuZGluZycsXG4gIEZBSUxFRCA9ICdmYWlsZWQnLFxufVxuIl19
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { BitGoBase } from '../bitgoBase';
|
|
2
|
+
import { BuildPayloadParameters, CalculateSettlementFeesParams, IAffirmations, ISettlements, ITradingAccount, ITradingPartners, Payload, SettlementFees, SignPayloadParameters } from '../trading';
|
|
3
|
+
import { IWallet } from '../wallet';
|
|
4
|
+
export declare class TradingAccount implements ITradingAccount {
|
|
5
|
+
private readonly bitgo;
|
|
6
|
+
private readonly enterpriseId;
|
|
7
|
+
wallet: IWallet;
|
|
8
|
+
constructor(enterpriseId: string, wallet: IWallet, bitgo: BitGoBase);
|
|
9
|
+
get id(): string;
|
|
10
|
+
/**
|
|
11
|
+
* Builds a payload authorizing trade from this trading account.
|
|
12
|
+
* @param params
|
|
13
|
+
* @param params.amounts[] array of amounts that will be traded as part of the settlement
|
|
14
|
+
* @param params.amounts[].accountId the accountId corresponding with the sending and receiving amounts for the settlement
|
|
15
|
+
* @param params.amounts[].sendAmount amount of currency sent by trading account of given accountId
|
|
16
|
+
* @param params.amounts[].sendCurrency currency of amount sent by trading account of given accountId
|
|
17
|
+
* @param params.amounts[].receiveAmount amount of currency received by trading account of given accountId
|
|
18
|
+
* @param params.amounts[].receiveCurrency currency of amount received by trading account of given accountId
|
|
19
|
+
* @returns unsigned trade payload for the given parameters. This object should be stringified with JSON.stringify() before being submitted
|
|
20
|
+
*/
|
|
21
|
+
buildPayload(params: BuildPayloadParameters): Promise<Payload>;
|
|
22
|
+
/**
|
|
23
|
+
* Verifies that a payload received from BitGo sufficiently matches the expected parameters. This is used to prevent
|
|
24
|
+
* man-in-the-middle attacks which could maliciously alter the contents of a payload.
|
|
25
|
+
* @param params parameters used to build the payload
|
|
26
|
+
* @param payload payload received from the BitGo API
|
|
27
|
+
* @returns true if the payload's sensitive fields match, false if the payload may have been tampered with
|
|
28
|
+
*/
|
|
29
|
+
verifyPayload(params: BuildPayloadParameters, payload: string): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Calculates the necessary fees to complete a settlement between two parties, based on the amounts and currencies of the settlement.
|
|
32
|
+
* @param params
|
|
33
|
+
* @param params.counterpartyAccountId Account ID of the counterparty of the settlement
|
|
34
|
+
* @param params.sendCurrency Currency to be sent as part of the settlement
|
|
35
|
+
* @param params.sendAmount Amount of currency (in base units such as cents, satoshis, or wei) to be sent
|
|
36
|
+
* @param params.receiveCurrency Currency to be received as part of the settlement
|
|
37
|
+
* @param params.receiveAmount Amount of currency (in base units such as cents, satoshis, or wei) to be received
|
|
38
|
+
* @returns Fee rate, currency, and total amount of the described settlement
|
|
39
|
+
*/
|
|
40
|
+
calculateSettlementFees(params: CalculateSettlementFeesParams): Promise<SettlementFees>;
|
|
41
|
+
/**
|
|
42
|
+
* Signs a pre-built trade payload with the user key on this trading account
|
|
43
|
+
* @param params
|
|
44
|
+
* @param params.payload trade payload object from TradingAccount::buildPayload()
|
|
45
|
+
* @param params.walletPassphrase passphrase on this trading account, used to unlock the account user key
|
|
46
|
+
* @returns hex-encoded signature of the payload
|
|
47
|
+
*/
|
|
48
|
+
signPayload(params: SignPayloadParameters): Promise<string>;
|
|
49
|
+
affirmations(): IAffirmations;
|
|
50
|
+
settlements(): ISettlements;
|
|
51
|
+
partners(): ITradingPartners;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=tradingAccount.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tradingAccount.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/tradingAccount.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAEL,sBAAsB,EACtB,6BAA6B,EAC7B,aAAa,EACb,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,OAAO,EACP,cAAc,EAEd,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,qBAAa,cAAe,YAAW,eAAe;IACpD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAE/B,MAAM,EAAE,OAAO,CAAC;gBAEX,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;IAMnE,IAAI,EAAE,WAEL;IAED;;;;;;;;;;OAUG;IACG,YAAY,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBpE;;;;;;OAMG;IACH,aAAa,CAAC,MAAM,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAiDvE;;;;;;;;;OASG;IACG,uBAAuB,CAAC,MAAM,EAAE,6BAA6B,GAAG,OAAO,CAAC,cAAc,CAAC;IAQ7F;;;;;;OAMG;IACG,WAAW,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAUjE,YAAY,IAAI,aAAa;IAI7B,WAAW,IAAI,YAAY;IAI3B,QAAQ,IAAI,gBAAgB;CAG7B"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TradingAccount = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @prettier
|
|
6
|
+
*/
|
|
7
|
+
const bignumber_js_1 = require("bignumber.js");
|
|
8
|
+
const trading_1 = require("../trading");
|
|
9
|
+
const TRADE_PAYLOAD_VERSION = '1.2.0';
|
|
10
|
+
class TradingAccount {
|
|
11
|
+
constructor(enterpriseId, wallet, bitgo) {
|
|
12
|
+
this.enterpriseId = enterpriseId;
|
|
13
|
+
this.wallet = wallet;
|
|
14
|
+
this.bitgo = bitgo;
|
|
15
|
+
}
|
|
16
|
+
get id() {
|
|
17
|
+
return this.wallet.id();
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Builds a payload authorizing trade from this trading account.
|
|
21
|
+
* @param params
|
|
22
|
+
* @param params.amounts[] array of amounts that will be traded as part of the settlement
|
|
23
|
+
* @param params.amounts[].accountId the accountId corresponding with the sending and receiving amounts for the settlement
|
|
24
|
+
* @param params.amounts[].sendAmount amount of currency sent by trading account of given accountId
|
|
25
|
+
* @param params.amounts[].sendCurrency currency of amount sent by trading account of given accountId
|
|
26
|
+
* @param params.amounts[].receiveAmount amount of currency received by trading account of given accountId
|
|
27
|
+
* @param params.amounts[].receiveCurrency currency of amount received by trading account of given accountId
|
|
28
|
+
* @returns unsigned trade payload for the given parameters. This object should be stringified with JSON.stringify() before being submitted
|
|
29
|
+
*/
|
|
30
|
+
async buildPayload(params) {
|
|
31
|
+
const url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${this.id}/payload`);
|
|
32
|
+
const body = {
|
|
33
|
+
version: TRADE_PAYLOAD_VERSION,
|
|
34
|
+
amounts: params.amounts,
|
|
35
|
+
};
|
|
36
|
+
const response = (await this.bitgo.post(url).send(body).result());
|
|
37
|
+
if (!this.verifyPayload(params, response.payload)) {
|
|
38
|
+
throw new Error('Unable to verify trade payload. You may need to update the BitGo SDK, or the payload may have been tampered with.');
|
|
39
|
+
}
|
|
40
|
+
return JSON.parse(response.payload);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Verifies that a payload received from BitGo sufficiently matches the expected parameters. This is used to prevent
|
|
44
|
+
* man-in-the-middle attacks which could maliciously alter the contents of a payload.
|
|
45
|
+
* @param params parameters used to build the payload
|
|
46
|
+
* @param payload payload received from the BitGo API
|
|
47
|
+
* @returns true if the payload's sensitive fields match, false if the payload may have been tampered with
|
|
48
|
+
*/
|
|
49
|
+
verifyPayload(params, payload) {
|
|
50
|
+
const payloadObj = JSON.parse(payload);
|
|
51
|
+
const paramsCopy = JSON.parse(JSON.stringify(params)); // needs to be a deep copy
|
|
52
|
+
// Verifies that for each party in the payload, we requested a matching party, only checking sensitive fields
|
|
53
|
+
let validAmounts = 0;
|
|
54
|
+
for (const amount of payloadObj.amounts) {
|
|
55
|
+
const matchingExpectedParty = paramsCopy.amounts.findIndex((expectedAmount) => amount.accountId === expectedAmount.accountId &&
|
|
56
|
+
amount.sendCurrency === expectedAmount.sendCurrency &&
|
|
57
|
+
amount.sendSubtotal === expectedAmount.sendAmount &&
|
|
58
|
+
amount.receiveAmount === expectedAmount.receiveAmount &&
|
|
59
|
+
amount.receiveCurrency === expectedAmount.receiveCurrency);
|
|
60
|
+
if (matchingExpectedParty === -1) {
|
|
61
|
+
// matchingExpectedParty not found to the payloadObject
|
|
62
|
+
// payload is not valid
|
|
63
|
+
break;
|
|
64
|
+
}
|
|
65
|
+
if (amount.fees && amount.fees.length > 0) {
|
|
66
|
+
let feeTotal = new bignumber_js_1.BigNumber(0);
|
|
67
|
+
for (const fee of amount.fees) {
|
|
68
|
+
feeTotal = feeTotal.plus(new bignumber_js_1.BigNumber(fee.feeAmount));
|
|
69
|
+
}
|
|
70
|
+
const expectedTotalAmount = new bignumber_js_1.BigNumber(paramsCopy.amounts[matchingExpectedParty].sendAmount).plus(feeTotal);
|
|
71
|
+
if (expectedTotalAmount.toString() !== amount.sendAmount) {
|
|
72
|
+
// expected total does not match the sendAmount of the payload
|
|
73
|
+
// payload is not valid
|
|
74
|
+
break;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
// matching party found, and fee found
|
|
78
|
+
validAmounts = validAmounts + 1;
|
|
79
|
+
// delete so we ensure no duplicates
|
|
80
|
+
paramsCopy.amounts.splice(matchingExpectedParty, 1);
|
|
81
|
+
}
|
|
82
|
+
return (payloadObj.accountId === this.id &&
|
|
83
|
+
payloadObj.amounts.length === params.amounts.length &&
|
|
84
|
+
validAmounts === payloadObj.amounts.length);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Calculates the necessary fees to complete a settlement between two parties, based on the amounts and currencies of the settlement.
|
|
88
|
+
* @param params
|
|
89
|
+
* @param params.counterpartyAccountId Account ID of the counterparty of the settlement
|
|
90
|
+
* @param params.sendCurrency Currency to be sent as part of the settlement
|
|
91
|
+
* @param params.sendAmount Amount of currency (in base units such as cents, satoshis, or wei) to be sent
|
|
92
|
+
* @param params.receiveCurrency Currency to be received as part of the settlement
|
|
93
|
+
* @param params.receiveAmount Amount of currency (in base units such as cents, satoshis, or wei) to be received
|
|
94
|
+
* @returns Fee rate, currency, and total amount of the described settlement
|
|
95
|
+
*/
|
|
96
|
+
async calculateSettlementFees(params) {
|
|
97
|
+
const url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${this.id}/calculatefees`);
|
|
98
|
+
return await this.bitgo.post(url).send(params).result();
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Signs a pre-built trade payload with the user key on this trading account
|
|
102
|
+
* @param params
|
|
103
|
+
* @param params.payload trade payload object from TradingAccount::buildPayload()
|
|
104
|
+
* @param params.walletPassphrase passphrase on this trading account, used to unlock the account user key
|
|
105
|
+
* @returns hex-encoded signature of the payload
|
|
106
|
+
*/
|
|
107
|
+
async signPayload(params) {
|
|
108
|
+
const key = (await this.wallet.baseCoin.keychains().get({ id: this.wallet.keyIds()[0] }));
|
|
109
|
+
const prv = this.wallet.bitgo.decrypt({
|
|
110
|
+
input: key.encryptedPrv,
|
|
111
|
+
password: params.walletPassphrase,
|
|
112
|
+
});
|
|
113
|
+
const payload = JSON.stringify(params.payload);
|
|
114
|
+
return (await this.wallet.baseCoin.signMessage({ prv }, payload)).toString('hex');
|
|
115
|
+
}
|
|
116
|
+
affirmations() {
|
|
117
|
+
return new trading_1.Affirmations(this.bitgo, this.enterpriseId, this);
|
|
118
|
+
}
|
|
119
|
+
settlements() {
|
|
120
|
+
return new trading_1.Settlements(this.bitgo, this.enterpriseId, this);
|
|
121
|
+
}
|
|
122
|
+
partners() {
|
|
123
|
+
return new trading_1.TradingPartners(this.bitgo, this.enterpriseId, this);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
exports.TradingAccount = TradingAccount;
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhZGluZ0FjY291bnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy90cmFkaW5nQWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILCtDQUF5QztBQUV6Qyx3Q0Fhb0I7QUFHcEIsTUFBTSxxQkFBcUIsR0FBRyxPQUFPLENBQUM7QUFFdEMsTUFBYSxjQUFjO0lBTXpCLFlBQVksWUFBb0IsRUFBRSxNQUFlLEVBQUUsS0FBZ0I7UUFDakUsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksRUFBRTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNILEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBOEI7UUFDL0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyw0QkFBNEIsSUFBSSxDQUFDLFlBQVksWUFBWSxJQUFJLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVwSCxNQUFNLElBQUksR0FBRztZQUNYLE9BQU8sRUFBRSxxQkFBcUI7WUFDOUIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1NBQ3hCLENBQUM7UUFFRixNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFRLENBQUM7UUFFekUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNqRCxN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QUFwSkQsd0NBb0pDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgQmlnTnVtYmVyIH0gZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQge1xuICBBZmZpcm1hdGlvbnMsXG4gIEJ1aWxkUGF5bG9hZFBhcmFtZXRlcnMsXG4gIENhbGN1bGF0ZVNldHRsZW1lbnRGZWVzUGFyYW1zLFxuICBJQWZmaXJtYXRpb25zLFxuICBJU2V0dGxlbWVudHMsXG4gIElUcmFkaW5nQWNjb3VudCxcbiAgSVRyYWRpbmdQYXJ0bmVycyxcbiAgUGF5bG9hZCxcbiAgU2V0dGxlbWVudEZlZXMsXG4gIFNldHRsZW1lbnRzLFxuICBTaWduUGF5bG9hZFBhcmFtZXRlcnMsXG4gIFRyYWRpbmdQYXJ0bmVycyxcbn0gZnJvbSAnLi4vdHJhZGluZyc7XG5pbXBvcnQgeyBJV2FsbGV0IH0gZnJvbSAnLi4vd2FsbGV0JztcblxuY29uc3QgVFJBREVfUEFZTE9BRF9WRVJTSU9OID0gJzEuMi4wJztcblxuZXhwb3J0IGNsYXNzIFRyYWRpbmdBY2NvdW50IGltcGxlbWVudHMgSVRyYWRpbmdBY2NvdW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBiaXRnbzogQml0R29CYXNlO1xuICBwcml2YXRlIHJlYWRvbmx5IGVudGVycHJpc2VJZDogc3RyaW5nO1xuXG4gIHB1YmxpYyB3YWxsZXQ6IElXYWxsZXQ7XG5cbiAgY29uc3RydWN0b3IoZW50ZXJwcmlzZUlkOiBzdHJpbmcsIHdhbGxldDogSVdhbGxldCwgYml0Z286IEJpdEdvQmFzZSkge1xuICAgIHRoaXMuZW50ZXJwcmlzZUlkID0gZW50ZXJwcmlzZUlkO1xuICAgIHRoaXMud2FsbGV0ID0gd2FsbGV0O1xuICAgIHRoaXMuYml0Z28gPSBiaXRnbztcbiAgfVxuXG4gIGdldCBpZCgpIHtcbiAgICByZXR1cm4gdGhpcy53YWxsZXQuaWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBwYXlsb2FkIGF1dGhvcml6aW5nIHRyYWRlIGZyb20gdGhpcyB0cmFkaW5nIGFjY291bnQuXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHBhcmFtIHBhcmFtcy5hbW91bnRzW10gYXJyYXkgb2YgYW1vdW50cyB0aGF0IHdpbGwgYmUgdHJhZGVkIGFzIHBhcnQgb2YgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBhcmFtcy5hbW91bnRzW10uYWNjb3VudElkIHRoZSBhY2NvdW50SWQgY29ycmVzcG9uZGluZyB3aXRoIHRoZSBzZW5kaW5nIGFuZCByZWNlaXZpbmcgYW1vdW50cyBmb3IgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBhcmFtcy5hbW91bnRzW10uc2VuZEFtb3VudCBhbW91bnQgb2YgY3VycmVuY3kgc2VudCBieSB0cmFkaW5nIGFjY291bnQgb2YgZ2l2ZW4gYWNjb3VudElkXG4gICAqIEBwYXJhbSBwYXJhbXMuYW1vdW50c1tdLnNlbmRDdXJyZW5jeSBjdXJyZW5jeSBvZiBhbW91bnQgc2VudCBieSB0cmFkaW5nIGFjY291bnQgb2YgZ2l2ZW4gYWNjb3VudElkXG4gICAqIEBwYXJhbSBwYXJhbXMuYW1vdW50c1tdLnJlY2VpdmVBbW91bnQgYW1vdW50IG9mIGN1cnJlbmN5IHJlY2VpdmVkIGJ5IHRyYWRpbmcgYWNjb3VudCBvZiBnaXZlbiBhY2NvdW50SWRcbiAgICogQHBhcmFtIHBhcmFtcy5hbW91bnRzW10ucmVjZWl2ZUN1cnJlbmN5IGN1cnJlbmN5IG9mIGFtb3VudCByZWNlaXZlZCBieSB0cmFkaW5nIGFjY291bnQgb2YgZ2l2ZW4gYWNjb3VudElkXG4gICAqIEByZXR1cm5zIHVuc2lnbmVkIHRyYWRlIHBheWxvYWQgZm9yIHRoZSBnaXZlbiBwYXJhbWV0ZXJzLiBUaGlzIG9iamVjdCBzaG91bGQgYmUgc3RyaW5naWZpZWQgd2l0aCBKU09OLnN0cmluZ2lmeSgpIGJlZm9yZSBiZWluZyBzdWJtaXR0ZWRcbiAgICovXG4gIGFzeW5jIGJ1aWxkUGF5bG9hZChwYXJhbXM6IEJ1aWxkUGF5bG9hZFBhcmFtZXRlcnMpOiBQcm9taXNlPFBheWxvYWQ+IHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwoYC9hcGkvdHJhZGUvdjEvZW50ZXJwcmlzZS8ke3RoaXMuZW50ZXJwcmlzZUlkfS9hY2NvdW50LyR7dGhpcy5pZH0vcGF5bG9hZGApO1xuXG4gICAgY29uc3QgYm9keSA9IHtcbiAgICAgIHZlcnNpb246IFRSQURFX1BBWUxPQURfVkVSU0lPTixcbiAgICAgIGFtb3VudHM6IHBhcmFtcy5hbW91bnRzLFxuICAgIH07XG5cbiAgICBjb25zdCByZXNwb25zZSA9IChhd2FpdCB0aGlzLmJpdGdvLnBvc3QodXJsKS5zZW5kKGJvZHkpLnJlc3VsdCgpKSBhcyBhbnk7XG5cbiAgICBpZiAoIXRoaXMudmVyaWZ5UGF5bG9hZChwYXJhbXMsIHJlc3BvbnNlLnBheWxvYWQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdVbmFibGUgdG8gdmVyaWZ5IHRyYWRlIHBheWxvYWQuIFlvdSBtYXkgbmVlZCB0byB1cGRhdGUgdGhlIEJpdEdvIFNESywgb3IgdGhlIHBheWxvYWQgbWF5IGhhdmUgYmVlbiB0YW1wZXJlZCB3aXRoLidcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIEpTT04ucGFyc2UocmVzcG9uc2UucGF5bG9hZCkgYXMgUGF5bG9hZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBWZXJpZmllcyB0aGF0IGEgcGF5bG9hZCByZWNlaXZlZCBmcm9tIEJpdEdvIHN1ZmZpY2llbnRseSBtYXRjaGVzIHRoZSBleHBlY3RlZCBwYXJhbWV0ZXJzLiBUaGlzIGlzIHVzZWQgdG8gcHJldmVudFxuICAgKiBtYW4taW4tdGhlLW1pZGRsZSBhdHRhY2tzIHdoaWNoIGNvdWxkIG1hbGljaW91c2x5IGFsdGVyIHRoZSBjb250ZW50cyBvZiBhIHBheWxvYWQuXG4gICAqIEBwYXJhbSBwYXJhbXMgcGFyYW1ldGVycyB1c2VkIHRvIGJ1aWxkIHRoZSBwYXlsb2FkXG4gICAqIEBwYXJhbSBwYXlsb2FkIHBheWxvYWQgcmVjZWl2ZWQgZnJvbSB0aGUgQml0R28gQVBJXG4gICAqIEByZXR1cm5zIHRydWUgaWYgdGhlIHBheWxvYWQncyBzZW5zaXRpdmUgZmllbGRzIG1hdGNoLCBmYWxzZSBpZiB0aGUgcGF5bG9hZCBtYXkgaGF2ZSBiZWVuIHRhbXBlcmVkIHdpdGhcbiAgICovXG4gIHZlcmlmeVBheWxvYWQocGFyYW1zOiBCdWlsZFBheWxvYWRQYXJhbWV0ZXJzLCBwYXlsb2FkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBwYXlsb2FkT2JqID0gSlNPTi5wYXJzZShwYXlsb2FkKTtcbiAgICBjb25zdCBwYXJhbXNDb3B5ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShwYXJhbXMpKTsgLy8gbmVlZHMgdG8gYmUgYSBkZWVwIGNvcHlcblxuICAgIC8vIFZlcmlmaWVzIHRoYXQgZm9yIGVhY2ggcGFydHkgaW4gdGhlIHBheWxvYWQsIHdlIHJlcXVlc3RlZCBhIG1hdGNoaW5nIHBhcnR5LCBvbmx5IGNoZWNraW5nIHNlbnNpdGl2ZSBmaWVsZHNcbiAgICBsZXQgdmFsaWRBbW91bnRzID0gMDtcbiAgICBmb3IgKGNvbnN0IGFtb3VudCBvZiBwYXlsb2FkT2JqLmFtb3VudHMpIHtcbiAgICAgIGNvbnN0IG1hdGNoaW5nRXhwZWN0ZWRQYXJ0eSA9IHBhcmFtc0NvcHkuYW1vdW50cy5maW5kSW5kZXgoXG4gICAgICAgIChleHBlY3RlZEFtb3VudCkgPT5cbiAgICAgICAgICBhbW91bnQuYWNjb3VudElkID09PSBleHBlY3RlZEFtb3VudC5hY2NvdW50SWQgJiZcbiAgICAgICAgICBhbW91bnQuc2VuZEN1cnJlbmN5ID09PSBleHBlY3RlZEFtb3VudC5zZW5kQ3VycmVuY3kgJiZcbiAgICAgICAgICBhbW91bnQuc2VuZFN1YnRvdGFsID09PSBleHBlY3RlZEFtb3VudC5zZW5kQW1vdW50ICYmXG4gICAgICAgICAgYW1vdW50LnJlY2VpdmVBbW91bnQgPT09IGV4cGVjdGVkQW1vdW50LnJlY2VpdmVBbW91bnQgJiZcbiAgICAgICAgICBhbW91bnQucmVjZWl2ZUN1cnJlbmN5ID09PSBleHBlY3RlZEFtb3VudC5yZWNlaXZlQ3VycmVuY3lcbiAgICAgICk7XG5cbiAgICAgIGlmIChtYXRjaGluZ0V4cGVjdGVkUGFydHkgPT09IC0xKSB7XG4gICAgICAgIC8vIG1hdGNoaW5nRXhwZWN0ZWRQYXJ0eSBub3QgZm91bmQgdG8gdGhlIHBheWxvYWRPYmplY3RcbiAgICAgICAgLy8gcGF5bG9hZCBpcyBub3QgdmFsaWRcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGlmIChhbW91bnQuZmVlcyAmJiBhbW91bnQuZmVlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGxldCBmZWVUb3RhbCA9IG5ldyBCaWdOdW1iZXIoMCk7XG4gICAgICAgIGZvciAoY29uc3QgZmVlIG9mIGFtb3VudC5mZWVzKSB7XG4gICAgICAgICAgZmVlVG90YWwgPSBmZWVUb3RhbC5wbHVzKG5ldyBCaWdOdW1iZXIoZmVlLmZlZUFtb3VudCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXhwZWN0ZWRUb3RhbEFtb3VudCA9IG5ldyBCaWdOdW1iZXIocGFyYW1zQ29weS5hbW91bnRzW21hdGNoaW5nRXhwZWN0ZWRQYXJ0eV0uc2VuZEFtb3VudCkucGx1cyhmZWVUb3RhbCk7XG4gICAgICAgIGlmIChleHBlY3RlZFRvdGFsQW1vdW50LnRvU3RyaW5nKCkgIT09IGFtb3VudC5zZW5kQW1vdW50KSB7XG4gICAgICAgICAgLy8gZXhwZWN0ZWQgdG90YWwgZG9lcyBub3QgbWF0Y2ggdGhlIHNlbmRBbW91bnQgb2YgdGhlIHBheWxvYWRcbiAgICAgICAgICAvLyBwYXlsb2FkIGlzIG5vdCB2YWxpZFxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIG1hdGNoaW5nIHBhcnR5IGZvdW5kLCBhbmQgZmVlIGZvdW5kXG4gICAgICB2YWxpZEFtb3VudHMgPSB2YWxpZEFtb3VudHMgKyAxO1xuICAgICAgLy8gZGVsZXRlIHNvIHdlIGVuc3VyZSBubyBkdXBsaWNhdGVzXG4gICAgICBwYXJhbXNDb3B5LmFtb3VudHMuc3BsaWNlKG1hdGNoaW5nRXhwZWN0ZWRQYXJ0eSwgMSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIHBheWxvYWRPYmouYWNjb3VudElkID09PSB0aGlzLmlkICYmXG4gICAgICBwYXlsb2FkT2JqLmFtb3VudHMubGVuZ3RoID09PSBwYXJhbXMuYW1vdW50cy5sZW5ndGggJiZcbiAgICAgIHZhbGlkQW1vdW50cyA9PT0gcGF5bG9hZE9iai5hbW91bnRzLmxlbmd0aFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2FsY3VsYXRlcyB0aGUgbmVjZXNzYXJ5IGZlZXMgdG8gY29tcGxldGUgYSBzZXR0bGVtZW50IGJldHdlZW4gdHdvIHBhcnRpZXMsIGJhc2VkIG9uIHRoZSBhbW91bnRzIGFuZCBjdXJyZW5jaWVzIG9mIHRoZSBzZXR0bGVtZW50LlxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqIEBwYXJhbSBwYXJhbXMuY291bnRlcnBhcnR5QWNjb3VudElkIEFjY291bnQgSUQgb2YgdGhlIGNvdW50ZXJwYXJ0eSBvZiB0aGUgc2V0dGxlbWVudFxuICAgKiBAcGFyYW0gcGFyYW1zLnNlbmRDdXJyZW5jeSBDdXJyZW5jeSB0byBiZSBzZW50IGFzIHBhcnQgb2YgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBhcmFtcy5zZW5kQW1vdW50IEFtb3VudCBvZiBjdXJyZW5jeSAoaW4gYmFzZSB1bml0cyBzdWNoIGFzIGNlbnRzLCBzYXRvc2hpcywgb3Igd2VpKSB0byBiZSBzZW50XG4gICAqIEBwYXJhbSBwYXJhbXMucmVjZWl2ZUN1cnJlbmN5IEN1cnJlbmN5IHRvIGJlIHJlY2VpdmVkIGFzIHBhcnQgb2YgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBhcmFtcy5yZWNlaXZlQW1vdW50IEFtb3VudCBvZiBjdXJyZW5jeSAoaW4gYmFzZSB1bml0cyBzdWNoIGFzIGNlbnRzLCBzYXRvc2hpcywgb3Igd2VpKSB0byBiZSByZWNlaXZlZFxuICAgKiBAcmV0dXJucyBGZWUgcmF0ZSwgY3VycmVuY3ksIGFuZCB0b3RhbCBhbW91bnQgb2YgdGhlIGRlc2NyaWJlZCBzZXR0bGVtZW50XG4gICAqL1xuICBhc3luYyBjYWxjdWxhdGVTZXR0bGVtZW50RmVlcyhwYXJhbXM6IENhbGN1bGF0ZVNldHRsZW1lbnRGZWVzUGFyYW1zKTogUHJvbWlzZTxTZXR0bGVtZW50RmVlcz4ge1xuICAgIGNvbnN0IHVybCA9IHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybChcbiAgICAgIGAvYXBpL3RyYWRlL3YxL2VudGVycHJpc2UvJHt0aGlzLmVudGVycHJpc2VJZH0vYWNjb3VudC8ke3RoaXMuaWR9L2NhbGN1bGF0ZWZlZXNgXG4gICAgKTtcblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLnBvc3QodXJsKS5zZW5kKHBhcmFtcykucmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogU2lnbnMgYSBwcmUtYnVpbHQgdHJhZGUgcGF5bG9hZCB3aXRoIHRoZSB1c2VyIGtleSBvbiB0aGlzIHRyYWRpbmcgYWNjb3VudFxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqIEBwYXJhbSBwYXJhbXMucGF5bG9hZCB0cmFkZSBwYXlsb2FkIG9iamVjdCBmcm9tIFRyYWRpbmdBY2NvdW50OjpidWlsZFBheWxvYWQoKVxuICAgKiBAcGFyYW0gcGFyYW1zLndhbGxldFBhc3NwaHJhc2UgcGFzc3BocmFzZSBvbiB0aGlzIHRyYWRpbmcgYWNjb3VudCwgdXNlZCB0byB1bmxvY2sgdGhlIGFjY291bnQgdXNlciBrZXlcbiAgICogQHJldHVybnMgaGV4LWVuY29kZWQgc2lnbmF0dXJlIG9mIHRoZSBwYXlsb2FkXG4gICAqL1xuICBhc3luYyBzaWduUGF5bG9hZChwYXJhbXM6IFNpZ25QYXlsb2FkUGFyYW1ldGVycyk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3Qga2V5ID0gKGF3YWl0IHRoaXMud2FsbGV0LmJhc2VDb2luLmtleWNoYWlucygpLmdldCh7IGlkOiB0aGlzLndhbGxldC5rZXlJZHMoKVswXSB9KSkgYXMgYW55O1xuICAgIGNvbnN0IHBydiA9IHRoaXMud2FsbGV0LmJpdGdvLmRlY3J5cHQoe1xuICAgICAgaW5wdXQ6IGtleS5lbmNyeXB0ZWRQcnYsXG4gICAgICBwYXNzd29yZDogcGFyYW1zLndhbGxldFBhc3NwaHJhc2UsXG4gICAgfSk7XG4gICAgY29uc3QgcGF5bG9hZCA9IEpTT04uc3RyaW5naWZ5KHBhcmFtcy5wYXlsb2FkKTtcbiAgICByZXR1cm4gKChhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi5zaWduTWVzc2FnZSh7IHBydiB9LCBwYXlsb2FkKSkgYXMgYW55KS50b1N0cmluZygnaGV4Jyk7XG4gIH1cblxuICBhZmZpcm1hdGlvbnMoKTogSUFmZmlybWF0aW9ucyB7XG4gICAgcmV0dXJuIG5ldyBBZmZpcm1hdGlvbnModGhpcy5iaXRnbywgdGhpcy5lbnRlcnByaXNlSWQsIHRoaXMpO1xuICB9XG5cbiAgc2V0dGxlbWVudHMoKTogSVNldHRsZW1lbnRzIHtcbiAgICByZXR1cm4gbmV3IFNldHRsZW1lbnRzKHRoaXMuYml0Z28sIHRoaXMuZW50ZXJwcmlzZUlkLCB0aGlzKTtcbiAgfVxuXG4gIHBhcnRuZXJzKCk6IElUcmFkaW5nUGFydG5lcnMge1xuICAgIHJldHVybiBuZXcgVHJhZGluZ1BhcnRuZXJzKHRoaXMuYml0Z28sIHRoaXMuZW50ZXJwcmlzZUlkLCB0aGlzKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @prettier
|
|
3
|
+
*/
|
|
4
|
+
import { BitGoBase } from '../bitgoBase';
|
|
5
|
+
import { ITradingPartner, TradingAccount, TradingPartnerStatus, TradingPartnerType } from '../trading';
|
|
6
|
+
export declare class TradingPartner implements ITradingPartner {
|
|
7
|
+
private bitgo;
|
|
8
|
+
private enterpriseId;
|
|
9
|
+
private currentAccount;
|
|
10
|
+
id: string;
|
|
11
|
+
primaryEnterpriseName: string;
|
|
12
|
+
primaryAccountId: string;
|
|
13
|
+
secondaryEnterpriseName: string;
|
|
14
|
+
secondaryAccountId: string;
|
|
15
|
+
requesterAccountId: string;
|
|
16
|
+
status: TradingPartnerStatus;
|
|
17
|
+
type: TradingPartnerType;
|
|
18
|
+
constructor(tradingPartnerData: any, bitgo: BitGoBase, enterpriseId: string, currentAccount: TradingAccount);
|
|
19
|
+
/**
|
|
20
|
+
* Check if a trading partner has enough funds to cover the cost of a trade.
|
|
21
|
+
* @param currency the currency to check
|
|
22
|
+
* @param amount the amount of currency to check, represented in base units (such as cents, satoshi, or wei)
|
|
23
|
+
*/
|
|
24
|
+
checkBalance(currency: string, amount: string): Promise<boolean>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=tradingPartner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tradingPartner.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/tradingPartner.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEvG,qBAAa,cAAe,YAAW,eAAe;IACpD,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAiB;IAEhC,EAAE,EAAE,MAAM,CAAC;IACX,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,uBAAuB,EAAE,MAAM,CAAC;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,IAAI,EAAE,kBAAkB,CAAC;gBAEpB,kBAAkB,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc;IAe3G;;;;OAIG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAWvE"}
|