@bitgo-beta/sdk-core 8.2.1-beta.21 → 8.2.1-beta.210
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/CHANGELOG.md +1204 -0
- package/dist/src/account-lib/baseCoin/enum.d.ts +6 -1
- package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/enum.js +11 -1
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts +4 -18
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/curves/ed25519.js +6 -60
- package/dist/src/account-lib/mpc/index.d.ts +4 -4
- package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/index.js +6 -6
- package/dist/src/account-lib/mpc/shamir.d.ts +5 -37
- package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/shamir.js +6 -130
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +39 -9
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +164 -43
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +34 -6
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +0 -3
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
- package/dist/src/bitgo/address-book/address-book.d.ts +61 -0
- package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -0
- package/dist/src/bitgo/address-book/address-book.js +142 -0
- package/dist/src/bitgo/address-book/index.d.ts +3 -0
- package/dist/src/bitgo/address-book/index.d.ts.map +1 -0
- package/dist/src/bitgo/address-book/index.js +15 -0
- package/dist/src/bitgo/address-book/types.d.ts +170 -0
- package/dist/src/bitgo/address-book/types.d.ts.map +1 -0
- package/dist/src/bitgo/address-book/types.js +3 -0
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts +18 -1
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.js +18 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +43 -5
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
- package/dist/src/bitgo/bitgoBase.d.ts +2 -1
- package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
- package/dist/src/bitgo/bitgoBase.js +1 -1
- package/dist/src/bitgo/config.d.ts +12 -0
- package/dist/src/bitgo/config.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprise.d.ts +13 -10
- package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprise.js +29 -14
- package/dist/src/bitgo/enterprise/enterprises.d.ts +6 -0
- package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprises.js +26 -1
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts +4 -4
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts +2 -0
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.js +1 -1
- package/dist/src/bitgo/environments.d.ts +15 -2
- package/dist/src/bitgo/environments.d.ts.map +1 -1
- package/dist/src/bitgo/environments.js +34 -9
- package/dist/src/bitgo/keychain/iKeychains.d.ts +10 -0
- package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/iKeychains.js +1 -1
- package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/keychains.js +31 -24
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +124 -89
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/ovcJsonCodec.js +31 -24
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +2 -0
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.js +1 -1
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/pendingApproval.js +9 -3
- package/dist/src/bitgo/recovery/initiate.d.ts +7 -1
- package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
- package/dist/src/bitgo/recovery/initiate.js +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.d.ts +38 -2
- package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.js +1 -1
- package/dist/src/bitgo/staking/stakingWallet.d.ts +7 -1
- package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/stakingWallet.js +9 -1
- package/dist/src/bitgo/trading/iTradingAccount.d.ts +2 -32
- package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -1
- package/dist/src/bitgo/trading/iTradingAccount.js +1 -1
- package/dist/src/bitgo/trading/index.d.ts +0 -15
- package/dist/src/bitgo/trading/index.d.ts.map +1 -1
- package/dist/src/bitgo/trading/index.js +1 -16
- package/dist/src/bitgo/trading/network/index.d.ts +3 -0
- package/dist/src/bitgo/trading/network/index.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/index.js +15 -0
- package/dist/src/bitgo/trading/network/network.d.ts +35 -0
- package/dist/src/bitgo/trading/network/network.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/network.js +97 -0
- package/dist/src/bitgo/trading/network/types.d.ts +244 -0
- package/dist/src/bitgo/trading/network/types.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/types.js +3 -0
- package/dist/src/bitgo/trading/tradingAccount.d.ts +11 -35
- package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -1
- package/dist/src/bitgo/trading/tradingAccount.js +9 -96
- package/dist/src/bitgo/tss/common.d.ts +14 -3
- package/dist/src/bitgo/tss/common.d.ts.map +1 -1
- package/dist/src/bitgo/tss/common.js +21 -2
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +8 -16
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +6 -5
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/eddsa/eddsa.js +20 -9
- package/dist/src/bitgo/tss/types.d.ts +19 -0
- package/dist/src/bitgo/tss/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/types.js +1 -1
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +4 -0
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -1
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +17 -2
- package/dist/src/bitgo/utils/codecProps.d.ts +7 -0
- package/dist/src/bitgo/utils/codecProps.d.ts.map +1 -0
- package/dist/src/bitgo/utils/codecProps.js +41 -0
- package/dist/src/bitgo/utils/opengpgUtils.d.ts +2 -2
- package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/opengpgUtils.js +9 -12
- package/dist/src/bitgo/utils/postWithCodec.d.ts +18 -0
- package/dist/src/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/src/bitgo/utils/postWithCodec.js +59 -0
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +59 -12
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +71 -9
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +184 -9
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +27 -2
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +46 -10
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +225 -123
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +9 -0
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +18 -5
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +79 -25
- package/dist/src/bitgo/wallet/BuildParams.d.ts +112 -0
- package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/BuildParams.js +121 -0
- package/dist/src/bitgo/wallet/iWallet.d.ts +60 -5
- package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallet.js +1 -1
- package/dist/src/bitgo/wallet/iWallets.d.ts +16 -5
- package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallets.js +1 -1
- package/dist/src/bitgo/wallet/wallet.d.ts +79 -6
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +370 -124
- package/dist/src/bitgo/wallet/wallets.d.ts +25 -5
- package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallets.js +168 -51
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -2
- package/dist/src/openssl/index.d.ts +4 -1
- package/dist/src/openssl/index.d.ts.map +1 -1
- package/dist/src/openssl/index.js +7 -12
- package/dist/test/node.utils.d.ts +2 -0
- package/dist/test/node.utils.d.ts.map +1 -0
- package/dist/test/node.utils.js +5 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +217 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts +3 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.js +24 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.js +25 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.js +79 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +44 -0
- package/dist/test/unit/openssl.d.ts +2 -0
- package/dist/test/unit/openssl.d.ts.map +1 -0
- package/dist/test/unit/openssl.js +39 -0
- package/dist/test/unit/units.d.ts +2 -0
- package/dist/test/unit/units.d.ts.map +1 -0
- package/dist/test/unit/units.js +98 -0
- package/dist/tsconfig.tsbuildinfo +1 -8340
- package/package.json +21 -17
- package/dist/src/account-lib/mpc/hdTree.d.ts +0 -31
- package/dist/src/account-lib/mpc/hdTree.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/hdTree.js +0 -141
- package/dist/src/account-lib/mpc/types.d.ts +0 -5
- package/dist/src/account-lib/mpc/types.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/types.js +0 -3
- package/dist/src/bitgo/trading/affirmation.d.ts +0 -35
- package/dist/src/bitgo/trading/affirmation.d.ts.map +0 -1
- package/dist/src/bitgo/trading/affirmation.js +0 -53
- package/dist/src/bitgo/trading/affirmations.d.ts +0 -23
- package/dist/src/bitgo/trading/affirmations.d.ts.map +0 -1
- package/dist/src/bitgo/trading/affirmations.js +0 -45
- package/dist/src/bitgo/trading/iAffirmation.d.ts +0 -15
- package/dist/src/bitgo/trading/iAffirmation.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iAffirmation.js +0 -13
- package/dist/src/bitgo/trading/iAffirmations.d.ts +0 -10
- package/dist/src/bitgo/trading/iAffirmations.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iAffirmations.js +0 -3
- package/dist/src/bitgo/trading/iSettlement.d.ts +0 -25
- package/dist/src/bitgo/trading/iSettlement.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iSettlement.js +0 -17
- package/dist/src/bitgo/trading/iSettlements.d.ts +0 -19
- package/dist/src/bitgo/trading/iSettlements.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iSettlements.js +0 -3
- package/dist/src/bitgo/trading/iTradingPartner.d.ts +0 -14
- package/dist/src/bitgo/trading/iTradingPartner.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iTradingPartner.js +0 -17
- package/dist/src/bitgo/trading/iTradingPartners.d.ts +0 -15
- package/dist/src/bitgo/trading/iTradingPartners.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iTradingPartners.js +0 -9
- package/dist/src/bitgo/trading/lock.d.ts +0 -16
- package/dist/src/bitgo/trading/lock.d.ts.map +0 -1
- package/dist/src/bitgo/trading/lock.js +0 -12
- package/dist/src/bitgo/trading/payload.d.ts +0 -22
- package/dist/src/bitgo/trading/payload.d.ts.map +0 -1
- package/dist/src/bitgo/trading/payload.js +0 -3
- package/dist/src/bitgo/trading/settlement.d.ts +0 -16
- package/dist/src/bitgo/trading/settlement.d.ts.map +0 -1
- package/dist/src/bitgo/trading/settlement.js +0 -21
- package/dist/src/bitgo/trading/settlements.d.ts +0 -32
- package/dist/src/bitgo/trading/settlements.d.ts.map +0 -1
- package/dist/src/bitgo/trading/settlements.js +0 -61
- package/dist/src/bitgo/trading/trade.d.ts +0 -29
- package/dist/src/bitgo/trading/trade.d.ts.map +0 -1
- package/dist/src/bitgo/trading/trade.js +0 -11
- package/dist/src/bitgo/trading/tradingPartner.d.ts +0 -26
- package/dist/src/bitgo/trading/tradingPartner.d.ts.map +0 -1
- package/dist/src/bitgo/trading/tradingPartner.js +0 -31
- package/dist/src/bitgo/trading/tradingPartners.d.ts +0 -24
- package/dist/src/bitgo/trading/tradingPartners.d.ts.map +0 -1
- package/dist/src/bitgo/trading/tradingPartners.js +0 -32
- package/dist/src/openssl/openssl.d.ts +0 -12
- package/dist/src/openssl/openssl.d.ts.map +0 -1
- package/dist/src/openssl/openssl.js +0 -48
- package/dist/src/openssl/opensslbytes.d.ts +0 -4
- package/dist/src/openssl/opensslbytes.d.ts.map +0 -1
- package/dist/src/openssl/opensslbytes.js +0 -20
package/package.json
CHANGED
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo-beta/sdk-core",
|
|
3
|
-
"version": "8.2.1-beta.
|
|
3
|
+
"version": "8.2.1-beta.210",
|
|
4
4
|
"description": "core library functions for BitGoJS",
|
|
5
5
|
"main": "./dist/src/index.js",
|
|
6
6
|
"types": "./dist/src/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"test": "yarn unit-test",
|
|
9
|
-
"unit-test": "nyc -- mocha",
|
|
9
|
+
"unit-test": "nyc -- mocha --recursive test",
|
|
10
10
|
"build": "yarn tsc --build --incremental --verbose .",
|
|
11
11
|
"fmt": "prettier --write .",
|
|
12
12
|
"check-fmt": "prettier --check .",
|
|
13
13
|
"clean": "rm -r ./dist",
|
|
14
14
|
"lint": "eslint --quiet .",
|
|
15
|
-
"prepare": "npm run build"
|
|
15
|
+
"prepare": "npm run build",
|
|
16
|
+
"test:watch": " mocha -r ts-node/register --watch --watch-files test/**/*.ts"
|
|
16
17
|
},
|
|
17
18
|
"author": "BitGo SDK Team <sdkteam@bitgo.com>",
|
|
18
19
|
"license": "MIT",
|
|
@@ -36,41 +37,44 @@
|
|
|
36
37
|
]
|
|
37
38
|
},
|
|
38
39
|
"dependencies": {
|
|
39
|
-
"@bitgo-beta/bls-dkg": "1.1.1-beta.
|
|
40
|
-
"@bitgo-beta/sdk-lib-mpc": "8.2.0-beta.
|
|
41
|
-
"@bitgo-beta/statics": "15.1.1-beta.
|
|
42
|
-
"@bitgo-beta/utxo-lib": "8.0.3-beta.
|
|
40
|
+
"@bitgo-beta/bls-dkg": "1.1.1-beta.450",
|
|
41
|
+
"@bitgo-beta/sdk-lib-mpc": "8.2.0-beta.202",
|
|
42
|
+
"@bitgo-beta/statics": "15.1.1-beta.213",
|
|
43
|
+
"@bitgo-beta/utxo-lib": "8.0.3-beta.211",
|
|
44
|
+
"@bitgo/public-types": "1.2.1",
|
|
43
45
|
"@noble/secp256k1": "1.6.3",
|
|
44
46
|
"@stablelib/hex": "^1.0.0",
|
|
45
|
-
"@types/
|
|
47
|
+
"@types/elliptic": "^6.4.12",
|
|
46
48
|
"@types/superagent": "4.1.15",
|
|
47
|
-
"@wasmer/wasi": "^1.2.2",
|
|
48
49
|
"bech32": "^2.0.0",
|
|
49
50
|
"big.js": "^3.1.3",
|
|
50
51
|
"bigint-crypto-utils": "3.1.4",
|
|
51
|
-
"bignumber.js": "^9.
|
|
52
|
-
"bitcoinjs-message": "
|
|
52
|
+
"bignumber.js": "^9.1.1",
|
|
53
|
+
"bitcoinjs-message": "npm:@bitgo-forks/bitcoinjs-message@1.0.0-master.2",
|
|
53
54
|
"bolt11": "^1.4.0",
|
|
54
55
|
"bs58": "^4.0.1",
|
|
55
56
|
"create-hmac": "^1.1.7",
|
|
56
57
|
"debug": "^3.1.0",
|
|
58
|
+
"elliptic": "^6.5.2",
|
|
57
59
|
"ethereumjs-util": "7.1.5",
|
|
58
60
|
"fp-ts": "^2.12.2",
|
|
59
|
-
"io-ts": "
|
|
60
|
-
"keccak": "3.0.
|
|
61
|
+
"io-ts": "2.2.20",
|
|
62
|
+
"keccak": "3.0.3",
|
|
61
63
|
"libsodium-wrappers-sumo": "^0.7.9",
|
|
62
64
|
"lodash": "^4.17.15",
|
|
63
65
|
"noble-bls12-381": "0.7.2",
|
|
64
|
-
"openpgp": "5.1
|
|
66
|
+
"openpgp": "5.10.1",
|
|
65
67
|
"paillier-bigint": "3.3.0",
|
|
66
|
-
"secp256k1": "
|
|
68
|
+
"secp256k1": "5.0.0",
|
|
67
69
|
"strip-hex-prefix": "^1.0.0",
|
|
68
70
|
"superagent": "^3.8.3",
|
|
69
|
-
"tweetnacl": "^1.0.3"
|
|
71
|
+
"tweetnacl": "^1.0.3",
|
|
72
|
+
"uuid": "^8.3.2"
|
|
70
73
|
},
|
|
71
74
|
"devDependencies": {
|
|
75
|
+
"@openpgp/web-stream-tools": "0.0.14",
|
|
72
76
|
"@types/lodash": "^4.14.151",
|
|
73
77
|
"nyc": "^15.0.0"
|
|
74
78
|
},
|
|
75
|
-
"gitHead": "
|
|
79
|
+
"gitHead": "115929ee586a7d5350a3fe8fbae40d4a5c7e0645"
|
|
76
80
|
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Ed25519Curve } from './curves';
|
|
2
|
-
import { Secp256k1Curve } from '@bitgo-beta/sdk-lib-mpc';
|
|
3
|
-
export declare const chaincodeBase: bigint;
|
|
4
|
-
interface PrivateKeychain {
|
|
5
|
-
pk: bigint;
|
|
6
|
-
sk: bigint;
|
|
7
|
-
prefix?: bigint;
|
|
8
|
-
chaincode: bigint;
|
|
9
|
-
}
|
|
10
|
-
export interface PublicKeychain {
|
|
11
|
-
pk: bigint;
|
|
12
|
-
chaincode: bigint;
|
|
13
|
-
}
|
|
14
|
-
interface HDTree {
|
|
15
|
-
publicDerive(keychain: PublicKeychain, path: string): PublicKeychain;
|
|
16
|
-
privateDerive(keychain: PrivateKeychain, path: string): PrivateKeychain;
|
|
17
|
-
}
|
|
18
|
-
export default HDTree;
|
|
19
|
-
export declare class Ed25519BIP32 {
|
|
20
|
-
static curve: Ed25519Curve;
|
|
21
|
-
static initialized: boolean;
|
|
22
|
-
static initialize(): Promise<Ed25519BIP32>;
|
|
23
|
-
publicDerive(keychain: PublicKeychain, path: string): PublicKeychain;
|
|
24
|
-
privateDerive(keychain: PrivateKeychain, path: string): PrivateKeychain;
|
|
25
|
-
}
|
|
26
|
-
export declare class BIP32 {
|
|
27
|
-
static curve: Secp256k1Curve;
|
|
28
|
-
publicDerive(keychain: PublicKeychain, path: string): PublicKeychain;
|
|
29
|
-
privateDerive(keychain: PrivateKeychain, path: string): PrivateKeychain;
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=hdTree.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hdTree.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/mpc/hdTree.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAIzD,eAAO,MAAM,aAAa,QAAiF,CAAC;AAE5G,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,MAAM;IACd,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAAC;IAErE,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC;CACzE;AAED,eAAe,MAAM,CAAC;AAyCtB,qBAAa,YAAY;IACvB,MAAM,CAAC,KAAK,EAAE,YAAY,CAAsB;IAChD,MAAM,CAAC,WAAW,UAAS;WAEd,UAAU,IAAI,OAAO,CAAC,YAAY,CAAC;IAShD,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc;IAepE,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe;CAqBxE;AAiBD,qBAAa,KAAK;IAChB,MAAM,CAAC,KAAK,EAAE,cAAc,CAAwB;IAEpD,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc;IAiBpE,aAAa,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe;CAiBxE"}
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BIP32 = exports.Ed25519BIP32 = exports.chaincodeBase = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* An interface for calculating a subkey in an HD key scheme.
|
|
6
|
-
*/
|
|
7
|
-
const crypto_1 = require("crypto");
|
|
8
|
-
const curves_1 = require("./curves");
|
|
9
|
-
const sdk_lib_mpc_1 = require("@bitgo-beta/sdk-lib-mpc");
|
|
10
|
-
const util_1 = require("./util");
|
|
11
|
-
// 2^256
|
|
12
|
-
exports.chaincodeBase = BigInt('0x010000000000000000000000000000000000000000000000000000000000000000');
|
|
13
|
-
function deriveEd25519Helper(index = 0, chaincode, pk, sk) {
|
|
14
|
-
const zmac = crypto_1.createHmac('sha512', util_1.bigIntToBufferBE(chaincode, 32));
|
|
15
|
-
const imac = crypto_1.createHmac('sha512', util_1.bigIntToBufferBE(chaincode, 32));
|
|
16
|
-
const seri = Buffer.alloc(4);
|
|
17
|
-
seri.writeUInt32LE(index, 0);
|
|
18
|
-
if (((index >>> 0) & 0x80000000) === 0) {
|
|
19
|
-
// Normal derivation:
|
|
20
|
-
// Z = HMAC-SHA512(Key = cpar, Data = 0x02 || serP(point(kpar)) || ser32(i)).
|
|
21
|
-
// I = HMAC-SHA512(Key = cpar, Data = 0x03 || serP(point(kpar)) || ser32(i)).
|
|
22
|
-
zmac.update('\x02');
|
|
23
|
-
zmac.update(util_1.bigIntToBufferLE(pk, 32));
|
|
24
|
-
zmac.update(seri);
|
|
25
|
-
imac.update('\x03');
|
|
26
|
-
imac.update(util_1.bigIntToBufferLE(pk, 32));
|
|
27
|
-
imac.update(seri);
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
if (sk === undefined) {
|
|
31
|
-
throw new Error("Can't performed hardened derivation without private key");
|
|
32
|
-
}
|
|
33
|
-
// Hardened derivation:
|
|
34
|
-
// Z = HMAC-SHA512(Key = cpar, Data = 0x00 || ser256(left(kpar)) || ser32(i)).
|
|
35
|
-
// I = HMAC-SHA512(Key = cpar, Data = 0x01 || ser256(left(kpar)) || ser32(i)).
|
|
36
|
-
zmac.update('\x00');
|
|
37
|
-
zmac.update(util_1.bigIntToBufferLE(sk, 32));
|
|
38
|
-
zmac.update(seri);
|
|
39
|
-
imac.update('\x01');
|
|
40
|
-
imac.update(util_1.bigIntToBufferLE(sk, 32));
|
|
41
|
-
imac.update(seri);
|
|
42
|
-
}
|
|
43
|
-
return [zmac.digest(), imac.digest()];
|
|
44
|
-
}
|
|
45
|
-
function pathToIndices(path) {
|
|
46
|
-
return path
|
|
47
|
-
.replace(/^m?\//, '')
|
|
48
|
-
.split('/')
|
|
49
|
-
.map((index) => parseInt(index, 10));
|
|
50
|
-
}
|
|
51
|
-
class Ed25519BIP32 {
|
|
52
|
-
static async initialize() {
|
|
53
|
-
if (!Ed25519BIP32.initialized) {
|
|
54
|
-
await curves_1.Ed25519Curve.initialize();
|
|
55
|
-
Ed25519BIP32.initialized = true;
|
|
56
|
-
}
|
|
57
|
-
return new Ed25519BIP32();
|
|
58
|
-
}
|
|
59
|
-
publicDerive(keychain, path) {
|
|
60
|
-
const indices = pathToIndices(path);
|
|
61
|
-
function deriveIndex(acc, index) {
|
|
62
|
-
const [pk, chaincode] = acc;
|
|
63
|
-
const [zout, iout] = deriveEd25519Helper(index, chaincode, pk);
|
|
64
|
-
const zl = zout.slice(0, 32);
|
|
65
|
-
// left = kl + 8 * trunc28(zl)
|
|
66
|
-
const t = BigInt(8) * util_1.bigIntFromBufferLE(zl.slice(0, 28));
|
|
67
|
-
const left = Ed25519BIP32.curve.pointAdd(pk, Ed25519BIP32.curve.basePointMult(t));
|
|
68
|
-
return [left, util_1.bigIntFromBufferBE(iout.slice(32))];
|
|
69
|
-
}
|
|
70
|
-
const subkey = indices.reduce(deriveIndex, deriveIndex([keychain.pk, keychain.chaincode], indices.shift()));
|
|
71
|
-
return { pk: subkey[0], chaincode: subkey[1] };
|
|
72
|
-
}
|
|
73
|
-
privateDerive(keychain, path) {
|
|
74
|
-
const indices = pathToIndices(path);
|
|
75
|
-
function deriveIndex(acc, index) {
|
|
76
|
-
const [pk, sk, prefix, chaincode] = acc;
|
|
77
|
-
const [zout, iout] = deriveEd25519Helper(index, chaincode, pk, sk);
|
|
78
|
-
const zl = zout.slice(0, 32);
|
|
79
|
-
const zr = zout.slice(32);
|
|
80
|
-
// left = kl + 8 * trunc28(zl)
|
|
81
|
-
const t = BigInt(8) * util_1.bigIntFromBufferLE(zl.slice(0, 28));
|
|
82
|
-
const left_pk = Ed25519BIP32.curve.pointAdd(pk, Ed25519BIP32.curve.basePointMult(t));
|
|
83
|
-
const left_sk = Ed25519BIP32.curve.scalarAdd(sk, t);
|
|
84
|
-
// right = zr + kr
|
|
85
|
-
const right = (prefix + util_1.bigIntFromBufferBE(zr)) % exports.chaincodeBase;
|
|
86
|
-
return [left_pk, left_sk, right, util_1.bigIntFromBufferBE(iout.slice(32))];
|
|
87
|
-
}
|
|
88
|
-
const [pk, sk, prefix, chaincode] = indices.reduce(deriveIndex, deriveIndex([keychain.pk, keychain.sk, keychain.prefix, keychain.chaincode], indices.shift()));
|
|
89
|
-
return { pk, sk, prefix, chaincode };
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
exports.Ed25519BIP32 = Ed25519BIP32;
|
|
93
|
-
Ed25519BIP32.curve = new curves_1.Ed25519Curve();
|
|
94
|
-
Ed25519BIP32.initialized = false;
|
|
95
|
-
function deriveSecp256k1Helper(index = 0, chaincode, pk, sk) {
|
|
96
|
-
const data = Buffer.alloc(33 + 4);
|
|
97
|
-
if (((index >>> 0) & 0x80000000) === 0) {
|
|
98
|
-
util_1.bigIntToBufferBE(pk, 33).copy(data);
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
if (sk === undefined) {
|
|
102
|
-
throw new Error("Can't performed hardened derivation without private key");
|
|
103
|
-
}
|
|
104
|
-
data[0] = 0;
|
|
105
|
-
util_1.bigIntToBufferBE(sk, 32).copy(data, 1);
|
|
106
|
-
}
|
|
107
|
-
data.writeUInt32BE(index, 33);
|
|
108
|
-
return crypto_1.createHmac('sha512', util_1.bigIntToBufferBE(chaincode, 32)).update(data).digest();
|
|
109
|
-
}
|
|
110
|
-
class BIP32 {
|
|
111
|
-
publicDerive(keychain, path) {
|
|
112
|
-
const indices = pathToIndices(path);
|
|
113
|
-
function deriveIndex(acc, index) {
|
|
114
|
-
const [pk, chaincode] = acc;
|
|
115
|
-
const I = deriveSecp256k1Helper(index, chaincode, pk);
|
|
116
|
-
const il = util_1.bigIntFromBufferBE(I.slice(0, 32));
|
|
117
|
-
const ir = util_1.bigIntFromBufferBE(I.slice(32));
|
|
118
|
-
const left_pk = BIP32.curve.pointAdd(pk, BIP32.curve.basePointMult(il));
|
|
119
|
-
return [left_pk, ir];
|
|
120
|
-
}
|
|
121
|
-
const [pk, chaincode] = indices.reduce(deriveIndex, deriveIndex([keychain.pk, keychain.chaincode], indices.shift()));
|
|
122
|
-
return { pk, chaincode };
|
|
123
|
-
}
|
|
124
|
-
privateDerive(keychain, path) {
|
|
125
|
-
const indices = pathToIndices(path);
|
|
126
|
-
function deriveIndex(acc, index) {
|
|
127
|
-
const [pk, sk, chaincode] = acc;
|
|
128
|
-
const I = deriveSecp256k1Helper(index, chaincode, pk, sk);
|
|
129
|
-
const il = util_1.bigIntFromBufferBE(I.slice(0, 32));
|
|
130
|
-
const ir = util_1.bigIntFromBufferBE(I.slice(32));
|
|
131
|
-
const left_pk = BIP32.curve.pointAdd(pk, BIP32.curve.basePointMult(il));
|
|
132
|
-
const left_sk = BIP32.curve.scalarAdd(sk, il);
|
|
133
|
-
return [left_pk, left_sk, ir];
|
|
134
|
-
}
|
|
135
|
-
const [pk, sk, chaincode] = indices.reduce(deriveIndex, deriveIndex([keychain.pk, keychain.sk, keychain.chaincode], indices.shift()));
|
|
136
|
-
return { pk, sk, chaincode };
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
exports.BIP32 = BIP32;
|
|
140
|
-
BIP32.curve = new sdk_lib_mpc_1.Secp256k1Curve();
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGRUcmVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL21wYy9oZFRyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSCxtQ0FBb0M7QUFDcEMscUNBQXdDO0FBQ3hDLHlEQUF5RDtBQUN6RCxpQ0FBb0c7QUFFcEcsUUFBUTtBQUNLLFFBQUEsYUFBYSxHQUFHLE1BQU0sQ0FBQyxzRUFBc0UsQ0FBQyxDQUFDO0FBc0I1RyxTQUFTLG1CQUFtQixDQUFDLFFBQTRCLENBQUMsRUFBRSxTQUFpQixFQUFFLEVBQVUsRUFBRSxFQUFXO0lBQ3BHLE1BQU0sSUFBSSxHQUFHLG1CQUFVLENBQUMsUUFBUSxFQUFFLHVCQUFnQixDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ25FLE1BQU0sSUFBSSxHQUFHLG1CQUFVLENBQUMsUUFBUSxFQUFFLHVCQUFnQixDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ25FLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDN0IsSUFBSSxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUN0QyxxQkFBcUI7UUFDckIsNkVBQTZFO1FBQzdFLDZFQUE2RTtRQUM3RSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsdUJBQWdCLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLElB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QUFRLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUM3RSxDQUFDO1FBQ0YsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFDL0IsQ0FBQzs7QUFwQ0gsc0JBcUNDO0FBcENRLFdBQUssR0FBbUIsSUFBSSw0QkFBYyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEFuIGludGVyZmFjZSBmb3IgY2FsY3VsYXRpbmcgYSBzdWJrZXkgaW4gYW4gSEQga2V5IHNjaGVtZS5cbiAqL1xuaW1wb3J0IHsgY3JlYXRlSG1hYyB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBFZDI1NTE5Q3VydmUgfSBmcm9tICcuL2N1cnZlcyc7XG5pbXBvcnQgeyBTZWNwMjU2azFDdXJ2ZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1saWItbXBjJztcbmltcG9ydCB7IGJpZ0ludEZyb21CdWZmZXJCRSwgYmlnSW50VG9CdWZmZXJCRSwgYmlnSW50RnJvbUJ1ZmZlckxFLCBiaWdJbnRUb0J1ZmZlckxFIH0gZnJvbSAnLi91dGlsJztcblxuLy8gMl4yNTZcbmV4cG9ydCBjb25zdCBjaGFpbmNvZGVCYXNlID0gQmlnSW50KCcweDAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcpO1xuXG5pbnRlcmZhY2UgUHJpdmF0ZUtleWNoYWluIHtcbiAgcGs6IGJpZ2ludDtcbiAgc2s6IGJpZ2ludDtcbiAgcHJlZml4PzogYmlnaW50O1xuICBjaGFpbmNvZGU6IGJpZ2ludDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdWJsaWNLZXljaGFpbiB7XG4gIHBrOiBiaWdpbnQ7XG4gIGNoYWluY29kZTogYmlnaW50O1xufVxuXG5pbnRlcmZhY2UgSERUcmVlIHtcbiAgcHVibGljRGVyaXZlKGtleWNoYWluOiBQdWJsaWNLZXljaGFpbiwgcGF0aDogc3RyaW5nKTogUHVibGljS2V5Y2hhaW47XG5cbiAgcHJpdmF0ZURlcml2ZShrZXljaGFpbjogUHJpdmF0ZUtleWNoYWluLCBwYXRoOiBzdHJpbmcpOiBQcml2YXRlS2V5Y2hhaW47XG59XG5cbmV4cG9ydCBkZWZhdWx0IEhEVHJlZTtcblxuZnVuY3Rpb24gZGVyaXZlRWQyNTUxOUhlbHBlcihpbmRleDogbnVtYmVyIHwgdW5kZWZpbmVkID0gMCwgY2hhaW5jb2RlOiBiaWdpbnQsIHBrOiBiaWdpbnQsIHNrPzogYmlnaW50KTogQnVmZmVyW10ge1xuICBjb25zdCB6bWFjID0gY3JlYXRlSG1hYygnc2hhNTEyJywgYmlnSW50VG9CdWZmZXJCRShjaGFpbmNvZGUsIDMyKSk7XG4gIGNvbnN0IGltYWMgPSBjcmVhdGVIbWFjKCdzaGE1MTInLCBiaWdJbnRUb0J1ZmZlckJFKGNoYWluY29kZSwgMzIpKTtcbiAgY29uc3Qgc2VyaSA9IEJ1ZmZlci5hbGxvYyg0KTtcbiAgc2VyaS53cml0ZVVJbnQzMkxFKGluZGV4LCAwKTtcbiAgaWYgKCgoaW5kZXggPj4+IDApICYgMHg4MDAwMDAwMCkgPT09IDApIHtcbiAgICAvLyBOb3JtYWwgZGVyaXZhdGlvbjpcbiAgICAvLyBaID0gSE1BQy1TSEE1MTIoS2V5ID0gY3BhciwgRGF0YSA9IDB4MDIgfHwgc2VyUChwb2ludChrcGFyKSkgfHwgc2VyMzIoaSkpLlxuICAgIC8vIEkgPSBITUFDLVNIQTUxMihLZXkgPSBjcGFyLCBEYXRhID0gMHgwMyB8fCBzZXJQKHBvaW50KGtwYXIpKSB8fCBzZXIzMihpKSkuXG4gICAgem1hYy51cGRhdGUoJ1xceDAyJyk7XG4gICAgem1hYy51cGRhdGUoYmlnSW50VG9CdWZmZXJMRShwaywgMzIpKTtcbiAgICB6bWFjLnVwZGF0ZShzZXJpKTtcbiAgICBpbWFjLnVwZGF0ZSgnXFx4MDMnKTtcbiAgICBpbWFjLnVwZGF0ZShiaWdJbnRUb0J1ZmZlckxFKHBrLCAzMikpO1xuICAgIGltYWMudXBkYXRlKHNlcmkpO1xuICB9IGVsc2Uge1xuICAgIGlmIChzayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW4ndCBwZXJmb3JtZWQgaGFyZGVuZWQgZGVyaXZhdGlvbiB3aXRob3V0IHByaXZhdGUga2V5XCIpO1xuICAgIH1cbiAgICAvLyBIYXJkZW5lZCBkZXJpdmF0aW9uOlxuICAgIC8vIFogPSBITUFDLVNIQTUxMihLZXkgPSBjcGFyLCBEYXRhID0gMHgwMCB8fCBzZXIyNTYobGVmdChrcGFyKSkgfHwgc2VyMzIoaSkpLlxuICAgIC8vIEkgPSBITUFDLVNIQTUxMihLZXkgPSBjcGFyLCBEYXRhID0gMHgwMSB8fCBzZXIyNTYobGVmdChrcGFyKSkgfHwgc2VyMzIoaSkpLlxuICAgIHptYWMudXBkYXRlKCdcXHgwMCcpO1xuICAgIHptYWMudXBkYXRlKGJpZ0ludFRvQnVmZmVyTEUoc2ssIDMyKSk7XG4gICAgem1hYy51cGRhdGUoc2VyaSk7XG4gICAgaW1hYy51cGRhdGUoJ1xceDAxJyk7XG4gICAgaW1hYy51cGRhdGUoYmlnSW50VG9CdWZmZXJMRShzaywgMzIpKTtcbiAgICBpbWFjLnVwZGF0ZShzZXJpKTtcbiAgfVxuICByZXR1cm4gW3ptYWMuZGlnZXN0KCksIGltYWMuZGlnZXN0KCldO1xufVxuXG5mdW5jdGlvbiBwYXRoVG9JbmRpY2VzKHBhdGg6IHN0cmluZyk6IG51bWJlcltdIHtcbiAgcmV0dXJuIHBhdGhcbiAgICAucmVwbGFjZSgvXm0/XFwvLywgJycpXG4gICAgLnNwbGl0KCcvJylcbiAgICAubWFwKChpbmRleCkgPT4gcGFyc2VJbnQoaW5kZXgsIDEwKSk7XG59XG5cbmV4cG9ydCBjbGFzcyBFZDI1NTE5QklQMzIge1xuICBzdGF0aWMgY3VydmU6IEVkMjU1MTlDdXJ2ZSA9IG5ldyBFZDI1NTE5Q3VydmUoKTtcbiAgc3RhdGljIGluaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgc3RhdGljIGFzeW5jIGluaXRpYWxpemUoKTogUHJvbWlzZTxFZDI1NTE5QklQMzI+IHtcbiAgICBpZiAoIUVkMjU1MTlCSVAzMi5pbml0aWFsaXplZCkge1xuICAgICAgYXdhaXQgRWQyNTUxOUN1cnZlLmluaXRpYWxpemUoKTtcbiAgICAgIEVkMjU1MTlCSVAzMi5pbml0aWFsaXplZCA9IHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBFZDI1NTE5QklQMzIoKTtcbiAgfVxuXG4gIHB1YmxpY0Rlcml2ZShrZXljaGFpbjogUHVibGljS2V5Y2hhaW4sIHBhdGg6IHN0cmluZyk6IFB1YmxpY0tleWNoYWluIHtcbiAgICBjb25zdCBpbmRpY2VzID0gcGF0aFRvSW5kaWNlcyhwYXRoKTtcbiAgICBmdW5jdGlvbiBkZXJpdmVJbmRleChhY2M6IGJpZ2ludFtdLCBpbmRleDogbnVtYmVyIHwgdW5kZWZpbmVkKTogYmlnaW50W10ge1xuICAgICAgY29uc3QgW3BrLCBjaGFpbmNvZGVdID0gYWNjO1xuICAgICAgY29uc3QgW3pvdXQsIGlvdXRdID0gZGVyaXZlRWQyNTUxOUhlbHBlcihpbmRleCwgY2hhaW5jb2RlLCBwayk7XG4gICAgICBjb25zdCB6bCA9IHpvdXQuc2xpY2UoMCwgMzIpO1xuICAgICAgLy8gbGVmdCA9IGtsICsgOCAqIHRydW5jMjgoemwpXG4gICAgICBjb25zdCB0ID0gQmlnSW50KDgpICogYmlnSW50RnJvbUJ1ZmZlckxFKHpsLnNsaWNlKDAsIDI4KSk7XG4gICAgICBjb25zdCBsZWZ0ID0gRWQyNTUxOUJJUDMyLmN1cnZlLnBvaW50QWRkKHBrLCBFZDI1NTE5QklQMzIuY3VydmUuYmFzZVBvaW50TXVsdCh0KSk7XG4gICAgICByZXR1cm4gW2xlZnQsIGJpZ0ludEZyb21CdWZmZXJCRShpb3V0LnNsaWNlKDMyKSldO1xuICAgIH1cbiAgICBjb25zdCBzdWJrZXkgPSBpbmRpY2VzLnJlZHVjZShkZXJpdmVJbmRleCwgZGVyaXZlSW5kZXgoW2tleWNoYWluLnBrLCBrZXljaGFpbi5jaGFpbmNvZGVdLCBpbmRpY2VzLnNoaWZ0KCkpKTtcbiAgICByZXR1cm4geyBwazogc3Via2V5WzBdLCBjaGFpbmNvZGU6IHN1YmtleVsxXSB9O1xuICB9XG5cbiAgcHJpdmF0ZURlcml2ZShrZXljaGFpbjogUHJpdmF0ZUtleWNoYWluLCBwYXRoOiBzdHJpbmcpOiBQcml2YXRlS2V5Y2hhaW4ge1xuICAgIGNvbnN0IGluZGljZXMgPSBwYXRoVG9JbmRpY2VzKHBhdGgpO1xuICAgIGZ1bmN0aW9uIGRlcml2ZUluZGV4KGFjYzogYmlnaW50W10sIGluZGV4OiBudW1iZXIgfCB1bmRlZmluZWQpOiBiaWdpbnRbXSB7XG4gICAgICBjb25zdCBbcGssIHNrLCBwcmVmaXgsIGNoYWluY29kZV0gPSBhY2M7XG4gICAgICBjb25zdCBbem91dCwgaW91dF0gPSBkZXJpdmVFZDI1NTE5SGVscGVyKGluZGV4LCBjaGFpbmNvZGUsIHBrLCBzayk7XG4gICAgICBjb25zdCB6bCA9IHpvdXQuc2xpY2UoMCwgMzIpO1xuICAgICAgY29uc3QgenIgPSB6b3V0LnNsaWNlKDMyKTtcbiAgICAgIC8vIGxlZnQgPSBrbCArIDggKiB0cnVuYzI4KHpsKVxuICAgICAgY29uc3QgdCA9IEJpZ0ludCg4KSAqIGJpZ0ludEZyb21CdWZmZXJMRSh6bC5zbGljZSgwLCAyOCkpO1xuICAgICAgY29uc3QgbGVmdF9wayA9IEVkMjU1MTlCSVAzMi5jdXJ2ZS5wb2ludEFkZChwaywgRWQyNTUxOUJJUDMyLmN1cnZlLmJhc2VQb2ludE11bHQodCkpO1xuICAgICAgY29uc3QgbGVmdF9zayA9IEVkMjU1MTlCSVAzMi5jdXJ2ZS5zY2FsYXJBZGQoc2ssIHQpO1xuICAgICAgLy8gcmlnaHQgPSB6ciArIGtyXG4gICAgICBjb25zdCByaWdodCA9IChwcmVmaXggKyBiaWdJbnRGcm9tQnVmZmVyQkUoenIpKSAlIGNoYWluY29kZUJhc2U7XG4gICAgICByZXR1cm4gW2xlZnRfcGssIGxlZnRfc2ssIHJpZ2h0LCBiaWdJbnRGcm9tQnVmZmVyQkUoaW91dC5zbGljZSgzMikpXTtcbiAgICB9XG4gICAgY29uc3QgW3BrLCBzaywgcHJlZml4LCBjaGFpbmNvZGVdID0gaW5kaWNlcy5yZWR1Y2UoXG4gICAgICBkZXJpdmVJbmRleCxcbiAgICAgIGRlcml2ZUluZGV4KFtrZXljaGFpbi5waywga2V5Y2hhaW4uc2ssIGtleWNoYWluLnByZWZpeCEsIGtleWNoYWluLmNoYWluY29kZV0sIGluZGljZXMuc2hpZnQoKSlcbiAgICApO1xuICAgIHJldHVybiB7IHBrLCBzaywgcHJlZml4LCBjaGFpbmNvZGUgfTtcbiAgfVxufVxuXG5mdW5jdGlvbiBkZXJpdmVTZWNwMjU2azFIZWxwZXIoaW5kZXg6IG51bWJlciB8IHVuZGVmaW5lZCA9IDAsIGNoYWluY29kZTogYmlnaW50LCBwazogYmlnaW50LCBzaz86IGJpZ2ludCk6IEJ1ZmZlciB7XG4gIGNvbnN0IGRhdGEgPSBCdWZmZXIuYWxsb2MoMzMgKyA0KTtcbiAgaWYgKCgoaW5kZXggPj4+IDApICYgMHg4MDAwMDAwMCkgPT09IDApIHtcbiAgICBiaWdJbnRUb0J1ZmZlckJFKHBrLCAzMykuY29weShkYXRhKTtcbiAgfSBlbHNlIHtcbiAgICBpZiAoc2sgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ2FuJ3QgcGVyZm9ybWVkIGhhcmRlbmVkIGRlcml2YXRpb24gd2l0aG91dCBwcml2YXRlIGtleVwiKTtcbiAgICB9XG4gICAgZGF0YVswXSA9IDA7XG4gICAgYmlnSW50VG9CdWZmZXJCRShzaywgMzIpLmNvcHkoZGF0YSwgMSk7XG4gIH1cbiAgZGF0YS53cml0ZVVJbnQzMkJFKGluZGV4LCAzMyk7XG4gIHJldHVybiBjcmVhdGVIbWFjKCdzaGE1MTInLCBiaWdJbnRUb0J1ZmZlckJFKGNoYWluY29kZSwgMzIpKS51cGRhdGUoZGF0YSkuZGlnZXN0KCk7XG59XG5cbmV4cG9ydCBjbGFzcyBCSVAzMiB7XG4gIHN0YXRpYyBjdXJ2ZTogU2VjcDI1NmsxQ3VydmUgPSBuZXcgU2VjcDI1NmsxQ3VydmUoKTtcblxuICBwdWJsaWNEZXJpdmUoa2V5Y2hhaW46IFB1YmxpY0tleWNoYWluLCBwYXRoOiBzdHJpbmcpOiBQdWJsaWNLZXljaGFpbiB7XG4gICAgY29uc3QgaW5kaWNlcyA9IHBhdGhUb0luZGljZXMocGF0aCk7XG4gICAgZnVuY3Rpb24gZGVyaXZlSW5kZXgoYWNjOiBiaWdpbnRbXSwgaW5kZXg6IG51bWJlciB8IHVuZGVmaW5lZCk6IGJpZ2ludFtdIHtcbiAgICAgIGNvbnN0IFtwaywgY2hhaW5jb2RlXSA9IGFjYztcbiAgICAgIGNvbnN0IEkgPSBkZXJpdmVTZWNwMjU2azFIZWxwZXIoaW5kZXgsIGNoYWluY29kZSwgcGspO1xuICAgICAgY29uc3QgaWwgPSBiaWdJbnRGcm9tQnVmZmVyQkUoSS5zbGljZSgwLCAzMikpO1xuICAgICAgY29uc3QgaXIgPSBiaWdJbnRGcm9tQnVmZmVyQkUoSS5zbGljZSgzMikpO1xuICAgICAgY29uc3QgbGVmdF9wayA9IEJJUDMyLmN1cnZlLnBvaW50QWRkKHBrLCBCSVAzMi5jdXJ2ZS5iYXNlUG9pbnRNdWx0KGlsKSk7XG4gICAgICByZXR1cm4gW2xlZnRfcGssIGlyXTtcbiAgICB9XG4gICAgY29uc3QgW3BrLCBjaGFpbmNvZGVdID0gaW5kaWNlcy5yZWR1Y2UoXG4gICAgICBkZXJpdmVJbmRleCxcbiAgICAgIGRlcml2ZUluZGV4KFtrZXljaGFpbi5waywga2V5Y2hhaW4uY2hhaW5jb2RlXSwgaW5kaWNlcy5zaGlmdCgpKVxuICAgICk7XG4gICAgcmV0dXJuIHsgcGssIGNoYWluY29kZSB9O1xuICB9XG5cbiAgcHJpdmF0ZURlcml2ZShrZXljaGFpbjogUHJpdmF0ZUtleWNoYWluLCBwYXRoOiBzdHJpbmcpOiBQcml2YXRlS2V5Y2hhaW4ge1xuICAgIGNvbnN0IGluZGljZXMgPSBwYXRoVG9JbmRpY2VzKHBhdGgpO1xuICAgIGZ1bmN0aW9uIGRlcml2ZUluZGV4KGFjYzogYmlnaW50W10sIGluZGV4OiBudW1iZXIgfCB1bmRlZmluZWQpOiBiaWdpbnRbXSB7XG4gICAgICBjb25zdCBbcGssIHNrLCBjaGFpbmNvZGVdID0gYWNjO1xuICAgICAgY29uc3QgSSA9IGRlcml2ZVNlY3AyNTZrMUhlbHBlcihpbmRleCwgY2hhaW5jb2RlLCBwaywgc2spO1xuICAgICAgY29uc3QgaWwgPSBiaWdJbnRGcm9tQnVmZmVyQkUoSS5zbGljZSgwLCAzMikpO1xuICAgICAgY29uc3QgaXIgPSBiaWdJbnRGcm9tQnVmZmVyQkUoSS5zbGljZSgzMikpO1xuICAgICAgY29uc3QgbGVmdF9wayA9IEJJUDMyLmN1cnZlLnBvaW50QWRkKHBrLCBCSVAzMi5jdXJ2ZS5iYXNlUG9pbnRNdWx0KGlsKSk7XG4gICAgICBjb25zdCBsZWZ0X3NrID0gQklQMzIuY3VydmUuc2NhbGFyQWRkKHNrLCBpbCk7XG4gICAgICByZXR1cm4gW2xlZnRfcGssIGxlZnRfc2ssIGlyXTtcbiAgICB9XG4gICAgY29uc3QgW3BrLCBzaywgY2hhaW5jb2RlXSA9IGluZGljZXMucmVkdWNlKFxuICAgICAgZGVyaXZlSW5kZXgsXG4gICAgICBkZXJpdmVJbmRleChba2V5Y2hhaW4ucGssIGtleWNoYWluLnNrLCBrZXljaGFpbi5jaGFpbmNvZGVdLCBpbmRpY2VzLnNoaWZ0KCkpXG4gICAgKTtcbiAgICByZXR1cm4geyBwaywgc2ssIGNoYWluY29kZSB9O1xuICB9XG59XG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/mpc/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAClB"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvbXBjL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNwbGl0U2VjcmV0IHtcbiAgc2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBiaWdpbnQ+O1xuICB2OiBBcnJheTxiaWdpbnQ+O1xufVxuIl19
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @prettier
|
|
3
|
-
*/
|
|
4
|
-
import { BitGoBase } from '../bitgoBase';
|
|
5
|
-
import { AffirmationStatus, IAffirmation, Lock, Payload } from '../trading';
|
|
6
|
-
export declare class Affirmation implements IAffirmation {
|
|
7
|
-
private bitgo;
|
|
8
|
-
private enterpriseId;
|
|
9
|
-
id?: string;
|
|
10
|
-
partyAccountId?: string;
|
|
11
|
-
status?: AffirmationStatus;
|
|
12
|
-
settlement?: string;
|
|
13
|
-
lock?: Lock;
|
|
14
|
-
payload?: string;
|
|
15
|
-
createdAt?: Date;
|
|
16
|
-
expireAt?: Date;
|
|
17
|
-
constructor(affirmationData: any, bitgo: BitGoBase, enterpriseId: string);
|
|
18
|
-
/**
|
|
19
|
-
* Affirms a pending affirmation, authorizing the settlement
|
|
20
|
-
* @param payload payload authorizing the movement of funds from a trading account
|
|
21
|
-
* @param signature signature of the payload with the user key of the trading account
|
|
22
|
-
*/
|
|
23
|
-
affirm(payload: Payload, signature: string): Promise<void>;
|
|
24
|
-
/**
|
|
25
|
-
* Rejects a pending affirmation, cancelling the settlement
|
|
26
|
-
*/
|
|
27
|
-
reject(): Promise<void>;
|
|
28
|
-
/**
|
|
29
|
-
* Cancels a pending affirmation, cancelling the settlement
|
|
30
|
-
*/
|
|
31
|
-
cancel(): Promise<void>;
|
|
32
|
-
private updateStatus;
|
|
33
|
-
private updateAffirmationData;
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=affirmation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"affirmation.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/affirmation.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5E,qBAAa,WAAY,YAAW,YAAY;IAC9C,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,YAAY,CAAS;IAEtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;gBAEX,eAAe,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM;IAOxE;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAShE;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;YAIf,YAAY;IAS1B,OAAO,CAAC,qBAAqB;CAU9B"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Affirmation = void 0;
|
|
4
|
-
const trading_1 = require("../trading");
|
|
5
|
-
class Affirmation {
|
|
6
|
-
constructor(affirmationData, bitgo, enterpriseId) {
|
|
7
|
-
this.bitgo = bitgo;
|
|
8
|
-
this.enterpriseId = enterpriseId;
|
|
9
|
-
this.updateAffirmationData(affirmationData);
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Affirms a pending affirmation, authorizing the settlement
|
|
13
|
-
* @param payload payload authorizing the movement of funds from a trading account
|
|
14
|
-
* @param signature signature of the payload with the user key of the trading account
|
|
15
|
-
*/
|
|
16
|
-
async affirm(payload, signature) {
|
|
17
|
-
const body = {
|
|
18
|
-
payload: JSON.stringify(payload),
|
|
19
|
-
signature: signature,
|
|
20
|
-
};
|
|
21
|
-
return await this.updateStatus(trading_1.AffirmationStatus.AFFIRMED, body);
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Rejects a pending affirmation, cancelling the settlement
|
|
25
|
-
*/
|
|
26
|
-
async reject() {
|
|
27
|
-
return this.updateStatus(trading_1.AffirmationStatus.REJECTED, null);
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Cancels a pending affirmation, cancelling the settlement
|
|
31
|
-
*/
|
|
32
|
-
async cancel() {
|
|
33
|
-
return this.updateStatus(trading_1.AffirmationStatus.CANCELED, null);
|
|
34
|
-
}
|
|
35
|
-
async updateStatus(status, body) {
|
|
36
|
-
const bodyWithStatus = { status, ...body };
|
|
37
|
-
const url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${this.partyAccountId}/affirmations/${this.id}`);
|
|
38
|
-
const response = await this.bitgo.put(url).send(bodyWithStatus).result();
|
|
39
|
-
this.updateAffirmationData(response);
|
|
40
|
-
}
|
|
41
|
-
updateAffirmationData(affirmationData) {
|
|
42
|
-
this.id = affirmationData.id;
|
|
43
|
-
this.partyAccountId = affirmationData.partyAccountId;
|
|
44
|
-
this.status = affirmationData.status;
|
|
45
|
-
this.settlement = affirmationData.settlement;
|
|
46
|
-
this.lock = affirmationData.lock;
|
|
47
|
-
this.payload = affirmationData.payload;
|
|
48
|
-
this.createdAt = new Date(affirmationData.createdAt);
|
|
49
|
-
this.expireAt = new Date(affirmationData.expireAt);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
exports.Affirmation = Affirmation;
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXJtYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy9hZmZpcm1hdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSx3Q0FBNEU7QUFFNUUsTUFBYSxXQUFXO0lBYXRCLFlBQVksZUFBb0IsRUFBRSxLQUFnQixFQUFFLFlBQW9CO1FBQ3RFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBRWpDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBZ0IsRUFBRSxTQUFpQjtRQUM5QyxNQUFNLElBQUksR0FBRztZQUNYLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQztZQUNoQyxTQUFTLEVBQUUsU0FBUztTQUNyQixDQUFDO1FBRUYsT0FBTyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsMkJBQWlCLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxNQUFNO1FBQ1YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLDJCQUFpQixDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsTUFBTTtRQUNWLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQywyQkFBaUIsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVPLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBeUIsRUFBRSxJQUFVO1FBQzlELE1BQU0sY0FBYyxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUM7UUFDM0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDckMsNEJBQTRCLElBQUksQ0FBQyxZQUFZLFlBQVksSUFBSSxDQUFDLGNBQWMsaUJBQWlCLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FDdkcsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3pFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU8scUJBQXFCLENBQUMsZUFBb0I7UUFDaEQsSUFBSSxDQUFDLEVBQUUsR0FBRyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxjQUFjLEdBQUcsZUFBZSxDQUFDLGNBQWMsQ0FBQztRQUNyRCxJQUFJLENBQUMsTUFBTSxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUM7UUFDckMsSUFBSSxDQUFDLFVBQVUsR0FBRyxlQUFlLENBQUMsVUFBVSxDQUFDO1FBQzdDLElBQUksQ0FBQyxJQUFJLEdBQUcsZUFBZSxDQUFDLElBQVksQ0FBQztRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLGVBQWUsQ0FBQyxPQUFPLENBQUM7UUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckQsQ0FBQztDQUNGO0FBbkVELGtDQW1FQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHByZXR0aWVyXG4gKi9cbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBBZmZpcm1hdGlvblN0YXR1cywgSUFmZmlybWF0aW9uLCBMb2NrLCBQYXlsb2FkIH0gZnJvbSAnLi4vdHJhZGluZyc7XG5cbmV4cG9ydCBjbGFzcyBBZmZpcm1hdGlvbiBpbXBsZW1lbnRzIElBZmZpcm1hdGlvbiB7XG4gIHByaXZhdGUgYml0Z286IEJpdEdvQmFzZTtcbiAgcHJpdmF0ZSBlbnRlcnByaXNlSWQ6IHN0cmluZztcblxuICBwdWJsaWMgaWQ/OiBzdHJpbmc7XG4gIHB1YmxpYyBwYXJ0eUFjY291bnRJZD86IHN0cmluZztcbiAgcHVibGljIHN0YXR1cz86IEFmZmlybWF0aW9uU3RhdHVzO1xuICBwdWJsaWMgc2V0dGxlbWVudD86IHN0cmluZztcbiAgcHVibGljIGxvY2s/OiBMb2NrO1xuICBwdWJsaWMgcGF5bG9hZD86IHN0cmluZztcbiAgcHVibGljIGNyZWF0ZWRBdD86IERhdGU7XG4gIHB1YmxpYyBleHBpcmVBdD86IERhdGU7XG5cbiAgY29uc3RydWN0b3IoYWZmaXJtYXRpb25EYXRhOiBhbnksIGJpdGdvOiBCaXRHb0Jhc2UsIGVudGVycHJpc2VJZDogc3RyaW5nKSB7XG4gICAgdGhpcy5iaXRnbyA9IGJpdGdvO1xuICAgIHRoaXMuZW50ZXJwcmlzZUlkID0gZW50ZXJwcmlzZUlkO1xuXG4gICAgdGhpcy51cGRhdGVBZmZpcm1hdGlvbkRhdGEoYWZmaXJtYXRpb25EYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZmZpcm1zIGEgcGVuZGluZyBhZmZpcm1hdGlvbiwgYXV0aG9yaXppbmcgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBheWxvYWQgcGF5bG9hZCBhdXRob3JpemluZyB0aGUgbW92ZW1lbnQgb2YgZnVuZHMgZnJvbSBhIHRyYWRpbmcgYWNjb3VudFxuICAgKiBAcGFyYW0gc2lnbmF0dXJlIHNpZ25hdHVyZSBvZiB0aGUgcGF5bG9hZCB3aXRoIHRoZSB1c2VyIGtleSBvZiB0aGUgdHJhZGluZyBhY2NvdW50XG4gICAqL1xuICBhc3luYyBhZmZpcm0ocGF5bG9hZDogUGF5bG9hZCwgc2lnbmF0dXJlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBib2R5ID0ge1xuICAgICAgcGF5bG9hZDogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gICAgICBzaWduYXR1cmU6IHNpZ25hdHVyZSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMudXBkYXRlU3RhdHVzKEFmZmlybWF0aW9uU3RhdHVzLkFGRklSTUVELCBib2R5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWplY3RzIGEgcGVuZGluZyBhZmZpcm1hdGlvbiwgY2FuY2VsbGluZyB0aGUgc2V0dGxlbWVudFxuICAgKi9cbiAgYXN5bmMgcmVqZWN0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLnVwZGF0ZVN0YXR1cyhBZmZpcm1hdGlvblN0YXR1cy5SRUpFQ1RFRCwgbnVsbCk7XG4gIH1cblxuICAvKipcbiAgICogQ2FuY2VscyBhIHBlbmRpbmcgYWZmaXJtYXRpb24sIGNhbmNlbGxpbmcgdGhlIHNldHRsZW1lbnRcbiAgICovXG4gIGFzeW5jIGNhbmNlbCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy51cGRhdGVTdGF0dXMoQWZmaXJtYXRpb25TdGF0dXMuQ0FOQ0VMRUQsIG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVTdGF0dXMoc3RhdHVzOiBBZmZpcm1hdGlvblN0YXR1cywgYm9keT86IGFueSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGJvZHlXaXRoU3RhdHVzID0geyBzdGF0dXMsIC4uLmJvZHkgfTtcbiAgICBjb25zdCB1cmwgPSB0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwoXG4gICAgICBgL2FwaS90cmFkZS92MS9lbnRlcnByaXNlLyR7dGhpcy5lbnRlcnByaXNlSWR9L2FjY291bnQvJHt0aGlzLnBhcnR5QWNjb3VudElkfS9hZmZpcm1hdGlvbnMvJHt0aGlzLmlkfWBcbiAgICApO1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5iaXRnby5wdXQodXJsKS5zZW5kKGJvZHlXaXRoU3RhdHVzKS5yZXN1bHQoKTtcbiAgICB0aGlzLnVwZGF0ZUFmZmlybWF0aW9uRGF0YShyZXNwb25zZSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUFmZmlybWF0aW9uRGF0YShhZmZpcm1hdGlvbkRhdGE6IGFueSkge1xuICAgIHRoaXMuaWQgPSBhZmZpcm1hdGlvbkRhdGEuaWQ7XG4gICAgdGhpcy5wYXJ0eUFjY291bnRJZCA9IGFmZmlybWF0aW9uRGF0YS5wYXJ0eUFjY291bnRJZDtcbiAgICB0aGlzLnN0YXR1cyA9IGFmZmlybWF0aW9uRGF0YS5zdGF0dXM7XG4gICAgdGhpcy5zZXR0bGVtZW50ID0gYWZmaXJtYXRpb25EYXRhLnNldHRsZW1lbnQ7XG4gICAgdGhpcy5sb2NrID0gYWZmaXJtYXRpb25EYXRhLmxvY2sgYXMgTG9jaztcbiAgICB0aGlzLnBheWxvYWQgPSBhZmZpcm1hdGlvbkRhdGEucGF5bG9hZDtcbiAgICB0aGlzLmNyZWF0ZWRBdCA9IG5ldyBEYXRlKGFmZmlybWF0aW9uRGF0YS5jcmVhdGVkQXQpO1xuICAgIHRoaXMuZXhwaXJlQXQgPSBuZXcgRGF0ZShhZmZpcm1hdGlvbkRhdGEuZXhwaXJlQXQpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @prettier
|
|
3
|
-
*/
|
|
4
|
-
import { BitGoBase } from '../bitgoBase';
|
|
5
|
-
import { Affirmation, AffirmationStatus, GetAffirmationParameters, IAffirmations, ITradingAccount } from '../trading';
|
|
6
|
-
export declare class Affirmations implements IAffirmations {
|
|
7
|
-
private bitgo;
|
|
8
|
-
private enterpriseId;
|
|
9
|
-
private account?;
|
|
10
|
-
constructor(bitgo: BitGoBase, enterpriseId: string, account?: ITradingAccount);
|
|
11
|
-
/**
|
|
12
|
-
* Lists all affirmations for an enterprise
|
|
13
|
-
* @param status optional status to filter affirmations by
|
|
14
|
-
*/
|
|
15
|
-
list(status?: AffirmationStatus): Promise<Affirmation[]>;
|
|
16
|
-
/**
|
|
17
|
-
* Retrieves a single affirmation by its ID
|
|
18
|
-
* @param id ID of the affirmation to retrieve
|
|
19
|
-
* @param accountId ID of the trading account that the affirmation belongs to
|
|
20
|
-
*/
|
|
21
|
-
get({ id, accountId }: GetAffirmationParameters): Promise<Affirmation>;
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=affirmations.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"affirmations.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/affirmations.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEtH,qBAAa,YAAa,YAAW,aAAa;IAChD,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAkB;gBAEtB,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe;IAM7E;;;OAGG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAkB9D;;;;OAIG;IACG,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,wBAAwB,GAAG,OAAO,CAAC,WAAW,CAAC;CAY7E"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Affirmations = void 0;
|
|
4
|
-
const trading_1 = require("../trading");
|
|
5
|
-
class Affirmations {
|
|
6
|
-
constructor(bitgo, enterpriseId, account) {
|
|
7
|
-
this.bitgo = bitgo;
|
|
8
|
-
this.enterpriseId = enterpriseId;
|
|
9
|
-
this.account = account;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Lists all affirmations for an enterprise
|
|
13
|
-
* @param status optional status to filter affirmations by
|
|
14
|
-
*/
|
|
15
|
-
async list(status) {
|
|
16
|
-
let url;
|
|
17
|
-
if (this.account) {
|
|
18
|
-
url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${this.account.id}/affirmations`);
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/affirmations`);
|
|
22
|
-
}
|
|
23
|
-
if (status) {
|
|
24
|
-
url = `${url}?status=${status}`;
|
|
25
|
-
}
|
|
26
|
-
const response = (await this.bitgo.get(url).result());
|
|
27
|
-
return response.affirmations.map((affirmation) => new trading_1.Affirmation(affirmation, this.bitgo, this.enterpriseId));
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Retrieves a single affirmation by its ID
|
|
31
|
-
* @param id ID of the affirmation to retrieve
|
|
32
|
-
* @param accountId ID of the trading account that the affirmation belongs to
|
|
33
|
-
*/
|
|
34
|
-
async get({ id, accountId }) {
|
|
35
|
-
const account = (this.account && this.account.id) || accountId;
|
|
36
|
-
if (!account) {
|
|
37
|
-
throw new Error('accountId must be provided in parameters for an enterprise context');
|
|
38
|
-
}
|
|
39
|
-
const url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${account}/affirmations/${id}`);
|
|
40
|
-
const response = await this.bitgo.get(url).result();
|
|
41
|
-
return new trading_1.Affirmation(response, this.bitgo, this.enterpriseId);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
exports.Affirmations = Affirmations;
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXJtYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL3RyYWRpbmcvYWZmaXJtYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLHdDQUFzSDtBQUV0SCxNQUFhLFlBQVk7SUFLdkIsWUFBWSxLQUFnQixFQUFFLFlBQW9CLEVBQUUsT0FBeUI7UUFDM0UsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBMEI7UUFDbkMsSUFBSSxHQUFHLENBQUM7UUFDUixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQy9CLDRCQUE0QixJQUFJLENBQUMsWUFBWSxZQUFZLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxlQUFlLENBQ3hGLENBQUM7U0FDSDthQUFNO1lBQ0wsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsNEJBQTRCLElBQUksQ0FBQyxZQUFZLGVBQWUsQ0FBQyxDQUFDO1NBQ2pHO1FBQ0QsSUFBSSxNQUFNLEVBQUU7WUFDVixHQUFHLEdBQUcsR0FBRyxHQUFHLFdBQVcsTUFBTSxFQUFFLENBQUM7U0FDakM7UUFFRCxNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQVEsQ0FBQztRQUU3RCxPQUFPLFFBQVEsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLHFCQUFXLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBNEI7UUFDbkQsTUFBTSxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksU0FBUyxDQUFDO1FBQy9ELElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLG9FQUFvRSxDQUFDLENBQUM7U0FDdkY7UUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUNyQyw0QkFBNEIsSUFBSSxDQUFDLFlBQVksWUFBWSxPQUFPLGlCQUFpQixFQUFFLEVBQUUsQ0FDdEYsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDcEQsT0FBTyxJQUFJLHFCQUFXLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xFLENBQUM7Q0FDRjtBQWxERCxvQ0FrREMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICcuLi9iaXRnb0Jhc2UnO1xuaW1wb3J0IHsgQWZmaXJtYXRpb24sIEFmZmlybWF0aW9uU3RhdHVzLCBHZXRBZmZpcm1hdGlvblBhcmFtZXRlcnMsIElBZmZpcm1hdGlvbnMsIElUcmFkaW5nQWNjb3VudCB9IGZyb20gJy4uL3RyYWRpbmcnO1xuXG5leHBvcnQgY2xhc3MgQWZmaXJtYXRpb25zIGltcGxlbWVudHMgSUFmZmlybWF0aW9ucyB7XG4gIHByaXZhdGUgYml0Z286IEJpdEdvQmFzZTtcbiAgcHJpdmF0ZSBlbnRlcnByaXNlSWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBhY2NvdW50PzogSVRyYWRpbmdBY2NvdW50O1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIGVudGVycHJpc2VJZDogc3RyaW5nLCBhY2NvdW50PzogSVRyYWRpbmdBY2NvdW50KSB7XG4gICAgdGhpcy5iaXRnbyA9IGJpdGdvO1xuICAgIHRoaXMuZW50ZXJwcmlzZUlkID0gZW50ZXJwcmlzZUlkO1xuICAgIHRoaXMuYWNjb3VudCA9IGFjY291bnQ7XG4gIH1cblxuICAvKipcbiAgICogTGlzdHMgYWxsIGFmZmlybWF0aW9ucyBmb3IgYW4gZW50ZXJwcmlzZVxuICAgKiBAcGFyYW0gc3RhdHVzIG9wdGlvbmFsIHN0YXR1cyB0byBmaWx0ZXIgYWZmaXJtYXRpb25zIGJ5XG4gICAqL1xuICBhc3luYyBsaXN0KHN0YXR1cz86IEFmZmlybWF0aW9uU3RhdHVzKTogUHJvbWlzZTxBZmZpcm1hdGlvbltdPiB7XG4gICAgbGV0IHVybDtcbiAgICBpZiAodGhpcy5hY2NvdW50KSB7XG4gICAgICB1cmwgPSB0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwoXG4gICAgICAgIGAvYXBpL3RyYWRlL3YxL2VudGVycHJpc2UvJHt0aGlzLmVudGVycHJpc2VJZH0vYWNjb3VudC8ke3RoaXMuYWNjb3VudC5pZH0vYWZmaXJtYXRpb25zYFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdXJsID0gdGhpcy5iaXRnby5taWNyb3NlcnZpY2VzVXJsKGAvYXBpL3RyYWRlL3YxL2VudGVycHJpc2UvJHt0aGlzLmVudGVycHJpc2VJZH0vYWZmaXJtYXRpb25zYCk7XG4gICAgfVxuICAgIGlmIChzdGF0dXMpIHtcbiAgICAgIHVybCA9IGAke3VybH0/c3RhdHVzPSR7c3RhdHVzfWA7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2UgPSAoYXdhaXQgdGhpcy5iaXRnby5nZXQodXJsKS5yZXN1bHQoKSkgYXMgYW55O1xuXG4gICAgcmV0dXJuIHJlc3BvbnNlLmFmZmlybWF0aW9ucy5tYXAoKGFmZmlybWF0aW9uKSA9PiBuZXcgQWZmaXJtYXRpb24oYWZmaXJtYXRpb24sIHRoaXMuYml0Z28sIHRoaXMuZW50ZXJwcmlzZUlkKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGEgc2luZ2xlIGFmZmlybWF0aW9uIGJ5IGl0cyBJRFxuICAgKiBAcGFyYW0gaWQgSUQgb2YgdGhlIGFmZmlybWF0aW9uIHRvIHJldHJpZXZlXG4gICAqIEBwYXJhbSBhY2NvdW50SWQgSUQgb2YgdGhlIHRyYWRpbmcgYWNjb3VudCB0aGF0IHRoZSBhZmZpcm1hdGlvbiBiZWxvbmdzIHRvXG4gICAqL1xuICBhc3luYyBnZXQoeyBpZCwgYWNjb3VudElkIH06IEdldEFmZmlybWF0aW9uUGFyYW1ldGVycyk6IFByb21pc2U8QWZmaXJtYXRpb24+IHtcbiAgICBjb25zdCBhY2NvdW50ID0gKHRoaXMuYWNjb3VudCAmJiB0aGlzLmFjY291bnQuaWQpIHx8IGFjY291bnRJZDtcbiAgICBpZiAoIWFjY291bnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYWNjb3VudElkIG11c3QgYmUgcHJvdmlkZWQgaW4gcGFyYW1ldGVycyBmb3IgYW4gZW50ZXJwcmlzZSBjb250ZXh0Jyk7XG4gICAgfVxuXG4gICAgY29uc3QgdXJsID0gdGhpcy5iaXRnby5taWNyb3NlcnZpY2VzVXJsKFxuICAgICAgYC9hcGkvdHJhZGUvdjEvZW50ZXJwcmlzZS8ke3RoaXMuZW50ZXJwcmlzZUlkfS9hY2NvdW50LyR7YWNjb3VudH0vYWZmaXJtYXRpb25zLyR7aWR9YFxuICAgICk7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmJpdGdvLmdldCh1cmwpLnJlc3VsdCgpO1xuICAgIHJldHVybiBuZXcgQWZmaXJtYXRpb24ocmVzcG9uc2UsIHRoaXMuYml0Z28sIHRoaXMuZW50ZXJwcmlzZUlkKTtcbiAgfVxufVxuIl19
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Payload } from './payload';
|
|
2
|
-
export declare enum AffirmationStatus {
|
|
3
|
-
PENDING = "pending",
|
|
4
|
-
OVERDUE = "overdue",
|
|
5
|
-
REJECTED = "rejected",
|
|
6
|
-
AFFIRMED = "affirmed",
|
|
7
|
-
FAILED = "failed",
|
|
8
|
-
CANCELED = "canceled"
|
|
9
|
-
}
|
|
10
|
-
export interface IAffirmation {
|
|
11
|
-
affirm(payload: Payload, signature: string): Promise<void>;
|
|
12
|
-
reject(): Promise<void>;
|
|
13
|
-
cancel(): Promise<void>;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=iAffirmation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iAffirmation.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/iAffirmation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AffirmationStatus = void 0;
|
|
4
|
-
var AffirmationStatus;
|
|
5
|
-
(function (AffirmationStatus) {
|
|
6
|
-
AffirmationStatus["PENDING"] = "pending";
|
|
7
|
-
AffirmationStatus["OVERDUE"] = "overdue";
|
|
8
|
-
AffirmationStatus["REJECTED"] = "rejected";
|
|
9
|
-
AffirmationStatus["AFFIRMED"] = "affirmed";
|
|
10
|
-
AffirmationStatus["FAILED"] = "failed";
|
|
11
|
-
AffirmationStatus["CANCELED"] = "canceled";
|
|
12
|
-
})(AffirmationStatus = exports.AffirmationStatus || (exports.AffirmationStatus = {}));
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaUFmZmlybWF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL3RyYWRpbmcvaUFmZmlybWF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLElBQVksaUJBT1g7QUFQRCxXQUFZLGlCQUFpQjtJQUMzQix3Q0FBbUIsQ0FBQTtJQUNuQix3Q0FBbUIsQ0FBQTtJQUNuQiwwQ0FBcUIsQ0FBQTtJQUNyQiwwQ0FBcUIsQ0FBQTtJQUNyQixzQ0FBaUIsQ0FBQTtJQUNqQiwwQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBUFcsaUJBQWlCLEdBQWpCLHlCQUFpQixLQUFqQix5QkFBaUIsUUFPNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYXlsb2FkIH0gZnJvbSAnLi9wYXlsb2FkJztcblxuZXhwb3J0IGVudW0gQWZmaXJtYXRpb25TdGF0dXMge1xuICBQRU5ESU5HID0gJ3BlbmRpbmcnLFxuICBPVkVSRFVFID0gJ292ZXJkdWUnLFxuICBSRUpFQ1RFRCA9ICdyZWplY3RlZCcsXG4gIEFGRklSTUVEID0gJ2FmZmlybWVkJyxcbiAgRkFJTEVEID0gJ2ZhaWxlZCcsXG4gIENBTkNFTEVEID0gJ2NhbmNlbGVkJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQWZmaXJtYXRpb24ge1xuICBhZmZpcm0ocGF5bG9hZDogUGF5bG9hZCwgc2lnbmF0dXJlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+O1xuICByZWplY3QoKTogUHJvbWlzZTx2b2lkPjtcbiAgY2FuY2VsKCk6IFByb21pc2U8dm9pZD47XG59XG4iXX0=
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { AffirmationStatus, IAffirmation } from './iAffirmation';
|
|
2
|
-
export interface GetAffirmationParameters {
|
|
3
|
-
id: string;
|
|
4
|
-
accountId?: string;
|
|
5
|
-
}
|
|
6
|
-
export interface IAffirmations {
|
|
7
|
-
list(status?: AffirmationStatus): Promise<IAffirmation[]>;
|
|
8
|
-
get(options: GetAffirmationParameters): Promise<IAffirmation>;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=iAffirmations.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iAffirmations.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/iAffirmations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEjE,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC1D,GAAG,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC/D"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaUFmZmlybWF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby90cmFkaW5nL2lBZmZpcm1hdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmZmlybWF0aW9uU3RhdHVzLCBJQWZmaXJtYXRpb24gfSBmcm9tICcuL2lBZmZpcm1hdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0QWZmaXJtYXRpb25QYXJhbWV0ZXJzIHtcbiAgaWQ6IHN0cmluZztcbiAgYWNjb3VudElkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBZmZpcm1hdGlvbnMge1xuICBsaXN0KHN0YXR1cz86IEFmZmlybWF0aW9uU3RhdHVzKTogUHJvbWlzZTxJQWZmaXJtYXRpb25bXT47XG4gIGdldChvcHRpb25zOiBHZXRBZmZpcm1hdGlvblBhcmFtZXRlcnMpOiBQcm9taXNlPElBZmZpcm1hdGlvbj47XG59XG4iXX0=
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { IAffirmation } from './iAffirmation';
|
|
2
|
-
import { Trade } from './trade';
|
|
3
|
-
export declare enum SettlementStatus {
|
|
4
|
-
CANCELED = "canceled",
|
|
5
|
-
PENDING = "pending",
|
|
6
|
-
REJECTED = "rejected",
|
|
7
|
-
SETTLED = "settled",
|
|
8
|
-
FAILED = "failed"
|
|
9
|
-
}
|
|
10
|
-
export declare enum SettlementType {
|
|
11
|
-
DIRECT = "direct",
|
|
12
|
-
AGENCY = "agency"
|
|
13
|
-
}
|
|
14
|
-
export interface ISettlement {
|
|
15
|
-
id: string;
|
|
16
|
-
requesterAccountId: string;
|
|
17
|
-
status: SettlementStatus;
|
|
18
|
-
type: SettlementType;
|
|
19
|
-
affirmations: IAffirmation[];
|
|
20
|
-
createdAt: Date;
|
|
21
|
-
expireAt: Date;
|
|
22
|
-
settledAt: Date;
|
|
23
|
-
trades: Trade[];
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=iSettlement.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iSettlement.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/iSettlement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,oBAAY,gBAAgB;IAC1B,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,gBAAgB,CAAC;IACzB,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,EAAE,IAAI,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SettlementType = exports.SettlementStatus = void 0;
|
|
4
|
-
var SettlementStatus;
|
|
5
|
-
(function (SettlementStatus) {
|
|
6
|
-
SettlementStatus["CANCELED"] = "canceled";
|
|
7
|
-
SettlementStatus["PENDING"] = "pending";
|
|
8
|
-
SettlementStatus["REJECTED"] = "rejected";
|
|
9
|
-
SettlementStatus["SETTLED"] = "settled";
|
|
10
|
-
SettlementStatus["FAILED"] = "failed";
|
|
11
|
-
})(SettlementStatus = exports.SettlementStatus || (exports.SettlementStatus = {}));
|
|
12
|
-
var SettlementType;
|
|
13
|
-
(function (SettlementType) {
|
|
14
|
-
SettlementType["DIRECT"] = "direct";
|
|
15
|
-
SettlementType["AGENCY"] = "agency";
|
|
16
|
-
})(SettlementType = exports.SettlementType || (exports.SettlementType = {}));
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaVNldHRsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy9pU2V0dGxlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSxJQUFZLGdCQU1YO0FBTkQsV0FBWSxnQkFBZ0I7SUFDMUIseUNBQXFCLENBQUE7SUFDckIsdUNBQW1CLENBQUE7SUFDbkIseUNBQXFCLENBQUE7SUFDckIsdUNBQW1CLENBQUE7SUFDbkIscUNBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQU5XLGdCQUFnQixHQUFoQix3QkFBZ0IsS0FBaEIsd0JBQWdCLFFBTTNCO0FBRUQsSUFBWSxjQUdYO0FBSEQsV0FBWSxjQUFjO0lBQ3hCLG1DQUFpQixDQUFBO0lBQ2pCLG1DQUFpQixDQUFBO0FBQ25CLENBQUMsRUFIVyxjQUFjLEdBQWQsc0JBQWMsS0FBZCxzQkFBYyxRQUd6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElBZmZpcm1hdGlvbiB9IGZyb20gJy4vaUFmZmlybWF0aW9uJztcbmltcG9ydCB7IFRyYWRlIH0gZnJvbSAnLi90cmFkZSc7XG5cbmV4cG9ydCBlbnVtIFNldHRsZW1lbnRTdGF0dXMge1xuICBDQU5DRUxFRCA9ICdjYW5jZWxlZCcsXG4gIFBFTkRJTkcgPSAncGVuZGluZycsXG4gIFJFSkVDVEVEID0gJ3JlamVjdGVkJyxcbiAgU0VUVExFRCA9ICdzZXR0bGVkJyxcbiAgRkFJTEVEID0gJ2ZhaWxlZCcsXG59XG5cbmV4cG9ydCBlbnVtIFNldHRsZW1lbnRUeXBlIHtcbiAgRElSRUNUID0gJ2RpcmVjdCcsXG4gIEFHRU5DWSA9ICdhZ2VuY3knLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTZXR0bGVtZW50IHtcbiAgaWQ6IHN0cmluZztcbiAgcmVxdWVzdGVyQWNjb3VudElkOiBzdHJpbmc7XG4gIHN0YXR1czogU2V0dGxlbWVudFN0YXR1cztcbiAgdHlwZTogU2V0dGxlbWVudFR5cGU7XG4gIGFmZmlybWF0aW9uczogSUFmZmlybWF0aW9uW107XG4gIGNyZWF0ZWRBdDogRGF0ZTtcbiAgZXhwaXJlQXQ6IERhdGU7XG4gIHNldHRsZWRBdDogRGF0ZTtcbiAgdHJhZGVzOiBUcmFkZVtdO1xufVxuIl19
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ISettlement } from './iSettlement';
|
|
2
|
-
import { Payload } from './payload';
|
|
3
|
-
import { Trade } from './trade';
|
|
4
|
-
export interface CreateSettlementParams {
|
|
5
|
-
requesterAccountId: string;
|
|
6
|
-
payload: Payload;
|
|
7
|
-
signature: string;
|
|
8
|
-
trades: Trade[];
|
|
9
|
-
}
|
|
10
|
-
export interface GetOptions {
|
|
11
|
-
id: string;
|
|
12
|
-
accountId: string;
|
|
13
|
-
}
|
|
14
|
-
export interface ISettlements {
|
|
15
|
-
list(): Promise<ISettlement[]>;
|
|
16
|
-
get(options: GetOptions): Promise<ISettlement>;
|
|
17
|
-
create(params: CreateSettlementParams): Promise<ISettlement>;
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=iSettlements.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iSettlements.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/iSettlements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,WAAW,sBAAsB;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/B,GAAG,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CAC9D"}
|