@bitgo-beta/sdk-coin-apt 1.0.1-beta.21 → 1.0.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.
Files changed (65) hide show
  1. package/CHANGELOG.md +149 -0
  2. package/dist/src/apt.d.ts +17 -4
  3. package/dist/src/apt.d.ts.map +1 -1
  4. package/dist/src/apt.js +116 -4
  5. package/dist/src/aptToken.d.ts +21 -0
  6. package/dist/src/aptToken.d.ts.map +1 -0
  7. package/dist/src/aptToken.js +56 -0
  8. package/dist/src/index.d.ts +1 -0
  9. package/dist/src/index.d.ts.map +1 -1
  10. package/dist/src/index.js +2 -1
  11. package/dist/src/lib/constants.d.ts +10 -0
  12. package/dist/src/lib/constants.d.ts.map +1 -1
  13. package/dist/src/lib/constants.js +12 -2
  14. package/dist/src/lib/iface.d.ts +14 -0
  15. package/dist/src/lib/iface.d.ts.map +1 -1
  16. package/dist/src/lib/iface.js +1 -1
  17. package/dist/src/lib/index.d.ts +8 -3
  18. package/dist/src/lib/index.d.ts.map +1 -1
  19. package/dist/src/lib/index.js +32 -12
  20. package/dist/src/lib/keyPair.js +1 -1
  21. package/dist/src/lib/transaction/digitalAssetTransfer.d.ts +9 -0
  22. package/dist/src/lib/transaction/digitalAssetTransfer.d.ts.map +1 -0
  23. package/dist/src/lib/transaction/digitalAssetTransfer.js +58 -0
  24. package/dist/src/lib/transaction/fungibleAssetTransfer.d.ts +9 -0
  25. package/dist/src/lib/transaction/fungibleAssetTransfer.d.ts.map +1 -0
  26. package/dist/src/lib/transaction/fungibleAssetTransfer.js +62 -0
  27. package/dist/src/lib/transaction/transaction.d.ts +72 -0
  28. package/dist/src/lib/transaction/transaction.d.ts.map +1 -0
  29. package/dist/src/lib/transaction/transaction.js +296 -0
  30. package/dist/src/lib/transaction/transferTransaction.d.ts +9 -0
  31. package/dist/src/lib/transaction/transferTransaction.d.ts.map +1 -0
  32. package/dist/src/lib/transaction/transferTransaction.js +57 -0
  33. package/dist/src/lib/transactionBuilder/digitalAssetTransferBuilder.d.ts +14 -0
  34. package/dist/src/lib/transactionBuilder/digitalAssetTransferBuilder.d.ts.map +1 -0
  35. package/dist/src/lib/transactionBuilder/digitalAssetTransferBuilder.js +55 -0
  36. package/dist/src/lib/transactionBuilder/fungibleAssetTransferBuilder.d.ts +14 -0
  37. package/dist/src/lib/transactionBuilder/fungibleAssetTransferBuilder.d.ts.map +1 -0
  38. package/dist/src/lib/transactionBuilder/fungibleAssetTransferBuilder.js +61 -0
  39. package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts +63 -0
  40. package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts.map +1 -0
  41. package/dist/src/lib/transactionBuilder/transactionBuilder.js +153 -0
  42. package/dist/src/lib/{transferBuilder.d.ts → transactionBuilder/transferBuilder.d.ts} +4 -0
  43. package/dist/src/lib/transactionBuilder/transferBuilder.d.ts.map +1 -0
  44. package/dist/src/lib/transactionBuilder/transferBuilder.js +55 -0
  45. package/dist/src/lib/transactionBuilderFactory.d.ts +30 -5
  46. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  47. package/dist/src/lib/transactionBuilderFactory.js +74 -5
  48. package/dist/src/lib/types.d.ts +9 -0
  49. package/dist/src/lib/types.d.ts.map +1 -0
  50. package/dist/src/lib/types.js +3 -0
  51. package/dist/src/lib/utils.d.ts +18 -1
  52. package/dist/src/lib/utils.d.ts.map +1 -1
  53. package/dist/src/lib/utils.js +58 -1
  54. package/dist/src/register.d.ts.map +1 -1
  55. package/dist/src/register.js +5 -1
  56. package/dist/src/tapt.js +1 -1
  57. package/package.json +10 -8
  58. package/dist/src/lib/transaction.d.ts +0 -8
  59. package/dist/src/lib/transaction.d.ts.map +0 -1
  60. package/dist/src/lib/transaction.js +0 -17
  61. package/dist/src/lib/transactionBuilder.d.ts +0 -45
  62. package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
  63. package/dist/src/lib/transactionBuilder.js +0 -78
  64. package/dist/src/lib/transferBuilder.d.ts.map +0 -1
  65. package/dist/src/lib/transferBuilder.js +0 -15
package/CHANGELOG.md CHANGED
@@ -3,6 +3,155 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.10.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.10.1...@bitgo/sdk-coin-apt@1.10.2) (2025-03-18)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **sdk-core:** set default multisig if empty ([e2727df](https://github.com/BitGo/BitGoJS/commit/e2727dfc89dd314a607b737e761e5eff824606af))
11
+
12
+ ## [1.10.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.10.0...@bitgo/sdk-coin-apt@1.10.1) (2025-03-06)
13
+
14
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
15
+
16
+ # [1.10.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.7.2...@bitgo/sdk-coin-apt@1.10.0) (2025-03-04)
17
+
18
+ ### Bug Fixes
19
+
20
+ - **sdk-coin-apt:** correction 64 bit LE to two buffer of 32 bits ([2165171](https://github.com/BitGo/BitGoJS/commit/21651716d9704ffc0e66072b6bafc3e7bd996aec))
21
+ - **sdk-coin-apt:** fetch correction transaction ([a8e9db2](https://github.com/BitGo/BitGoJS/commit/a8e9db23326a680b5e78162c21d508edf00d3f07))
22
+ - **statics:** mainnet apt token registration ([88c5b19](https://github.com/BitGo/BitGoJS/commit/88c5b19f5f80e2991f9e78d6821e0e5ba87b3f04))
23
+ - **statics:** modify gas tank factor ([4c00d68](https://github.com/BitGo/BitGoJS/commit/4c00d681687c8edc061a6d048cd367240425eabf))
24
+
25
+ ### Features
26
+
27
+ - **sdk-coin-apt:** recommend min gas tank balance for next 1000 txns ([74071ab](https://github.com/BitGo/BitGoJS/commit/74071aba4c0754242fc96f7334cec74edba6c73b))
28
+ - **statics:** add GasTankAccountCoin ([b031d23](https://github.com/BitGo/BitGoJS/commit/b031d234e9acc38f3244c0407715a709a8aa28ab))
29
+
30
+ # [1.9.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.7.2...@bitgo/sdk-coin-apt@1.9.0) (2025-02-26)
31
+
32
+ ### Bug Fixes
33
+
34
+ - **sdk-coin-apt:** correction 64 bit LE to two buffer of 32 bits ([2165171](https://github.com/BitGo/BitGoJS/commit/21651716d9704ffc0e66072b6bafc3e7bd996aec))
35
+ - **sdk-coin-apt:** fetch correction transaction ([a8e9db2](https://github.com/BitGo/BitGoJS/commit/a8e9db23326a680b5e78162c21d508edf00d3f07))
36
+
37
+ ### Features
38
+
39
+ - **sdk-coin-apt:** recommend min gas tank balance for next 1000 txns ([74071ab](https://github.com/BitGo/BitGoJS/commit/74071aba4c0754242fc96f7334cec74edba6c73b))
40
+ - **statics:** add GasTankAccountCoin ([b031d23](https://github.com/BitGo/BitGoJS/commit/b031d234e9acc38f3244c0407715a709a8aa28ab))
41
+
42
+ # [1.8.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.7.2...@bitgo/sdk-coin-apt@1.8.0) (2025-02-20)
43
+
44
+ ### Bug Fixes
45
+
46
+ - **sdk-coin-apt:** correction 64 bit LE to two buffer of 32 bits ([2165171](https://github.com/BitGo/BitGoJS/commit/21651716d9704ffc0e66072b6bafc3e7bd996aec))
47
+ - **sdk-coin-apt:** fetch correction transaction ([a8e9db2](https://github.com/BitGo/BitGoJS/commit/a8e9db23326a680b5e78162c21d508edf00d3f07))
48
+
49
+ ### Features
50
+
51
+ - **sdk-coin-apt:** recommend min gas tank balance for next 1000 txns ([74071ab](https://github.com/BitGo/BitGoJS/commit/74071aba4c0754242fc96f7334cec74edba6c73b))
52
+
53
+ ## [1.7.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.7.1...@bitgo/sdk-coin-apt@1.7.2) (2025-02-19)
54
+
55
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
56
+
57
+ ## [1.7.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.7.0...@bitgo/sdk-coin-apt@1.7.1) (2025-02-11)
58
+
59
+ ### Bug Fixes
60
+
61
+ - **sdk-coin-apt:** generate txn hash ([a70f5ac](https://github.com/BitGo/BitGoJS/commit/a70f5ace1726a3482b98eaa8ca9eb762599f0198))
62
+ - **sdk-coin-apt:** read 64 bit little endian amount ([977310b](https://github.com/BitGo/BitGoJS/commit/977310b060f75da245d395690ed4cfbffc1f3675))
63
+ - **sdk-coin-apt:** stip hex prefix ([2a1e789](https://github.com/BitGo/BitGoJS/commit/2a1e78919eedeef3b6ad2e905c258cd1e418ef9f))
64
+ - **sdk-coin-apt:** strip hex prefix from public key ([f2c44f7](https://github.com/BitGo/BitGoJS/commit/f2c44f73ebe5265f1a961c894b73171b3c297a70))
65
+ - **sdk-coin-apt:** use NoAccountAuthenticator for transaction simulation ([7ff087c](https://github.com/BitGo/BitGoJS/commit/7ff087ca104ac47b8e370c2114631754be47404f))
66
+
67
+ # [1.7.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.6.0...@bitgo/sdk-coin-apt@1.7.0) (2025-02-05)
68
+
69
+ ### Bug Fixes
70
+
71
+ - **sdk-coin-apt:** exporting fungible and non fungible files ([e426aeb](https://github.com/BitGo/BitGoJS/commit/e426aebbbf45f5e837e868e6eaa139505c2ab8be))
72
+
73
+ ### Features
74
+
75
+ - **sdk-coin-apt:** change fungibleAddress to assetId ([3c1bd56](https://github.com/BitGo/BitGoJS/commit/3c1bd56a05e20f1fc0bc3ad69227b021c972f919))
76
+ - **sdk-coin-apt:** changing names of classes ([937b17c](https://github.com/BitGo/BitGoJS/commit/937b17cce52fdb68670577b1b8887cee586dc4e0))
77
+ - **sdk-coin-apt:** fungible asset transfer transaction ([65cbd70](https://github.com/BitGo/BitGoJS/commit/65cbd7054728d50b1bb64f6229fd8465d8ac6b97))
78
+ - **sdk-coin-apt:** legacy coin and aptos coin transfer changes ([9db8d65](https://github.com/BitGo/BitGoJS/commit/9db8d6519f3e77525f583398853e6b90f021c4e7))
79
+ - **sdk-coin-apt:** non fungible asset transaction building ([eb84c77](https://github.com/BitGo/BitGoJS/commit/eb84c774cb3e22985a161460b39ab5e52a1af339))
80
+
81
+ # [1.6.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.5.1...@bitgo/sdk-coin-apt@1.6.0) (2025-01-28)
82
+
83
+ ### Bug Fixes
84
+
85
+ - **sdk-coin-apt:** add getter for sender pubkey ([92a23c6](https://github.com/BitGo/BitGoJS/commit/92a23c67bea9e7843f73d6375fb096c9092ed175))
86
+ - **sdk-coin-apt:** initialize fee payer address ([358822a](https://github.com/BitGo/BitGoJS/commit/358822a4bb53685755a71760ffee0bf11aa6193a))
87
+
88
+ ### Features
89
+
90
+ - **sdk-coin-apt:** add Apt Token Skeleton ([596f5e5](https://github.com/BitGo/BitGoJS/commit/596f5e506c61c7b93e8b0c24b8b29441ba3062ca))
91
+ - **sdk-coin-apt:** use transfer_coins method ([0857aea](https://github.com/BitGo/BitGoJS/commit/0857aeaab78e79e041be04081d3506ae4ead0427))
92
+ - **statics:** add apt usdt token ([37224e8](https://github.com/BitGo/BitGoJS/commit/37224e89dbfb7e0173c4d5ab30ddbc3d45ea7aba))
93
+
94
+ ## [1.5.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.5.0...@bitgo/sdk-coin-apt@1.5.1) (2025-01-23)
95
+
96
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
97
+
98
+ # [1.5.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.4.1...@bitgo/sdk-coin-apt@1.5.0) (2025-01-23)
99
+
100
+ ### Bug Fixes
101
+
102
+ - **sdk-coin-apt:** aptos-labs version to 1.33.1 ([e991d8b](https://github.com/BitGo/BitGoJS/commit/e991d8b795e8de830e796f7d41a1d09a091880ee))
103
+ - **sdk-coin-apt:** make transaction getFee() method public ([15433ba](https://github.com/BitGo/BitGoJS/commit/15433ba88da586bb7e289e11201fa27ae521f131))
104
+
105
+ ### Features
106
+
107
+ - **sdk-coin-apt:** added logic for fee payer signing ([444b849](https://github.com/BitGo/BitGoJS/commit/444b849f01f0ebf7b24eeed01816007408bef0aa))
108
+
109
+ ## [1.4.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.4.0...@bitgo/sdk-coin-apt@1.4.1) (2025-01-20)
110
+
111
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
112
+
113
+ # [1.4.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.9...@bitgo/sdk-coin-apt@1.4.0) (2025-01-15)
114
+
115
+ ### Features
116
+
117
+ - **sdk-coin-apt:** transaction builder for aptos ([660e37a](https://github.com/BitGo/BitGoJS/commit/660e37a52b71c586a5911b1f1cd07826a64224c1))
118
+
119
+ ## [1.3.9](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.8...@bitgo/sdk-coin-apt@1.3.9) (2025-01-09)
120
+
121
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
122
+
123
+ ## [1.3.8](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.7...@bitgo/sdk-coin-apt@1.3.8) (2025-01-03)
124
+
125
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
126
+
127
+ ## [1.3.7](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.6...@bitgo/sdk-coin-apt@1.3.7) (2024-12-24)
128
+
129
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
130
+
131
+ ## [1.3.6](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.5...@bitgo/sdk-coin-apt@1.3.6) (2024-12-19)
132
+
133
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
134
+
135
+ ## [1.3.5](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.3...@bitgo/sdk-coin-apt@1.3.5) (2024-12-17)
136
+
137
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
138
+
139
+ ## [1.3.4](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.3...@bitgo/sdk-coin-apt@1.3.4) (2024-12-17)
140
+
141
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
142
+
143
+ ## [1.3.3](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.2...@bitgo/sdk-coin-apt@1.3.3) (2024-12-12)
144
+
145
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
146
+
147
+ ## [1.3.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.1...@bitgo/sdk-coin-apt@1.3.2) (2024-12-11)
148
+
149
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
150
+
151
+ ## [1.3.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.3.0...@bitgo/sdk-coin-apt@1.3.1) (2024-12-03)
152
+
153
+ **Note:** Version bump only for package @bitgo/sdk-coin-apt
154
+
6
155
  # [1.3.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-apt@1.2.1...@bitgo/sdk-coin-apt@1.3.0) (2024-11-26)
7
156
 
8
157
  ### Features
package/dist/src/apt.d.ts CHANGED
@@ -1,7 +1,11 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- import { BaseCoin, BitGoBase, KeyPair, MPCAlgorithm, ParsedTransaction, ParseTransactionOptions, SignedTransaction, SignTransactionOptions, VerifyAddressOptions, VerifyTransactionOptions } from '@bitgo-beta/sdk-core';
1
+ import { BaseCoin, BitGoBase, KeyPair, MPCAlgorithm, MultisigType, ParsedTransaction, ParseTransactionOptions, SignedTransaction, SignTransactionOptions, VerifyAddressOptions, VerifyTransactionOptions } from '@bitgo-beta/sdk-core';
4
2
  import { BaseCoin as StaticsBaseCoin } from '@bitgo-beta/statics';
3
+ import { Transaction } from './lib';
4
+ import { ExplainTransactionOptions } from './lib/types';
5
+ import { AptTransactionExplanation } from './lib/iface';
6
+ export interface AptParseTransactionOptions extends ParseTransactionOptions {
7
+ txHex: string;
8
+ }
5
9
  export declare class Apt extends BaseCoin {
6
10
  protected readonly _staticsCoin: Readonly<StaticsBaseCoin>;
7
11
  protected constructor(bitgo: BitGoBase, staticsCoin?: Readonly<StaticsBaseCoin>);
@@ -15,14 +19,23 @@ export declare class Apt extends BaseCoin {
15
19
  getFullName(): string;
16
20
  /** @inheritDoc */
17
21
  supportsTss(): boolean;
22
+ /** inherited doc */
23
+ getDefaultMultisigType(): MultisigType;
18
24
  getMPCAlgorithm(): MPCAlgorithm;
19
25
  allowsAccountConsolidations(): boolean;
26
+ getTransaction(coinConfig: Readonly<StaticsBaseCoin>): Transaction;
20
27
  verifyTransaction(params: VerifyTransactionOptions): Promise<boolean>;
21
28
  isWalletAddress(params: VerifyAddressOptions): Promise<boolean>;
22
- parseTransaction(params: ParseTransactionOptions): Promise<ParsedTransaction>;
29
+ parseTransaction(params: AptParseTransactionOptions): Promise<ParsedTransaction>;
30
+ /**
31
+ * Explain a Apt transaction
32
+ * @param params
33
+ */
34
+ explainTransaction(params: ExplainTransactionOptions): Promise<AptTransactionExplanation | undefined>;
23
35
  generateKeyPair(seed?: Buffer): KeyPair;
24
36
  isValidPub(pub: string): boolean;
25
37
  isValidAddress(address: string): boolean;
26
38
  signTransaction(params: SignTransactionOptions): Promise<SignedTransaction>;
39
+ private getBuilder;
27
40
  }
28
41
  //# sourceMappingURL=apt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"apt.d.ts","sourceRoot":"","sources":["../../src/apt.ts"],"names":[],"mappings":";;AAAA,OAAO,EACL,QAAQ,EACR,SAAS,EAET,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAIlE,qBAAa,GAAI,SAAQ,QAAQ;IAC/B,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC3D,SAAS,aAAa,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC;IAU/E,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,QAAQ;IAI1F;;OAEG;IACI,aAAa,IAAI,MAAM;IAIvB,QAAQ,IAAI,MAAM;IAIlB,SAAS,IAAI,MAAM;IAInB,WAAW,IAAI,MAAM;IAI5B,kBAAkB;IAClB,WAAW,IAAI,OAAO;IAItB,eAAe,IAAI,YAAY;IAI/B,2BAA2B,IAAI,OAAO;IAIhC,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC;IAIrE,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IASrE,gBAAgB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI7E,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAYvC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC,eAAe,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAG5E"}
1
+ {"version":3,"file":"apt.d.ts","sourceRoot":"","sources":["../../src/apt.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAER,SAAS,EAET,OAAO,EACP,YAAY,EACZ,YAAY,EAEZ,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAS,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAyB,WAAW,EAAkD,MAAM,OAAO,CAAC;AAI3G,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,WAAW,0BAA2B,SAAQ,uBAAuB;IACzE,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,GAAI,SAAQ,QAAQ;IAC/B,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC3D,SAAS,aAAa,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC;IAU/E,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,QAAQ;IAI1F;;OAEG;IACI,aAAa,IAAI,MAAM;IAIvB,QAAQ,IAAI,MAAM;IAIlB,SAAS,IAAI,MAAM;IAInB,WAAW,IAAI,MAAM;IAI5B,kBAAkB;IAClB,WAAW,IAAI,OAAO;IAItB,oBAAoB;IACpB,sBAAsB,IAAI,YAAY;IAItC,eAAe,IAAI,YAAY;IAI/B,2BAA2B,IAAI,OAAO;IAItC,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,WAAW;IAI5D,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC;IAqCrE,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAS/D,gBAAgB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAqBtF;;;OAGG;IACG,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAY3G,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAYvC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC,eAAe,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI3E,OAAO,CAAC,UAAU;CAGnB"}
package/dist/src/apt.js CHANGED
@@ -1,12 +1,48 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
37
  };
5
38
  Object.defineProperty(exports, "__esModule", { value: true });
6
39
  exports.Apt = void 0;
7
40
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
41
+ const statics_1 = require("@bitgo-beta/statics");
8
42
  const lib_1 = require("./lib");
9
43
  const utils_1 = __importDefault(require("./lib/utils"));
44
+ const _ = __importStar(require("lodash"));
45
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
10
46
  class Apt extends sdk_core_1.BaseCoin {
11
47
  constructor(bitgo, staticsCoin) {
12
48
  super(bitgo);
@@ -37,14 +73,54 @@ class Apt extends sdk_core_1.BaseCoin {
37
73
  supportsTss() {
38
74
  return true;
39
75
  }
76
+ /** inherited doc */
77
+ getDefaultMultisigType() {
78
+ return sdk_core_1.multisigTypes.tss;
79
+ }
40
80
  getMPCAlgorithm() {
41
81
  return 'eddsa';
42
82
  }
43
83
  allowsAccountConsolidations() {
44
84
  return true;
45
85
  }
86
+ getTransaction(coinConfig) {
87
+ return new lib_1.TransferTransaction(coinConfig);
88
+ }
46
89
  async verifyTransaction(params) {
47
- throw new Error('Method not implemented.');
90
+ const coinConfig = statics_1.coins.get(this.getChain());
91
+ const { txPrebuild: txPrebuild, txParams: txParams } = params;
92
+ const transaction = this.getTransaction(coinConfig);
93
+ const rawTx = txPrebuild.txHex;
94
+ if (!rawTx) {
95
+ throw new Error('missing required tx prebuild property txHex');
96
+ }
97
+ transaction.fromRawTransaction(rawTx);
98
+ const explainedTx = transaction.explainTransaction();
99
+ if (txParams.recipients !== undefined) {
100
+ const filteredRecipients = txParams.recipients?.map((recipient) => {
101
+ return {
102
+ address: recipient.address,
103
+ amount: BigInt(recipient.amount),
104
+ };
105
+ });
106
+ const filteredOutputs = explainedTx.outputs.map((output) => {
107
+ return {
108
+ address: output.address,
109
+ amount: BigInt(output.amount),
110
+ };
111
+ });
112
+ if (!_.isEqual(filteredOutputs, filteredRecipients)) {
113
+ throw new Error('Tx outputs does not match with expected txParams recipients');
114
+ }
115
+ let totalAmount = new bignumber_js_1.default(0);
116
+ for (const recipients of txParams.recipients) {
117
+ totalAmount = totalAmount.plus(recipients.amount);
118
+ }
119
+ if (!totalAmount.isEqualTo(explainedTx.outputAmount)) {
120
+ throw new Error('Tx total amount does not match with expected total amount field');
121
+ }
122
+ }
123
+ return true;
48
124
  }
49
125
  async isWalletAddress(params) {
50
126
  const { address: newAddress } = params;
@@ -53,8 +129,41 @@ class Apt extends sdk_core_1.BaseCoin {
53
129
  }
54
130
  return true;
55
131
  }
56
- parseTransaction(params) {
57
- throw new Error('Method not implemented.');
132
+ async parseTransaction(params) {
133
+ const transactionExplanation = await this.explainTransaction({ txHex: params.txHex });
134
+ if (!transactionExplanation) {
135
+ throw new Error('Invalid transaction');
136
+ }
137
+ return {
138
+ inputs: [
139
+ {
140
+ address: transactionExplanation.sender,
141
+ amount: transactionExplanation.outputAmount,
142
+ },
143
+ ],
144
+ outputs: [
145
+ {
146
+ address: transactionExplanation.outputs[0].address,
147
+ amount: transactionExplanation.outputs[0].amount,
148
+ },
149
+ ],
150
+ };
151
+ }
152
+ /**
153
+ * Explain a Apt transaction
154
+ * @param params
155
+ */
156
+ async explainTransaction(params) {
157
+ const factory = this.getBuilder();
158
+ let rebuiltTransaction;
159
+ try {
160
+ const transactionBuilder = factory.from(params.txHex);
161
+ rebuiltTransaction = await transactionBuilder.build();
162
+ }
163
+ catch {
164
+ return undefined;
165
+ }
166
+ return rebuiltTransaction.explainTransaction();
58
167
  }
59
168
  generateKeyPair(seed) {
60
169
  const keyPair = seed ? new lib_1.KeyPair({ seed }) : new lib_1.KeyPair();
@@ -76,6 +185,9 @@ class Apt extends sdk_core_1.BaseCoin {
76
185
  signTransaction(params) {
77
186
  throw new Error('Method not implemented.');
78
187
  }
188
+ getBuilder() {
189
+ return new lib_1.TransactionBuilderFactory(statics_1.coins.get(this.getChain()));
190
+ }
79
191
  }
80
192
  exports.Apt = Apt;
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXB0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFZOEI7QUFFOUIsK0JBQThDO0FBQzlDLHdEQUFnQztBQUVoQyxNQUFhLEdBQUksU0FBUSxtQkFBUTtJQUUvQixZQUFzQixLQUFnQixFQUFFLFdBQXVDO1FBQzdFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUViLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1NBQ3ZFO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7SUFDbEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0IsRUFBRSxXQUF1QztRQUM3RSxPQUFPLElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxhQUFhO1FBQ2xCLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTSxTQUFTO1FBQ2QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sV0FBVztRQUNoQixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELDJCQUEyQjtRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBZ0M7UUFDdEQsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxLQUFLLENBQUMsZUFBZSxDQUFDLE1BQTRCO1FBQ2hELE1BQU0sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBRXZDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3BDLE1BQU0sSUFBSSw4QkFBbUIsQ0FBQyxvQkFBb0IsVUFBVSxFQUFFLENBQUMsQ0FBQztTQUNqRTtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQStCO1FBQzlDLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQWE7UUFDM0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLGFBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksYUFBVSxFQUFFLENBQUM7UUFDbkUsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1NBQ25EO1FBQ0QsT0FBTztZQUNMLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztTQUNkLENBQUM7SUFDSixDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQVc7UUFDcEIsT0FBTyxlQUFLLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFlO1FBQzVCLE9BQU8sZUFBSyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsZUFBZSxDQUFDLE1BQThCO1FBQzVDLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0NBQ0Y7QUF4RkQsa0JBd0ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUNvaW4sXG4gIEJpdEdvQmFzZSxcbiAgSW52YWxpZEFkZHJlc3NFcnJvcixcbiAgS2V5UGFpcixcbiAgTVBDQWxnb3JpdGhtLFxuICBQYXJzZWRUcmFuc2FjdGlvbixcbiAgUGFyc2VUcmFuc2FjdGlvbk9wdGlvbnMsXG4gIFNpZ25lZFRyYW5zYWN0aW9uLFxuICBTaWduVHJhbnNhY3Rpb25PcHRpb25zLFxuICBWZXJpZnlBZGRyZXNzT3B0aW9ucyxcbiAgVmVyaWZ5VHJhbnNhY3Rpb25PcHRpb25zLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBTdGF0aWNzQmFzZUNvaW4gfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEtleVBhaXIgYXMgQXB0S2V5UGFpciB9IGZyb20gJy4vbGliJztcbmltcG9ydCB1dGlscyBmcm9tICcuL2xpYi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBBcHQgZXh0ZW5kcyBCYXNlQ29pbiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBfc3RhdGljc0NvaW46IFJlYWRvbmx5PFN0YXRpY3NCYXNlQ29pbj47XG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBzdGF0aWNzQ29pbj86IFJlYWRvbmx5PFN0YXRpY3NCYXNlQ29pbj4pIHtcbiAgICBzdXBlcihiaXRnbyk7XG5cbiAgICBpZiAoIXN0YXRpY3NDb2luKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ21pc3NpbmcgcmVxdWlyZWQgY29uc3RydWN0b3IgcGFyYW1ldGVyIHN0YXRpY3NDb2luJyk7XG4gICAgfVxuXG4gICAgdGhpcy5fc3RhdGljc0NvaW4gPSBzdGF0aWNzQ29pbjtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShiaXRnbzogQml0R29CYXNlLCBzdGF0aWNzQ29pbj86IFJlYWRvbmx5PFN0YXRpY3NCYXNlQ29pbj4pOiBCYXNlQ29pbiB7XG4gICAgcmV0dXJuIG5ldyBBcHQoYml0Z28sIHN0YXRpY3NDb2luKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGYWN0b3IgYmV0d2VlbiB0aGUgY29pbidzIGJhc2UgdW5pdCBhbmQgaXRzIHNtYWxsZXN0IHN1YmRpdmlzb25cbiAgICovXG4gIHB1YmxpYyBnZXRCYXNlRmFjdG9yKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDFlODtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiAnYXB0JztcbiAgfVxuXG4gIHB1YmxpYyBnZXRGYW1pbHkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2FwdCc7XG4gIH1cblxuICBwdWJsaWMgZ2V0RnVsbE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ0FwdG9zJztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBzdXBwb3J0c1RzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGdldE1QQ0FsZ29yaXRobSgpOiBNUENBbGdvcml0aG0ge1xuICAgIHJldHVybiAnZWRkc2EnO1xuICB9XG5cbiAgYWxsb3dzQWNjb3VudENvbnNvbGlkYXRpb25zKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgYXN5bmMgdmVyaWZ5VHJhbnNhY3Rpb24ocGFyYW1zOiBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICBhc3luYyBpc1dhbGxldEFkZHJlc3MocGFyYW1zOiBWZXJpZnlBZGRyZXNzT3B0aW9ucyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHsgYWRkcmVzczogbmV3QWRkcmVzcyB9ID0gcGFyYW1zO1xuXG4gICAgaWYgKCF0aGlzLmlzVmFsaWRBZGRyZXNzKG5ld0FkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFkZHJlc3NFcnJvcihgaW52YWxpZCBhZGRyZXNzOiAke25ld0FkZHJlc3N9YCk7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcGFyc2VUcmFuc2FjdGlvbihwYXJhbXM6IFBhcnNlVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxQYXJzZWRUcmFuc2FjdGlvbj4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIGdlbmVyYXRlS2V5UGFpcihzZWVkPzogQnVmZmVyKTogS2V5UGFpciB7XG4gICAgY29uc3Qga2V5UGFpciA9IHNlZWQgPyBuZXcgQXB0S2V5UGFpcih7IHNlZWQgfSkgOiBuZXcgQXB0S2V5UGFpcigpO1xuICAgIGNvbnN0IGtleXMgPSBrZXlQYWlyLmdldEtleXMoKTtcbiAgICBpZiAoIWtleXMucHJ2KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgcHJ2IGluIGtleSBnZW5lcmF0aW9uLicpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgcHViOiBrZXlzLnB1YixcbiAgICAgIHBydjoga2V5cy5wcnYsXG4gICAgfTtcbiAgfVxuXG4gIGlzVmFsaWRQdWIocHViOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdXRpbHMuaXNWYWxpZFB1YmxpY0tleShwdWIpO1xuICB9XG5cbiAgaXNWYWxpZEFkZHJlc3MoYWRkcmVzczogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpO1xuICB9XG5cbiAgc2lnblRyYW5zYWN0aW9uKHBhcmFtczogU2lnblRyYW5zYWN0aW9uT3B0aW9ucyk6IFByb21pc2U8U2lnbmVkVHJhbnNhY3Rpb24+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cbn1cbiJdfQ==
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXB0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtREFlOEI7QUFDOUIsaURBQXlFO0FBQ3pFLCtCQUEyRztBQUMzRyx3REFBZ0M7QUFDaEMsMENBQTRCO0FBQzVCLGdFQUFxQztBQVFyQyxNQUFhLEdBQUksU0FBUSxtQkFBUTtJQUUvQixZQUFzQixLQUFnQixFQUFFLFdBQXVDO1FBQzdFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUViLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLG9EQUFvRCxDQUFDLENBQUM7UUFDeEUsQ0FBQztRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCLEVBQUUsV0FBdUM7UUFDN0UsT0FBTyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksYUFBYTtRQUNsQixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFTSxRQUFRO1FBQ2IsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sU0FBUztRQUNkLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsb0JBQW9CO0lBQ3BCLHNCQUFzQjtRQUNwQixPQUFPLHdCQUFhLENBQUMsR0FBRyxDQUFDO0lBQzNCLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELDJCQUEyQjtRQUN6QixPQUFPLElBQUks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QyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDcEQsQ0FBQztRQUNELE9BQU87WUFDTCxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7U0FDZCxDQUFDO0lBQ0osQ0FBQztJQUVELFVBQVUsQ0FBQyxHQUFXO1FBQ3BCLE9BQU8sZUFBSyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxjQUFjLENBQUMsT0FBZTtRQUM1QixPQUFPLGVBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUE4QjtRQUM1QyxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVPLFVBQVU7UUFDaEIsT0FBTyxJQUFJLCtCQUF5QixDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0Y7QUF2S0Qsa0JBdUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUNvaW4sXG4gIEJhc2VUcmFuc2FjdGlvbixcbiAgQml0R29CYXNlLFxuICBJbnZhbGlkQWRkcmVzc0Vycm9yLFxuICBLZXlQYWlyLFxuICBNUENBbGdvcml0aG0sXG4gIE11bHRpc2lnVHlwZSxcbiAgbXVsdGlzaWdUeXBlcyxcbiAgUGFyc2VkVHJhbnNhY3Rpb24sXG4gIFBhcnNlVHJhbnNhY3Rpb25PcHRpb25zLFxuICBTaWduZWRUcmFuc2FjdGlvbixcbiAgU2lnblRyYW5zYWN0aW9uT3B0aW9ucyxcbiAgVmVyaWZ5QWRkcmVzc09wdGlvbnMsXG4gIFZlcmlmeVRyYW5zYWN0aW9uT3B0aW9ucyxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgU3RhdGljc0Jhc2VDb2luLCBjb2lucyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgS2V5UGFpciBhcyBBcHRLZXlQYWlyLCBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSwgVHJhbnNmZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vbGliJztcbmltcG9ydCB1dGlscyBmcm9tICcuL2xpYi91dGlscyc7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQgeyBFeHBsYWluVHJhbnNhY3Rpb25PcHRpb25zIH0gZnJvbSAnLi9saWIvdHlwZXMnO1xuaW1wb3J0IHsgQXB0VHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB9IGZyb20gJy4vbGliL2lmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHRQYXJzZVRyYW5zYWN0aW9uT3B0aW9ucyBleHRlbmRzIFBhcnNlVHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgdHhIZXg6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEFwdCBleHRlbmRzIEJhc2VDb2luIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9zdGF0aWNzQ29pbjogUmVhZG9ubHk8U3RhdGljc0Jhc2VDb2luPjtcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHN0YXRpY3NDb2luPzogUmVhZG9ubHk8U3RhdGljc0Jhc2VDb2luPikge1xuICAgIHN1cGVyKGJpdGdvKTtcblxuICAgIGlmICghc3RhdGljc0NvaW4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbWlzc2luZyByZXF1aXJlZCBjb25zdHJ1Y3RvciBwYXJhbWV0ZXIgc3RhdGljc0NvaW4nKTtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGF0aWNzQ29pbiA9IHN0YXRpY3NDb2luO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UsIHN0YXRpY3NDb2luPzogUmVhZG9ubHk8U3RhdGljc0Jhc2VDb2luPik6IEJhc2VDb2luIHtcbiAgICByZXR1cm4gbmV3IEFwdChiaXRnbywgc3RhdGljc0NvaW4pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZhY3RvciBiZXR3ZWVuIHRoZSBjb2luJ3MgYmFzZSB1bml0IGFuZCBpdHMgc21hbGxlc3Qgc3ViZGl2aXNvblxuICAgKi9cbiAgcHVibGljIGdldEJhc2VGYWN0b3IoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gMWU4O1xuICB9XG5cbiAgcHVibGljIGdldENoYWluKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdhcHQnO1xuICB9XG5cbiAgcHVibGljIGdldEZhbWlseSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnYXB0JztcbiAgfVxuXG4gIHB1YmxpYyBnZXRGdWxsTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnQXB0b3MnO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIHN1cHBvcnRzVHNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqIGluaGVyaXRlZCBkb2MgKi9cbiAgZ2V0RGVmYXVsdE11bHRpc2lnVHlwZSgpOiBNdWx0aXNpZ1R5cGUge1xuICAgIHJldHVybiBtdWx0aXNpZ1R5cGVzLnRzcztcbiAgfVxuXG4gIGdldE1QQ0FsZ29yaXRobSgpOiBNUENBbGdvcml0aG0ge1xuICAgIHJldHVybiAnZWRkc2EnO1xuICB9XG5cbiAgYWxsb3dzQWNjb3VudENvbnNvbGlkYXRpb25zKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgZ2V0VHJhbnNhY3Rpb24oY29pbkNvbmZpZzogUmVhZG9ubHk8U3RhdGljc0Jhc2VDb2luPik6IFRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zZmVyVHJhbnNhY3Rpb24oY29pbkNvbmZpZyk7XG4gIH1cblxuICBhc3luYyB2ZXJpZnlUcmFuc2FjdGlvbihwYXJhbXM6IFZlcmlmeVRyYW5zYWN0aW9uT3B0aW9ucyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGNvaW5Db25maWcgPSBjb2lucy5nZXQodGhpcy5nZXRDaGFpbigpKTtcbiAgICBjb25zdCB7IHR4UHJlYnVpbGQ6IHR4UHJlYnVpbGQsIHR4UGFyYW1zOiB0eFBhcmFtcyB9ID0gcGFyYW1zO1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gdGhpcy5nZXRUcmFuc2FjdGlvbihjb2luQ29uZmlnKTtcbiAgICBjb25zdCByYXdUeCA9IHR4UHJlYnVpbGQudHhIZXg7XG4gICAgaWYgKCFyYXdUeCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdtaXNzaW5nIHJlcXVpcmVkIHR4IHByZWJ1aWxkIHByb3BlcnR5IHR4SGV4Jyk7XG4gICAgfVxuICAgIHRyYW5zYWN0aW9uLmZyb21SYXdUcmFuc2FjdGlvbihyYXdUeCk7XG4gICAgY29uc3QgZXhwbGFpbmVkVHggPSB0cmFuc2FjdGlvbi5leHBsYWluVHJhbnNhY3Rpb24oKTtcbiAgICBpZiAodHhQYXJhbXMucmVjaXBpZW50cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCBmaWx0ZXJlZFJlY2lwaWVudHMgPSB0eFBhcmFtcy5yZWNpcGllbnRzPy5tYXAoKHJlY2lwaWVudCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGFkZHJlc3M6IHJlY2lwaWVudC5hZGRyZXNzLFxuICAgICAgICAgIGFtb3VudDogQmlnSW50KHJlY2lwaWVudC5hbW91bnQpLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgICBjb25zdCBmaWx0ZXJlZE91dHB1dHMgPSBleHBsYWluZWRUeC5vdXRwdXRzLm1hcCgob3V0cHV0KSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYWRkcmVzczogb3V0cHV0LmFkZHJlc3MsXG4gICAgICAgICAgYW1vdW50OiBCaWdJbnQob3V0cHV0LmFtb3VudCksXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgICAgIGlmICghXy5pc0VxdWFsKGZpbHRlcmVkT3V0cHV0cywgZmlsdGVyZWRSZWNpcGllbnRzKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1R4IG91dHB1dHMgZG9lcyBub3QgbWF0Y2ggd2l0aCBleHBlY3RlZCB0eFBhcmFtcyByZWNpcGllbnRzJyk7XG4gICAgICB9XG4gICAgICBsZXQgdG90YWxBbW91bnQgPSBuZXcgQmlnTnVtYmVyKDApO1xuICAgICAgZm9yIChjb25zdCByZWNpcGllbnRzIG9mIHR4UGFyYW1zLnJlY2lwaWVudHMpIHtcbiAgICAgICAgdG90YWxBbW91bnQgPSB0b3RhbEFtb3VudC5wbHVzKHJlY2lwaWVudHMuYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIGlmICghdG90YWxBbW91bnQuaXNFcXVhbFRvKGV4cGxhaW5lZFR4Lm91dHB1dEFtb3VudCkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUeCB0b3RhbCBhbW91bnQgZG9lcyBub3QgbWF0Y2ggd2l0aCBleHBlY3RlZCB0b3RhbCBhbW91bnQgZmllbGQnKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBhc3luYyBpc1dhbGxldEFkZHJlc3MocGFyYW1zOiBWZXJpZnlBZGRyZXNzT3B0aW9ucyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHsgYWRkcmVzczogbmV3QWRkcmVzcyB9ID0gcGFyYW1zO1xuXG4gICAgaWYgKCF0aGlzLmlzVmFsaWRBZGRyZXNzKG5ld0FkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFkZHJlc3NFcnJvcihgaW52YWxpZCBhZGRyZXNzOiAke25ld0FkZHJlc3N9YCk7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgYXN5bmMgcGFyc2VUcmFuc2FjdGlvbihwYXJhbXM6IEFwdFBhcnNlVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxQYXJzZWRUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uRXhwbGFuYXRpb24gPSBhd2FpdCB0aGlzLmV4cGxhaW5UcmFuc2FjdGlvbih7IHR4SGV4OiBwYXJhbXMudHhIZXggfSk7XG4gICAgaWYgKCF0cmFuc2FjdGlvbkV4cGxhbmF0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0czogW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdHJhbnNhY3Rpb25FeHBsYW5hdGlvbi5zZW5kZXIsXG4gICAgICAgICAgYW1vdW50OiB0cmFuc2FjdGlvbkV4cGxhbmF0aW9uLm91dHB1dEFtb3VudCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBvdXRwdXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBhZGRyZXNzOiB0cmFuc2FjdGlvbkV4cGxhbmF0aW9uLm91dHB1dHNbMF0uYWRkcmVzcyxcbiAgICAgICAgICBhbW91bnQ6IHRyYW5zYWN0aW9uRXhwbGFuYXRpb24ub3V0cHV0c1swXS5hbW91bnQsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRXhwbGFpbiBhIEFwdCB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqL1xuICBhc3luYyBleHBsYWluVHJhbnNhY3Rpb24ocGFyYW1zOiBFeHBsYWluVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxBcHRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuZ2V0QnVpbGRlcigpO1xuICAgIGxldCByZWJ1aWx0VHJhbnNhY3Rpb246IEJhc2VUcmFuc2FjdGlvbjtcbiAgICB0cnkge1xuICAgICAgY29uc3QgdHJhbnNhY3Rpb25CdWlsZGVyID0gZmFjdG9yeS5mcm9tKHBhcmFtcy50eEhleCk7XG4gICAgICByZWJ1aWx0VHJhbnNhY3Rpb24gPSBhd2FpdCB0cmFuc2FjdGlvbkJ1aWxkZXIuYnVpbGQoKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiByZWJ1aWx0VHJhbnNhY3Rpb24uZXhwbGFpblRyYW5zYWN0aW9uKCk7XG4gIH1cblxuICBnZW5lcmF0ZUtleVBhaXIoc2VlZD86IEJ1ZmZlcik6IEtleVBhaXIge1xuICAgIGNvbnN0IGtleVBhaXIgPSBzZWVkID8gbmV3IEFwdEtleVBhaXIoeyBzZWVkIH0pIDogbmV3IEFwdEtleVBhaXIoKTtcbiAgICBjb25zdCBrZXlzID0ga2V5UGFpci5nZXRLZXlzKCk7XG4gICAgaWYgKCFrZXlzLnBydikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIHBydiBpbiBrZXkgZ2VuZXJhdGlvbi4nKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIHB1Yjoga2V5cy5wdWIsXG4gICAgICBwcnY6IGtleXMucHJ2LFxuICAgIH07XG4gIH1cblxuICBpc1ZhbGlkUHViKHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHV0aWxzLmlzVmFsaWRQdWJsaWNLZXkocHViKTtcbiAgfVxuXG4gIGlzVmFsaWRBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB1dGlscy5pc1ZhbGlkQWRkcmVzcyhhZGRyZXNzKTtcbiAgfVxuXG4gIHNpZ25UcmFuc2FjdGlvbihwYXJhbXM6IFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPFNpZ25lZFRyYW5zYWN0aW9uPiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCdWlsZGVyKCk6IFRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnkge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQodGhpcy5nZXRDaGFpbigpKSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { Apt } from './apt';
2
+ import { BitGoBase, CoinConstructor, NamedCoinConstructor } from '@bitgo-beta/sdk-core';
3
+ import { AptTokenConfig, BaseCoin as StaticsBaseCoin } from '@bitgo-beta/statics';
4
+ import { Transaction } from './lib';
5
+ export declare class AptToken extends Apt {
6
+ readonly tokenConfig: AptTokenConfig;
7
+ constructor(bitgo: BitGoBase, tokenConfig: AptTokenConfig);
8
+ static createTokenConstructor(config: AptTokenConfig): CoinConstructor;
9
+ static createTokenConstructors(): NamedCoinConstructor[];
10
+ get name(): string;
11
+ get coin(): string;
12
+ get network(): string;
13
+ get assetId(): string;
14
+ get decimalPlaces(): number;
15
+ getTransaction(coinConfig: Readonly<StaticsBaseCoin>): Transaction;
16
+ getChain(): string;
17
+ getBaseChain(): string;
18
+ getFullName(): string;
19
+ getBaseFactor(): number;
20
+ }
21
+ //# sourceMappingURL=aptToken.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aptToken.d.ts","sourceRoot":"","sources":["../../src/aptToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,QAAQ,IAAI,eAAe,EAAiB,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAAyB,WAAW,EAAE,MAAM,OAAO,CAAC;AAE3D,qBAAa,QAAS,SAAQ,GAAG;IAC/B,SAAgB,WAAW,EAAE,cAAc,CAAC;gBAEhC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc;IAMzD,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe;IAGtE,MAAM,CAAC,uBAAuB,IAAI,oBAAoB,EAAE;IASxD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,WAAW;IAIlE,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,aAAa,IAAI,MAAM;CAGxB"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AptToken = void 0;
4
+ const apt_1 = require("./apt");
5
+ const statics_1 = require("@bitgo-beta/statics");
6
+ const lib_1 = require("./lib");
7
+ class AptToken extends apt_1.Apt {
8
+ constructor(bitgo, tokenConfig) {
9
+ const staticsCoin = tokenConfig.network === 'Mainnet' ? statics_1.coins.get('apt') : statics_1.coins.get('tapt');
10
+ super(bitgo, staticsCoin);
11
+ this.tokenConfig = tokenConfig;
12
+ }
13
+ static createTokenConstructor(config) {
14
+ return (bitgo) => new AptToken(bitgo, config);
15
+ }
16
+ static createTokenConstructors() {
17
+ const tokensCtors = [];
18
+ for (const token of [...statics_1.tokens.bitcoin.apt.tokens, ...statics_1.tokens.testnet.apt.tokens]) {
19
+ const tokenConstructor = AptToken.createTokenConstructor(token);
20
+ tokensCtors.push({ name: token.type, coinConstructor: tokenConstructor });
21
+ }
22
+ return tokensCtors;
23
+ }
24
+ get name() {
25
+ return this.tokenConfig.name;
26
+ }
27
+ get coin() {
28
+ return this.tokenConfig.coin;
29
+ }
30
+ get network() {
31
+ return this.tokenConfig.network;
32
+ }
33
+ get assetId() {
34
+ return this.tokenConfig.assetId;
35
+ }
36
+ get decimalPlaces() {
37
+ return this.tokenConfig.decimalPlaces;
38
+ }
39
+ getTransaction(coinConfig) {
40
+ return new lib_1.FungibleAssetTransfer(coinConfig);
41
+ }
42
+ getChain() {
43
+ return this.tokenConfig.type;
44
+ }
45
+ getBaseChain() {
46
+ return this.coin;
47
+ }
48
+ getFullName() {
49
+ return 'Apt Token';
50
+ }
51
+ getBaseFactor() {
52
+ return Math.pow(10, this.tokenConfig.decimalPlaces);
53
+ }
54
+ }
55
+ exports.AptToken = AptToken;
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXB0VG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXB0VG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQTRCO0FBRTVCLGlEQUFpRztBQUNqRywrQkFBMkQ7QUFFM0QsTUFBYSxRQUFTLFNBQVEsU0FBRztJQUcvQixZQUFZLEtBQWdCLEVBQUUsV0FBMkI7UUFDdkQsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0YsS0FBSyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsTUFBTSxDQUFDLHNCQUFzQixDQUFDLE1BQXNCO1FBQ2xELE9BQU8sQ0FBQyxLQUFnQixFQUFFLEVBQUUsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUNELE1BQU0sQ0FBQyx1QkFBdUI7UUFDNUIsTUFBTSxXQUFXLEdBQTJCLEVBQUUsQ0FBQztRQUMvQyxLQUFLLE1BQU0sS0FBSyxJQUFJLENBQUMsR0FBRyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDakYsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEUsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDNUUsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxjQUFjLENBQUMsVUFBcUM7UUFDbEQsT0FBTyxJQUFJLDJCQUFxQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDRjtBQTVERCw0QkE0REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHQgfSBmcm9tICcuL2FwdCc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UsIENvaW5Db25zdHJ1Y3RvciwgTmFtZWRDb2luQ29uc3RydWN0b3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBBcHRUb2tlbkNvbmZpZywgQmFzZUNvaW4gYXMgU3RhdGljc0Jhc2VDb2luLCBjb2lucywgdG9rZW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBGdW5naWJsZUFzc2V0VHJhbnNmZXIsIFRyYW5zYWN0aW9uIH0gZnJvbSAnLi9saWInO1xuXG5leHBvcnQgY2xhc3MgQXB0VG9rZW4gZXh0ZW5kcyBBcHQge1xuICBwdWJsaWMgcmVhZG9ubHkgdG9rZW5Db25maWc6IEFwdFRva2VuQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHRva2VuQ29uZmlnOiBBcHRUb2tlbkNvbmZpZykge1xuICAgIGNvbnN0IHN0YXRpY3NDb2luID0gdG9rZW5Db25maWcubmV0d29yayA9PT0gJ01haW5uZXQnID8gY29pbnMuZ2V0KCdhcHQnKSA6IGNvaW5zLmdldCgndGFwdCcpO1xuICAgIHN1cGVyKGJpdGdvLCBzdGF0aWNzQ29pbik7XG4gICAgdGhpcy50b2tlbkNvbmZpZyA9IHRva2VuQ29uZmlnO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZVRva2VuQ29uc3RydWN0b3IoY29uZmlnOiBBcHRUb2tlbkNvbmZpZyk6IENvaW5Db25zdHJ1Y3RvciB7XG4gICAgcmV0dXJuIChiaXRnbzogQml0R29CYXNlKSA9PiBuZXcgQXB0VG9rZW4oYml0Z28sIGNvbmZpZyk7XG4gIH1cbiAgc3RhdGljIGNyZWF0ZVRva2VuQ29uc3RydWN0b3JzKCk6IE5hbWVkQ29pbkNvbnN0cnVjdG9yW10ge1xuICAgIGNvbnN0IHRva2Vuc0N0b3JzOiBOYW1lZENvaW5Db25zdHJ1Y3RvcltdID0gW107XG4gICAgZm9yIChjb25zdCB0b2tlbiBvZiBbLi4udG9rZW5zLmJpdGNvaW4uYXB0LnRva2VucywgLi4udG9rZW5zLnRlc3RuZXQuYXB0LnRva2Vuc10pIHtcbiAgICAgIGNvbnN0IHRva2VuQ29uc3RydWN0b3IgPSBBcHRUb2tlbi5jcmVhdGVUb2tlbkNvbnN0cnVjdG9yKHRva2VuKTtcbiAgICAgIHRva2Vuc0N0b3JzLnB1c2goeyBuYW1lOiB0b2tlbi50eXBlLCBjb2luQ29uc3RydWN0b3I6IHRva2VuQ29uc3RydWN0b3IgfSk7XG4gICAgfVxuICAgIHJldHVybiB0b2tlbnNDdG9ycztcbiAgfVxuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmFtZTtcbiAgfVxuXG4gIGdldCBjb2luKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuY29pbjtcbiAgfVxuXG4gIGdldCBuZXR3b3JrKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmV0d29yaztcbiAgfVxuXG4gIGdldCBhc3NldElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuYXNzZXRJZDtcbiAgfVxuXG4gIGdldCBkZWNpbWFsUGxhY2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuZGVjaW1hbFBsYWNlcztcbiAgfVxuXG4gIGdldFRyYW5zYWN0aW9uKGNvaW5Db25maWc6IFJlYWRvbmx5PFN0YXRpY3NCYXNlQ29pbj4pOiBUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBGdW5naWJsZUFzc2V0VHJhbnNmZXIoY29pbkNvbmZpZyk7XG4gIH1cblxuICBnZXRDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLnR5cGU7XG4gIH1cblxuICBnZXRCYXNlQ2hhaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb2luO1xuICB9XG5cbiAgZ2V0RnVsbE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ0FwdCBUb2tlbic7XG4gIH1cblxuICBnZXRCYXNlRmFjdG9yKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgucG93KDEwLCB0aGlzLnRva2VuQ29uZmlnLmRlY2ltYWxQbGFjZXMpO1xuICB9XG59XG4iXX0=
@@ -2,4 +2,5 @@ export * from './lib';
2
2
  export * from './register';
3
3
  export * from './apt';
4
4
  export * from './tapt';
5
+ export * from './aptToken';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
package/dist/src/index.js CHANGED
@@ -18,4 +18,5 @@ __exportStar(require("./lib"), exports);
18
18
  __exportStar(require("./register"), exports);
19
19
  __exportStar(require("./apt"), exports);
20
20
  __exportStar(require("./tapt"), exports);
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0Qiw2Q0FBMkI7QUFDM0Isd0NBQXNCO0FBQ3RCLHlDQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliJztcbmV4cG9ydCAqIGZyb20gJy4vcmVnaXN0ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9hcHQnO1xuZXhwb3J0ICogZnJvbSAnLi90YXB0JztcbiJdfQ==
21
+ __exportStar(require("./aptToken"), exports);
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0Qiw2Q0FBMkI7QUFDM0Isd0NBQXNCO0FBQ3RCLHlDQUF1QjtBQUN2Qiw2Q0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYic7XG5leHBvcnQgKiBmcm9tICcuL3JlZ2lzdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vYXB0JztcbmV4cG9ydCAqIGZyb20gJy4vdGFwdCc7XG5leHBvcnQgKiBmcm9tICcuL2FwdFRva2VuJztcbiJdfQ==
@@ -2,4 +2,14 @@ export declare const APT_ADDRESS_LENGTH = 64;
2
2
  export declare const APT_TRANSACTION_ID_LENGTH = 64;
3
3
  export declare const APT_BLOCK_ID_LENGTH = 64;
4
4
  export declare const APT_SIGNATURE_LENGTH = 128;
5
+ export declare const UNAVAILABLE_TEXT = "UNAVAILABLE";
6
+ export declare const DEFAULT_GAS_UNIT_PRICE = 100;
7
+ export declare const SECONDS_PER_WEEK: number;
8
+ export declare const DIGITAL_ASSET_TRANSFER_AMOUNT = "1";
9
+ export declare const FUNGIBLE_ASSET_TRANSFER_FUNCTION = "0x1::primary_fungible_store::transfer";
10
+ export declare const COIN_TRANSFER_FUNCTION = "0x1::aptos_account::transfer_coins";
11
+ export declare const DIGITAL_ASSET_TRANSFER_FUNCTION = "0x1::object::transfer";
12
+ export declare const APTOS_COIN = "0x1::aptos_coin::AptosCoin";
13
+ export declare const FUNGIBLE_ASSET_TYPE_ARGUMENT = "0x1::fungible_asset::Metadata";
14
+ export declare const DIGITAL_ASSET_TYPE_ARGUMENT = "0x4::token::Token";
5
15
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,oBAAoB,MAAM,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,gBAAgB,gBAAgB,CAAC;AAC9C,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,gBAAgB,QAAmB,CAAC;AAEjD,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD,eAAO,MAAM,gCAAgC,0CAA0C,CAAC;AACxF,eAAO,MAAM,sBAAsB,uCAAuC,CAAC;AAC3E,eAAO,MAAM,+BAA+B,0BAA0B,CAAC;AAEvE,eAAO,MAAM,UAAU,+BAA+B,CAAC;AACvD,eAAO,MAAM,4BAA4B,kCAAkC,CAAC;AAC5E,eAAO,MAAM,2BAA2B,sBAAsB,CAAC"}
@@ -1,8 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.APT_SIGNATURE_LENGTH = exports.APT_BLOCK_ID_LENGTH = exports.APT_TRANSACTION_ID_LENGTH = exports.APT_ADDRESS_LENGTH = void 0;
3
+ exports.DIGITAL_ASSET_TYPE_ARGUMENT = exports.FUNGIBLE_ASSET_TYPE_ARGUMENT = exports.APTOS_COIN = exports.DIGITAL_ASSET_TRANSFER_FUNCTION = exports.COIN_TRANSFER_FUNCTION = exports.FUNGIBLE_ASSET_TRANSFER_FUNCTION = exports.DIGITAL_ASSET_TRANSFER_AMOUNT = exports.SECONDS_PER_WEEK = exports.DEFAULT_GAS_UNIT_PRICE = exports.UNAVAILABLE_TEXT = exports.APT_SIGNATURE_LENGTH = exports.APT_BLOCK_ID_LENGTH = exports.APT_TRANSACTION_ID_LENGTH = exports.APT_ADDRESS_LENGTH = void 0;
4
4
  exports.APT_ADDRESS_LENGTH = 64;
5
5
  exports.APT_TRANSACTION_ID_LENGTH = 64;
6
6
  exports.APT_BLOCK_ID_LENGTH = 64;
7
7
  exports.APT_SIGNATURE_LENGTH = 128;
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFDeEIsUUFBQSx5QkFBeUIsR0FBRyxFQUFFLENBQUM7QUFDL0IsUUFBQSxtQkFBbUIsR0FBRyxFQUFFLENBQUM7QUFDekIsUUFBQSxvQkFBb0IsR0FBRyxHQUFHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQVBUX0FERFJFU1NfTEVOR1RIID0gNjQ7XG5leHBvcnQgY29uc3QgQVBUX1RSQU5TQUNUSU9OX0lEX0xFTkdUSCA9IDY0O1xuZXhwb3J0IGNvbnN0IEFQVF9CTE9DS19JRF9MRU5HVEggPSA2NDtcbmV4cG9ydCBjb25zdCBBUFRfU0lHTkFUVVJFX0xFTkdUSCA9IDEyODtcbiJdfQ==
8
+ exports.UNAVAILABLE_TEXT = 'UNAVAILABLE';
9
+ exports.DEFAULT_GAS_UNIT_PRICE = 100;
10
+ exports.SECONDS_PER_WEEK = 7 * 24 * 60 * 60; // Days * Hours * Minutes * Seconds
11
+ exports.DIGITAL_ASSET_TRANSFER_AMOUNT = '1';
12
+ exports.FUNGIBLE_ASSET_TRANSFER_FUNCTION = '0x1::primary_fungible_store::transfer';
13
+ exports.COIN_TRANSFER_FUNCTION = '0x1::aptos_account::transfer_coins';
14
+ exports.DIGITAL_ASSET_TRANSFER_FUNCTION = '0x1::object::transfer';
15
+ exports.APTOS_COIN = '0x1::aptos_coin::AptosCoin';
16
+ exports.FUNGIBLE_ASSET_TYPE_ARGUMENT = '0x1::fungible_asset::Metadata';
17
+ exports.DIGITAL_ASSET_TYPE_ARGUMENT = '0x4::token::Token';
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFDeEIsUUFBQSx5QkFBeUIsR0FBRyxFQUFFLENBQUM7QUFDL0IsUUFBQSxtQkFBbUIsR0FBRyxFQUFFLENBQUM7QUFDekIsUUFBQSxvQkFBb0IsR0FBRyxHQUFHLENBQUM7QUFDM0IsUUFBQSxnQkFBZ0IsR0FBRyxhQUFhLENBQUM7QUFDakMsUUFBQSxzQkFBc0IsR0FBRyxHQUFHLENBQUM7QUFDN0IsUUFBQSxnQkFBZ0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxtQ0FBbUM7QUFFeEUsUUFBQSw2QkFBNkIsR0FBRyxHQUFHLENBQUM7QUFFcEMsUUFBQSxnQ0FBZ0MsR0FBRyx1Q0FBdUMsQ0FBQztBQUMzRSxRQUFBLHNCQUFzQixHQUFHLG9DQUFvQyxDQUFDO0FBQzlELFFBQUEsK0JBQStCLEdBQUcsdUJBQXVCLENBQUM7QUFFMUQsUUFBQSxVQUFVLEdBQUcsNEJBQTRCLENBQUM7QUFDMUMsUUFBQSw0QkFBNEIsR0FBRywrQkFBK0IsQ0FBQztBQUMvRCxRQUFBLDJCQUEyQixHQUFHLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFQVF9BRERSRVNTX0xFTkdUSCA9IDY0O1xuZXhwb3J0IGNvbnN0IEFQVF9UUkFOU0FDVElPTl9JRF9MRU5HVEggPSA2NDtcbmV4cG9ydCBjb25zdCBBUFRfQkxPQ0tfSURfTEVOR1RIID0gNjQ7XG5leHBvcnQgY29uc3QgQVBUX1NJR05BVFVSRV9MRU5HVEggPSAxMjg7XG5leHBvcnQgY29uc3QgVU5BVkFJTEFCTEVfVEVYVCA9ICdVTkFWQUlMQUJMRSc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9HQVNfVU5JVF9QUklDRSA9IDEwMDtcbmV4cG9ydCBjb25zdCBTRUNPTkRTX1BFUl9XRUVLID0gNyAqIDI0ICogNjAgKiA2MDsgLy8gRGF5cyAqIEhvdXJzICogTWludXRlcyAqIFNlY29uZHNcblxuZXhwb3J0IGNvbnN0IERJR0lUQUxfQVNTRVRfVFJBTlNGRVJfQU1PVU5UID0gJzEnO1xuXG5leHBvcnQgY29uc3QgRlVOR0lCTEVfQVNTRVRfVFJBTlNGRVJfRlVOQ1RJT04gPSAnMHgxOjpwcmltYXJ5X2Z1bmdpYmxlX3N0b3JlOjp0cmFuc2Zlcic7XG5leHBvcnQgY29uc3QgQ09JTl9UUkFOU0ZFUl9GVU5DVElPTiA9ICcweDE6OmFwdG9zX2FjY291bnQ6OnRyYW5zZmVyX2NvaW5zJztcbmV4cG9ydCBjb25zdCBESUdJVEFMX0FTU0VUX1RSQU5TRkVSX0ZVTkNUSU9OID0gJzB4MTo6b2JqZWN0Ojp0cmFuc2Zlcic7XG5cbmV4cG9ydCBjb25zdCBBUFRPU19DT0lOID0gJzB4MTo6YXB0b3NfY29pbjo6QXB0b3NDb2luJztcbmV4cG9ydCBjb25zdCBGVU5HSUJMRV9BU1NFVF9UWVBFX0FSR1VNRU5UID0gJzB4MTo6ZnVuZ2libGVfYXNzZXQ6Ok1ldGFkYXRhJztcbmV4cG9ydCBjb25zdCBESUdJVEFMX0FTU0VUX1RZUEVfQVJHVU1FTlQgPSAnMHg0Ojp0b2tlbjo6VG9rZW4nO1xuIl19
@@ -1,7 +1,21 @@
1
+ import { TransactionExplanation as BaseTransactionExplanation, TransactionRecipient, TransactionType as BitGoTransactionType } from '@bitgo-beta/sdk-core';
2
+ export interface AptTransactionExplanation extends BaseTransactionExplanation {
3
+ sender?: string;
4
+ type?: BitGoTransactionType;
5
+ }
1
6
  /**
2
7
  * The transaction data returned from the toJson() function of a transaction
3
8
  */
4
9
  export interface TxData {
5
10
  id: string;
11
+ sender: string;
12
+ recipient: TransactionRecipient;
13
+ sequenceNumber: number;
14
+ maxGasAmount: number;
15
+ gasUnitPrice: number;
16
+ gasUsed: number;
17
+ expirationTime: number;
18
+ feePayer: string;
19
+ assetId: string;
6
20
  }
7
21
  //# sourceMappingURL=iface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;CACZ"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,oBAAoB,EACpB,eAAe,IAAI,oBAAoB,EACxC,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,yBAA0B,SAAQ,0BAA0B;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,oBAAoB,CAAC;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSB0cmFuc2FjdGlvbiBkYXRhIHJldHVybmVkIGZyb20gdGhlIHRvSnNvbigpIGZ1bmN0aW9uIG9mIGEgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZDogc3RyaW5nO1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgVHJhbnNhY3Rpb25UeXBlIGFzIEJpdEdvVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXB0VHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgc2VuZGVyPzogc3RyaW5nO1xuICB0eXBlPzogQml0R29UcmFuc2FjdGlvblR5cGU7XG59XG5cbi8qKlxuICogVGhlIHRyYW5zYWN0aW9uIGRhdGEgcmV0dXJuZWQgZnJvbSB0aGUgdG9Kc29uKCkgZnVuY3Rpb24gb2YgYSB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFR4RGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIHNlbmRlcjogc3RyaW5nO1xuICByZWNpcGllbnQ6IFRyYW5zYWN0aW9uUmVjaXBpZW50O1xuICBzZXF1ZW5jZU51bWJlcjogbnVtYmVyO1xuICBtYXhHYXNBbW91bnQ6IG51bWJlcjtcbiAgZ2FzVW5pdFByaWNlOiBudW1iZXI7XG4gIGdhc1VzZWQ6IG51bWJlcjtcbiAgZXhwaXJhdGlvblRpbWU6IG51bWJlcjtcbiAgZmVlUGF5ZXI6IHN0cmluZztcbiAgYXNzZXRJZDogc3RyaW5nO1xufVxuIl19
@@ -1,9 +1,14 @@
1
1
  import * as Utils from './utils';
2
2
  import * as Interface from './iface';
3
3
  export { KeyPair } from './keyPair';
4
- export { Transaction } from './transaction';
5
- export { TransactionBuilder } from './transactionBuilder';
6
- export { TransferBuilder } from './transferBuilder';
4
+ export { Transaction } from './transaction/transaction';
5
+ export { TransferTransaction } from './transaction/transferTransaction';
6
+ export { FungibleAssetTransfer } from './transaction/fungibleAssetTransfer';
7
+ export { DigitalAssetTransfer } from './transaction/digitalAssetTransfer';
8
+ export { TransactionBuilder } from './transactionBuilder/transactionBuilder';
9
+ export { TransferBuilder } from './transactionBuilder/transferBuilder';
10
+ export { FungibleAssetTransferBuilder } from './transactionBuilder/fungibleAssetTransferBuilder';
11
+ export { DigitalAssetTransferBuilder } from './transactionBuilder/digitalAssetTransferBuilder';
7
12
  export { TransactionBuilderFactory } from './transactionBuilderFactory';
8
13
  export { Interface, Utils };
9
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC"}