@bitgo-beta/sdk-coin-dot 1.0.1

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 (72) hide show
  1. package/.eslintignore +5 -0
  2. package/.mocharc.yml +8 -0
  3. package/CHANGELOG.md +24 -0
  4. package/LICENSE +191 -0
  5. package/README.md +30 -0
  6. package/dist/src/dot.d.ts +147 -0
  7. package/dist/src/dot.d.ts.map +1 -0
  8. package/dist/src/dot.js +355 -0
  9. package/dist/src/index.d.ts +4 -0
  10. package/dist/src/index.d.ts.map +1 -0
  11. package/dist/src/index.js +16 -0
  12. package/dist/src/lib/addressInitializationBuilder.d.ts +79 -0
  13. package/dist/src/lib/addressInitializationBuilder.d.ts.map +1 -0
  14. package/dist/src/lib/addressInitializationBuilder.js +182 -0
  15. package/dist/src/lib/batchTransactionBuilder.d.ts +47 -0
  16. package/dist/src/lib/batchTransactionBuilder.d.ts.map +1 -0
  17. package/dist/src/lib/batchTransactionBuilder.js +122 -0
  18. package/dist/src/lib/claimBuilder.d.ts +58 -0
  19. package/dist/src/lib/claimBuilder.d.ts.map +1 -0
  20. package/dist/src/lib/claimBuilder.js +119 -0
  21. package/dist/src/lib/errors.d.ts +8 -0
  22. package/dist/src/lib/errors.d.ts.map +1 -0
  23. package/dist/src/lib/errors.js +19 -0
  24. package/dist/src/lib/iface.d.ts +204 -0
  25. package/dist/src/lib/iface.d.ts.map +1 -0
  26. package/dist/src/lib/iface.js +40 -0
  27. package/dist/src/lib/index.d.ts +18 -0
  28. package/dist/src/lib/index.d.ts.map +1 -0
  29. package/dist/src/lib/index.js +55 -0
  30. package/dist/src/lib/keyPair.d.ts +31 -0
  31. package/dist/src/lib/keyPair.d.ts.map +1 -0
  32. package/dist/src/lib/keyPair.js +70 -0
  33. package/dist/src/lib/nativeTransferBuilder.d.ts +81 -0
  34. package/dist/src/lib/nativeTransferBuilder.d.ts.map +1 -0
  35. package/dist/src/lib/nativeTransferBuilder.js +213 -0
  36. package/dist/src/lib/singletonRegistry.d.ts +7 -0
  37. package/dist/src/lib/singletonRegistry.d.ts.map +1 -0
  38. package/dist/src/lib/singletonRegistry.js +20 -0
  39. package/dist/src/lib/stakingBuilder.d.ts +58 -0
  40. package/dist/src/lib/stakingBuilder.d.ts.map +1 -0
  41. package/dist/src/lib/stakingBuilder.js +139 -0
  42. package/dist/src/lib/transaction.d.ts +65 -0
  43. package/dist/src/lib/transaction.d.ts.map +1 -0
  44. package/dist/src/lib/transaction.js +410 -0
  45. package/dist/src/lib/transactionBuilder.d.ts +131 -0
  46. package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
  47. package/dist/src/lib/transactionBuilder.js +332 -0
  48. package/dist/src/lib/transactionBuilderFactory.d.ts +26 -0
  49. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -0
  50. package/dist/src/lib/transactionBuilderFactory.js +95 -0
  51. package/dist/src/lib/transferBuilder.d.ts +11 -0
  52. package/dist/src/lib/transferBuilder.d.ts.map +1 -0
  53. package/dist/src/lib/transferBuilder.js +11 -0
  54. package/dist/src/lib/txnSchema.d.ts +15 -0
  55. package/dist/src/lib/txnSchema.d.ts.map +1 -0
  56. package/dist/src/lib/txnSchema.js +107 -0
  57. package/dist/src/lib/unnominateBuilder.d.ts +24 -0
  58. package/dist/src/lib/unnominateBuilder.d.ts.map +1 -0
  59. package/dist/src/lib/unnominateBuilder.js +50 -0
  60. package/dist/src/lib/unstakeBuilder.d.ts +38 -0
  61. package/dist/src/lib/unstakeBuilder.d.ts.map +1 -0
  62. package/dist/src/lib/unstakeBuilder.js +89 -0
  63. package/dist/src/lib/utils.d.ts +146 -0
  64. package/dist/src/lib/utils.d.ts.map +1 -0
  65. package/dist/src/lib/utils.js +287 -0
  66. package/dist/src/lib/withdrawUnstakedBuilder.d.ts +38 -0
  67. package/dist/src/lib/withdrawUnstakedBuilder.d.ts.map +1 -0
  68. package/dist/src/lib/withdrawUnstakedBuilder.js +90 -0
  69. package/dist/src/tdot.d.ts +12 -0
  70. package/dist/src/tdot.d.ts.map +1 -0
  71. package/dist/src/tdot.js +27 -0
  72. package/package.json +65 -0
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ClaimTransactionSchema = exports.WithdrawUnstakedTransactionSchema = exports.UnstakeTransactionSchema = exports.ProxyTransactionSchema = exports.BatchTransactionSchema = exports.AnonymousAddressInitializationSchema = exports.AddressInitializationSchema = exports.StakeTransactionSchema = exports.TransferAllTransactionSchema = exports.TransferTransactionSchema = exports.SignedTransactionSchema = exports.SigningPayloadTransactionSchema = exports.BaseTransactionSchema = void 0;
7
+ const joi_1 = __importDefault(require("joi"));
8
+ const utils_1 = __importDefault(require("./utils"));
9
+ const addressSchema = joi_1.default.string().custom((addr) => utils_1.default.isValidAddress(addr));
10
+ const proxyTypes = [
11
+ 'Any',
12
+ 'NonTransfer',
13
+ 'Governance',
14
+ 'Staking',
15
+ 'UnusedSudoBalances',
16
+ 'IdentityJudgement',
17
+ 'CancelProxy',
18
+ ];
19
+ exports.BaseTransactionSchema = joi_1.default.object({
20
+ sender: addressSchema.required(),
21
+ blockNumber: joi_1.default.number().required(),
22
+ blockHash: joi_1.default.string().required(),
23
+ genesisHash: joi_1.default.string().required(),
24
+ specVersion: joi_1.default.number().required(),
25
+ specName: joi_1.default.string().valid('kusama', 'polkadot', 'westend', 'statemint', 'statemine').required(),
26
+ transactionVersion: joi_1.default.number().required(),
27
+ chainName: joi_1.default.string().required(),
28
+ eraPeriod: joi_1.default.number().required(),
29
+ nonce: joi_1.default.number().required(),
30
+ tip: joi_1.default.number().optional(),
31
+ });
32
+ exports.SigningPayloadTransactionSchema = joi_1.default.object({
33
+ eraPeriod: joi_1.default.number().optional(),
34
+ blockHash: joi_1.default.string().required(),
35
+ nonce: joi_1.default.number().required(),
36
+ tip: joi_1.default.number().optional(),
37
+ });
38
+ exports.SignedTransactionSchema = joi_1.default.object({
39
+ sender: addressSchema.required(),
40
+ nonce: joi_1.default.number().required(),
41
+ eraPeriod: joi_1.default.number().optional(),
42
+ tip: joi_1.default.number().optional(),
43
+ });
44
+ exports.TransferTransactionSchema = joi_1.default.object({
45
+ amount: joi_1.default.string().required(),
46
+ to: addressSchema.required(),
47
+ });
48
+ exports.TransferAllTransactionSchema = joi_1.default.object({
49
+ to: addressSchema.required(),
50
+ });
51
+ exports.StakeTransactionSchema = joi_1.default.object({
52
+ value: joi_1.default.string().required(),
53
+ controller: addressSchema.required(),
54
+ payee: [
55
+ joi_1.default.string(),
56
+ joi_1.default.object({
57
+ account: joi_1.default.string().optional(),
58
+ controller: joi_1.default.equal(null).optional(),
59
+ staked: joi_1.default.equal(null).optional(),
60
+ stash: joi_1.default.equal(null).optional(),
61
+ }),
62
+ joi_1.default.object({
63
+ Account: joi_1.default.string().required(),
64
+ }),
65
+ ],
66
+ });
67
+ exports.AddressInitializationSchema = joi_1.default.object({
68
+ proxyType: joi_1.default
69
+ .string()
70
+ .valid(...proxyTypes)
71
+ .required(),
72
+ delegate: addressSchema.required(),
73
+ delay: joi_1.default.string().required(),
74
+ });
75
+ exports.AnonymousAddressInitializationSchema = joi_1.default.object({
76
+ proxyType: joi_1.default
77
+ .string()
78
+ .valid(...proxyTypes)
79
+ .required(),
80
+ index: joi_1.default.number().required(),
81
+ delay: joi_1.default.number().required(),
82
+ });
83
+ exports.BatchTransactionSchema = joi_1.default.object({
84
+ calls: joi_1.default
85
+ .alternatives()
86
+ .try(joi_1.default.array().items(joi_1.default.string()), joi_1.default.array().items(joi_1.default.object({ callIndex: joi_1.default.string(), args: joi_1.default.object() }))),
87
+ });
88
+ exports.ProxyTransactionSchema = joi_1.default.object({
89
+ real: addressSchema.required(),
90
+ forceProxyType: joi_1.default
91
+ .string()
92
+ .valid(...proxyTypes)
93
+ .required(),
94
+ amount: joi_1.default.string().required(),
95
+ to: addressSchema.required(),
96
+ });
97
+ exports.UnstakeTransactionSchema = joi_1.default.object({
98
+ value: joi_1.default.string().required(),
99
+ });
100
+ exports.WithdrawUnstakedTransactionSchema = joi_1.default.object({
101
+ value: joi_1.default.number().required(),
102
+ });
103
+ exports.ClaimTransactionSchema = joi_1.default.object({
104
+ claimEra: joi_1.default.string().required(),
105
+ validatorStash: addressSchema.required(),
106
+ });
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhuU2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90eG5TY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOENBQXNCO0FBQ3RCLG9EQUE0QjtBQUU1QixNQUFNLGFBQWEsR0FBRyxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxlQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFFaEYsTUFBTSxVQUFVLEdBQUc7SUFDakIsS0FBSztJQUNMLGFBQWE7SUFDYixZQUFZO0lBQ1osU0FBUztJQUNULG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsYUFBYTtDQUNkLENBQUM7QUFFVyxRQUFBLHFCQUFxQixHQUFHLGFBQUcsQ0FBQyxNQUFNLENBQUM7SUFDOUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUU7SUFDaEMsV0FBVyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsU0FBUyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbEMsV0FBVyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsV0FBVyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsUUFBUSxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUNsRyxrQkFBa0IsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzNDLFNBQVMsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2xDLFNBQVMsRUFBRSxhQUFH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Q0FBQyxDQUFDO0FBRVUsUUFBQSxzQkFBc0IsR0FBRyxhQUFHLENBQUMsTUFBTSxDQUFDO0lBQy9DLFFBQVEsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2pDLGNBQWMsRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFO0NBQ3pDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBqb2kgZnJvbSAnam9pJztcbmltcG9ydCBVdGlscyBmcm9tICcuL3V0aWxzJztcblxuY29uc3QgYWRkcmVzc1NjaGVtYSA9IGpvaS5zdHJpbmcoKS5jdXN0b20oKGFkZHIpID0+IFV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHIpKTtcblxuY29uc3QgcHJveHlUeXBlcyA9IFtcbiAgJ0FueScsXG4gICdOb25UcmFuc2ZlcicsXG4gICdHb3Zlcm5hbmNlJyxcbiAgJ1N0YWtpbmcnLFxuICAnVW51c2VkU3Vkb0JhbGFuY2VzJyxcbiAgJ0lkZW50aXR5SnVkZ2VtZW50JyxcbiAgJ0NhbmNlbFByb3h5Jyxcbl07XG5cbmV4cG9ydCBjb25zdCBCYXNlVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgc2VuZGVyOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG4gIGJsb2NrTnVtYmVyOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgYmxvY2tIYXNoOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgZ2VuZXNpc0hhc2g6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBzcGVjVmVyc2lvbjogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG4gIHNwZWNOYW1lOiBqb2kuc3RyaW5nKCkudmFsaWQoJ2t1c2FtYScsICdwb2xrYWRvdCcsICd3ZXN0ZW5kJywgJ3N0YXRlbWludCcsICdzdGF0ZW1pbmUnKS5yZXF1aXJlZCgpLFxuICB0cmFuc2FjdGlvblZlcnNpb246IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICBjaGFpbk5hbWU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBlcmFQZXJpb2Q6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICBub25jZTogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG4gIHRpcDogam9pLm51bWJlcigpLm9wdGlvbmFsKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IFNpZ25pbmdQYXlsb2FkVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgZXJhUGVyaW9kOiBqb2kubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgYmxvY2tIYXNoOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgbm9uY2U6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICB0aXA6IGpvaS5udW1iZXIoKS5vcHRpb25hbCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTaWduZWRUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBzZW5kZXI6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgbm9uY2U6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICBlcmFQZXJpb2Q6IGpvaS5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB0aXA6IGpvaS5udW1iZXIoKS5vcHRpb25hbCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBUcmFuc2ZlclRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIGFtb3VudDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIHRvOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IFRyYW5zZmVyQWxsVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgdG86IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgU3Rha2VUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICB2YWx1ZTogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIGNvbnRyb2xsZXI6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgcGF5ZWU6IFtcbiAgICBqb2kuc3RyaW5nKCksXG4gICAgam9pLm9iamVjdCh7XG4gICAgICBhY2NvdW50OiBqb2kuc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICAgIGNvbnRyb2xsZXI6IGpvaS5lcXVhbChudWxsKS5vcHRpb25hbCgpLFxuICAgICAgc3Rha2VkOiBqb2kuZXF1YWwobnVsbCkub3B0aW9uYWwoKSxcbiAgICAgIHN0YXNoOiBqb2kuZXF1YWwobnVsbCkub3B0aW9uYWwoKSxcbiAgICB9KSxcbiAgICBqb2kub2JqZWN0KHtcbiAgICAgIEFjY291bnQ6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICAgIH0pLFxuICBdLFxufSk7XG5cbmV4cG9ydCBjb25zdCBBZGRyZXNzSW5pdGlhbGl6YXRpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgcHJveHlUeXBlOiBqb2lcbiAgICAuc3RyaW5nKClcbiAgICAudmFsaWQoLi4ucHJveHlUeXBlcylcbiAgICAucmVxdWlyZWQoKSxcbiAgZGVsZWdhdGU6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgZGVsYXk6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBBbm9ueW1vdXNBZGRyZXNzSW5pdGlhbGl6YXRpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgcHJveHlUeXBlOiBqb2lcbiAgICAuc3RyaW5nKClcbiAgICAudmFsaWQoLi4ucHJveHlUeXBlcylcbiAgICAucmVxdWlyZWQoKSxcbiAgaW5kZXg6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICBkZWxheTogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IEJhdGNoVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgY2FsbHM6IGpvaVxuICAgIC5hbHRlcm5hdGl2ZXMoKVxuICAgIC50cnkoXG4gICAgICBqb2kuYXJyYXkoKS5pdGVtcyhqb2kuc3RyaW5nKCkpLFxuICAgICAgam9pLmFycmF5KCkuaXRlbXMoam9pLm9iamVjdCh7IGNhbGxJbmRleDogam9pLnN0cmluZygpLCBhcmdzOiBqb2kub2JqZWN0KCkgfSkpXG4gICAgKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUHJveHlUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICByZWFsOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG4gIGZvcmNlUHJveHlUeXBlOiBqb2lcbiAgICAuc3RyaW5nKClcbiAgICAudmFsaWQoLi4ucHJveHlUeXBlcylcbiAgICAucmVxdWlyZWQoKSxcbiAgYW1vdW50OiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgdG86IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgVW5zdGFrZVRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHZhbHVlOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgV2l0aGRyYXdVbnN0YWtlZFRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHZhbHVlOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgQ2xhaW1UcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBjbGFpbUVyYTogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIHZhbGlkYXRvclN0YXNoOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG59KTtcbiJdfQ==
@@ -0,0 +1,24 @@
1
+ import { TransactionType } from '@bitgo-beta/sdk-core';
2
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
+ import { DecodedSignedTx, DecodedSigningPayload, UnsignedTransaction } from '@substrate/txwrapper-core';
4
+ import { Transaction } from './transaction';
5
+ import { TransactionBuilder } from './transactionBuilder';
6
+ export declare class UnnominateBuilder extends TransactionBuilder {
7
+ constructor(_coinConfig: Readonly<CoinConfig>);
8
+ /**
9
+ *
10
+ * Declare no desire to either validate or nominate.
11
+ * Note that no arguments are needed.
12
+ *
13
+ * @returns {UnsignedTransaction} an unsigned Dot transaction
14
+ *
15
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#chill
16
+ */
17
+ protected buildTransaction(): UnsignedTransaction;
18
+ protected get transactionType(): TransactionType;
19
+ /** @inheritdoc */
20
+ validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx): void;
21
+ /** @inheritdoc */
22
+ protected fromImplementation(rawTransaction: string): Transaction;
23
+ }
24
+ //# sourceMappingURL=unnominateBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unnominateBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/unnominateBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGxG,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,qBAAa,iBAAkB,SAAQ,kBAAkB;gBAC3C,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;;;OAQG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAMjD,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,eAAe,GAAG,IAAI;IASrF,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;CAOlE"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UnnominateBuilder = void 0;
4
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
+ const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
6
+ const iface_1 = require("./iface");
7
+ const transactionBuilder_1 = require("./transactionBuilder");
8
+ class UnnominateBuilder extends transactionBuilder_1.TransactionBuilder {
9
+ constructor(_coinConfig) {
10
+ super(_coinConfig);
11
+ }
12
+ /**
13
+ *
14
+ * Declare no desire to either validate or nominate.
15
+ * Note that no arguments are needed.
16
+ *
17
+ * @returns {UnsignedTransaction} an unsigned Dot transaction
18
+ *
19
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#chill
20
+ */
21
+ buildTransaction() {
22
+ const baseTxInfo = this.createBaseTxInfo();
23
+ const tx = txwrapper_polkadot_1.methods.staking.chill({}, baseTxInfo.baseTxInfo, baseTxInfo.options);
24
+ return tx;
25
+ }
26
+ get transactionType() {
27
+ return sdk_core_1.TransactionType.StakingUnvote;
28
+ }
29
+ /** @inheritdoc */
30
+ validateDecodedTransaction(decodedTxn) {
31
+ var _a;
32
+ if (((_a = decodedTxn.method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.Chill) {
33
+ const txMethod = decodedTxn.method.args;
34
+ if (Object.keys(txMethod).length !== 0) {
35
+ throw new sdk_core_1.InvalidTransactionError(`Unnominate Transaction validation failed: Should have no args.`);
36
+ }
37
+ }
38
+ }
39
+ /** @inheritdoc */
40
+ fromImplementation(rawTransaction) {
41
+ var _a, _b;
42
+ const tx = super.fromImplementation(rawTransaction);
43
+ if (((_a = this._method) === null || _a === void 0 ? void 0 : _a.name) !== iface_1.MethodNames.Chill) {
44
+ throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${(_b = this._method) === null || _b === void 0 ? void 0 : _b.name}. Expected chill`);
45
+ }
46
+ return tx;
47
+ }
48
+ }
49
+ exports.UnnominateBuilder = UnnominateBuilder;
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5ub21pbmF0ZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Vubm9taW5hdGVCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFnRjtBQUdoRixzRUFBd0Q7QUFDeEQsbUNBQXNDO0FBRXRDLDZEQUEwRDtBQUUxRCxNQUFhLGlCQUFrQixTQUFRLHVDQUFrQjtJQUN2RCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDTyxnQkFBZ0I7UUFDeEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDM0MsTUFBTSxFQUFFLEdBQUcsNEJBQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoRixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDBCQUEwQixDQUFDLFVBQW1EOztRQUM1RSxJQUFJLENBQUEsTUFBQSxVQUFVLENBQUMsTUFBTSwwQ0FBRSxJQUFJLE1BQUssbUJBQVcsQ0FBQyxLQUFLLEVBQUU7WUFDakQsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDeEMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7Z0JBQ3RDLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxnRUFBZ0UsQ0FBQyxDQUFDO2FBQ3JHO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1Isa0JBQWtCLENBQUMsY0FBc0I7O1FBQ2pELE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUEsTUFBQSxJQUFJLENBQUMsT0FBTywwQ0FBRSxJQUFJLE1BQUssbUJBQVcsQ0FBQyxLQUFLLEVBQUU7WUFDNUMsTUFBTSxJQUFJLGtDQUF1QixDQUFDLDZCQUE2QixNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLElBQUksa0JBQWtCLENBQUMsQ0FBQztTQUN0RztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztDQUNGO0FBMUNELDhDQTBDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludmFsaWRUcmFuc2FjdGlvbkVycm9yLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBEZWNvZGVkU2lnbmVkVHgsIERlY29kZWRTaWduaW5nUGF5bG9hZCwgVW5zaWduZWRUcmFuc2FjdGlvbiB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUnO1xuaW1wb3J0IHsgbWV0aG9kcyB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLXBvbGthZG90JztcbmltcG9ydCB7IE1ldGhvZE5hbWVzIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuXG5leHBvcnQgY2xhc3MgVW5ub21pbmF0ZUJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogRGVjbGFyZSBubyBkZXNpcmUgdG8gZWl0aGVyIHZhbGlkYXRlIG9yIG5vbWluYXRlLlxuICAgKiBOb3RlIHRoYXQgbm8gYXJndW1lbnRzIGFyZSBuZWVkZWQuXG4gICAqXG4gICAqIEByZXR1cm5zIHtVbnNpZ25lZFRyYW5zYWN0aW9ufSBhbiB1bnNpZ25lZCBEb3QgdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHNlZSBodHRwczovL3BvbGthZG90LmpzLm9yZy9kb2NzL3N1YnN0cmF0ZS9leHRyaW5zaWNzLyNjaGlsbFxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkVHJhbnNhY3Rpb24oKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgYmFzZVR4SW5mbyA9IHRoaXMuY3JlYXRlQmFzZVR4SW5mbygpO1xuICAgIGNvbnN0IHR4ID0gbWV0aG9kcy5zdGFraW5nLmNoaWxsKHt9LCBiYXNlVHhJbmZvLmJhc2VUeEluZm8sIGJhc2VUeEluZm8ub3B0aW9ucyk7XG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdVbnZvdGU7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVEZWNvZGVkVHJhbnNhY3Rpb24oZGVjb2RlZFR4bjogRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4KTogdm9pZCB7XG4gICAgaWYgKGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5DaGlsbCkge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSBkZWNvZGVkVHhuLm1ldGhvZC5hcmdzO1xuICAgICAgaWYgKE9iamVjdC5rZXlzKHR4TWV0aG9kKS5sZW5ndGggIT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBVbm5vbWluYXRlIFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiBTaG91bGQgaGF2ZSBubyBhcmdzLmApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHggPSBzdXBlci5mcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIGlmICh0aGlzLl9tZXRob2Q/Lm5hbWUgIT09IE1ldGhvZE5hbWVzLkNoaWxsKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgVHJhbnNhY3Rpb24gVHlwZTogJHt0aGlzLl9tZXRob2Q/Lm5hbWV9LiBFeHBlY3RlZCBjaGlsbGApO1xuICAgIH1cbiAgICByZXR1cm4gdHg7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,38 @@
1
+ import { TransactionType } from '@bitgo-beta/sdk-core';
2
+ import { DecodedSignedTx, DecodedSigningPayload, UnsignedTransaction } from '@substrate/txwrapper-core';
3
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
4
+ import { Transaction } from './transaction';
5
+ import { TransactionBuilder } from './transactionBuilder';
6
+ export declare class UnstakeBuilder extends TransactionBuilder {
7
+ protected _amount: string;
8
+ constructor(_coinConfig: Readonly<CoinConfig>);
9
+ /**
10
+ *
11
+ * Take the origin account as a stash and lock up value of its balance.
12
+ * Controller will be the account that controls it.
13
+ *
14
+ * @returns {UnsignedTransaction} an unsigned Dot transaction
15
+ *
16
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#staking
17
+ */
18
+ protected buildTransaction(): UnsignedTransaction;
19
+ protected get transactionType(): TransactionType;
20
+ /**
21
+ *
22
+ * The amount to unstake.
23
+ *
24
+ * @param {string} amount
25
+ * @returns {StakeBuilder} This stake builder.
26
+ *
27
+ * @see https://wiki.polkadot.network/docs/learn-nominator#required-minimum-stake
28
+ */
29
+ amount(amount: string): this;
30
+ /** @inheritdoc */
31
+ validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx): void;
32
+ /** @inheritdoc */
33
+ protected fromImplementation(rawTransaction: string): Transaction;
34
+ /** @inheritdoc */
35
+ validateTransaction(_: Transaction): void;
36
+ private validateFields;
37
+ }
38
+ //# sourceMappingURL=unstakeBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unstakeBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/unstakeBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACxG,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAI7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,qBAAa,cAAe,SAAQ,kBAAkB;IACpD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;;;;OAQG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAWjD,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5B,kBAAkB;IAClB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,eAAe,GAAG,IAAI;IAWrF,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAWjE,kBAAkB;IAClB,mBAAmB,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI;IAKzC,OAAO,CAAC,cAAc;CAWvB"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.UnstakeBuilder = void 0;
7
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
9
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
10
+ const iface_1 = require("./iface");
11
+ const transactionBuilder_1 = require("./transactionBuilder");
12
+ const txnSchema_1 = require("./txnSchema");
13
+ class UnstakeBuilder extends transactionBuilder_1.TransactionBuilder {
14
+ constructor(_coinConfig) {
15
+ super(_coinConfig);
16
+ }
17
+ /**
18
+ *
19
+ * Take the origin account as a stash and lock up value of its balance.
20
+ * Controller will be the account that controls it.
21
+ *
22
+ * @returns {UnsignedTransaction} an unsigned Dot transaction
23
+ *
24
+ * @see https://polkadot.js.org/docs/substrate/extrinsics/#staking
25
+ */
26
+ buildTransaction() {
27
+ const baseTxInfo = this.createBaseTxInfo();
28
+ return txwrapper_polkadot_1.methods.staking.unbond({
29
+ value: this._amount,
30
+ }, baseTxInfo.baseTxInfo, baseTxInfo.options);
31
+ }
32
+ get transactionType() {
33
+ return sdk_core_1.TransactionType.StakingUnlock;
34
+ }
35
+ /**
36
+ *
37
+ * The amount to unstake.
38
+ *
39
+ * @param {string} amount
40
+ * @returns {StakeBuilder} This stake builder.
41
+ *
42
+ * @see https://wiki.polkadot.network/docs/learn-nominator#required-minimum-stake
43
+ */
44
+ amount(amount) {
45
+ this.validateValue(new bignumber_js_1.default(amount));
46
+ this._amount = amount;
47
+ return this;
48
+ }
49
+ /** @inheritdoc */
50
+ validateDecodedTransaction(decodedTxn) {
51
+ var _a;
52
+ if (((_a = decodedTxn.method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.Unbond) {
53
+ const txMethod = decodedTxn.method.args;
54
+ const value = txMethod.value;
55
+ const validationResult = txnSchema_1.UnstakeTransactionSchema.validate({ value });
56
+ if (validationResult.error) {
57
+ throw new sdk_core_1.InvalidTransactionError(`Unstake Transaction validation failed: ${validationResult.error.message}`);
58
+ }
59
+ }
60
+ }
61
+ /** @inheritdoc */
62
+ fromImplementation(rawTransaction) {
63
+ var _a, _b;
64
+ const tx = super.fromImplementation(rawTransaction);
65
+ if (((_a = this._method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.Unbond) {
66
+ const txMethod = this._method.args;
67
+ this.amount(txMethod.value);
68
+ }
69
+ else {
70
+ throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${(_b = this._method) === null || _b === void 0 ? void 0 : _b.name}. Expected unbond`);
71
+ }
72
+ return tx;
73
+ }
74
+ /** @inheritdoc */
75
+ validateTransaction(_) {
76
+ super.validateTransaction(_);
77
+ this.validateFields(this._amount);
78
+ }
79
+ validateFields(value) {
80
+ const validationResult = txnSchema_1.UnstakeTransactionSchema.validate({
81
+ value,
82
+ });
83
+ if (validationResult.error) {
84
+ throw new sdk_core_1.InvalidTransactionError(`Unstake Builder Transaction validation failed: ${validationResult.error.message}`);
85
+ }
86
+ }
87
+ }
88
+ exports.UnstakeBuilder = UnstakeBuilder;
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5zdGFrZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Vuc3Rha2VCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG1EQUFnRjtBQUdoRixzRUFBd0Q7QUFDeEQsZ0VBQXFDO0FBQ3JDLG1DQUFtRDtBQUVuRCw2REFBMEQ7QUFDMUQsMkNBQXVEO0FBRXZELE1BQWEsY0FBZSxTQUFRLHVDQUFrQjtJQUdwRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDTyxnQkFBZ0I7UUFDeEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDM0MsT0FBTyw0QkFBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQzNCO1lBQ0UsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3BCLEVBQ0QsVUFBVSxDQUFDLFVBQVUsRUFDckIsVUFBVSxDQUFDLE9BQU8sQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxNQUFNLENBQUMsTUFBYztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksc0JBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGtCQUFrQjtJQUNsQiwwQkFBMEIsQ0FBQyxVQUFtRDs7UUFDNUUsSUFBSSxDQUFBLE1BQUEsVUFBVSxDQUFDLE1BQU0sMENBQUUsSUFBSSxNQUFLLG1CQUFXLENBQUMsTUFBTSxFQUFFO1lBQ2xELE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBOEIsQ0FBQztZQUNsRSxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQzdCLE1BQU0sZ0JBQWdCLEdBQUcsb0NBQXdCLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN0RSxJQUFJLGdCQUFnQixDQUFDLEtBQUssRUFBRTtnQkFDMUIsTUFBTSxJQUFJLGtDQUF1QixDQUFDLDBDQUEwQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQzthQUMvRztTQUNGO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQXNCOztRQUNqRCxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFBLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsSUFBSSxNQUFLLG1CQUFXLENBQUMsTUFBTSxFQUFFO1lBQzdDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBbUIsQ0FBQztZQUNsRCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjthQUFNO1lBQ0wsTUFBTSxJQUFJLGtDQUF1QixDQUFDLDZCQUE2QixNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLElBQUksbUJBQW1CLENBQUMsQ0FBQztTQUN2RztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELGtCQUFrQjtJQUNsQixtQkFBbUIsQ0FBQyxDQUFjO1FBQ2hDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sY0FBYyxDQUFDLEtBQWE7UUFDbEMsTUFBTSxnQkFBZ0IsR0FBRyxvQ0FBd0IsQ0FBQyxRQUFRLENBQUM7WUFDekQsS0FBSztTQUNOLENBQUMsQ0FBQztRQUVILElBQUksZ0JBQWdCLENBQUMsS0FBSyxFQUFFO1lBQzFCLE1BQU0sSUFBSSxrQ0FBdUIsQ0FDL0Isa0RBQWtELGdCQUFnQixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FDbkYsQ0FBQztTQUNIO0lBQ0gsQ0FBQztDQUNGO0FBdkZELHdDQXVGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludmFsaWRUcmFuc2FjdGlvbkVycm9yLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBEZWNvZGVkU2lnbmVkVHgsIERlY29kZWRTaWduaW5nUGF5bG9hZCwgVW5zaWduZWRUcmFuc2FjdGlvbiB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgbWV0aG9kcyB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLXBvbGthZG90JztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IE1ldGhvZE5hbWVzLCBVbnN0YWtlQXJncyB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFVuc3Rha2VUcmFuc2FjdGlvblNjaGVtYSB9IGZyb20gJy4vdHhuU2NoZW1hJztcblxuZXhwb3J0IGNsYXNzIFVuc3Rha2VCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJvdGVjdGVkIF9hbW91bnQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogVGFrZSB0aGUgb3JpZ2luIGFjY291bnQgYXMgYSBzdGFzaCBhbmQgbG9jayB1cCB2YWx1ZSBvZiBpdHMgYmFsYW5jZS5cbiAgICogQ29udHJvbGxlciB3aWxsIGJlIHRoZSBhY2NvdW50IHRoYXQgY29udHJvbHMgaXQuXG4gICAqXG4gICAqIEByZXR1cm5zIHtVbnNpZ25lZFRyYW5zYWN0aW9ufSBhbiB1bnNpZ25lZCBEb3QgdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHNlZSBodHRwczovL3BvbGthZG90LmpzLm9yZy9kb2NzL3N1YnN0cmF0ZS9leHRyaW5zaWNzLyNzdGFraW5nXG4gICAqL1xuICBwcm90ZWN0ZWQgYnVpbGRUcmFuc2FjdGlvbigpOiBVbnNpZ25lZFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgcmV0dXJuIG1ldGhvZHMuc3Rha2luZy51bmJvbmQoXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiB0aGlzLl9hbW91bnQsXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nVW5sb2NrO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIFRoZSBhbW91bnQgdG8gdW5zdGFrZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFtb3VudFxuICAgKiBAcmV0dXJucyB7U3Rha2VCdWlsZGVyfSBUaGlzIHN0YWtlIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly93aWtpLnBvbGthZG90Lm5ldHdvcmsvZG9jcy9sZWFybi1ub21pbmF0b3IjcmVxdWlyZWQtbWluaW11bS1zdGFrZVxuICAgKi9cbiAgYW1vdW50KGFtb3VudDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIoYW1vdW50KSk7XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlRGVjb2RlZFRyYW5zYWN0aW9uKGRlY29kZWRUeG46IERlY29kZWRTaWduaW5nUGF5bG9hZCB8IERlY29kZWRTaWduZWRUeCk6IHZvaWQge1xuICAgIGlmIChkZWNvZGVkVHhuLm1ldGhvZD8ubmFtZSA9PT0gTWV0aG9kTmFtZXMuVW5ib25kKSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IGRlY29kZWRUeG4ubWV0aG9kLmFyZ3MgYXMgdW5rbm93biBhcyBVbnN0YWtlQXJncztcbiAgICAgIGNvbnN0IHZhbHVlID0gdHhNZXRob2QudmFsdWU7XG4gICAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gVW5zdGFrZVRyYW5zYWN0aW9uU2NoZW1hLnZhbGlkYXRlKHsgdmFsdWUgfSk7XG4gICAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYFVuc3Rha2UgVHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBmYWlsZWQ6ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHggPSBzdXBlci5mcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIGlmICh0aGlzLl9tZXRob2Q/Lm5hbWUgPT09IE1ldGhvZE5hbWVzLlVuYm9uZCkge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSB0aGlzLl9tZXRob2QuYXJncyBhcyBVbnN0YWtlQXJncztcbiAgICAgIHRoaXMuYW1vdW50KHR4TWV0aG9kLnZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIFRyYW5zYWN0aW9uIFR5cGU6ICR7dGhpcy5fbWV0aG9kPy5uYW1lfS4gRXhwZWN0ZWQgdW5ib25kYCk7XG4gICAgfVxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKF86IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIudmFsaWRhdGVUcmFuc2FjdGlvbihfKTtcbiAgICB0aGlzLnZhbGlkYXRlRmllbGRzKHRoaXMuX2Ftb3VudCk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlRmllbGRzKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gVW5zdGFrZVRyYW5zYWN0aW9uU2NoZW1hLnZhbGlkYXRlKHtcbiAgICAgIHZhbHVlLFxuICAgIH0pO1xuXG4gICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYFVuc3Rha2UgQnVpbGRlciBUcmFuc2FjdGlvbiB2YWxpZGF0aW9uIGZhaWxlZDogJHt2YWxpZGF0aW9uUmVzdWx0LmVycm9yLm1lc3NhZ2V9YFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,146 @@
1
+ import { DotAssetTypes, BaseUtils, DotAddressFormat, Seed } from '@bitgo-beta/sdk-core';
2
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
+ import { KeyringPair } from '@polkadot/keyring/types';
4
+ import { UnsignedTransaction } from '@substrate/txwrapper-core';
5
+ import { DecodedSignedTx, DecodedSigningPayload, TypeRegistry } from '@substrate/txwrapper-core/lib/types';
6
+ import { HexString, Material, ProxyArgs, TransferAllArgs, TransferArgs, TxMethod } from './iface';
7
+ import { KeyPair } from '.';
8
+ export declare class Utils implements BaseUtils {
9
+ /** @inheritdoc */
10
+ isValidAddress(address: string): boolean;
11
+ /** @inheritdoc */
12
+ isValidBlockId(hash: string): boolean;
13
+ /** @inheritdoc */
14
+ isValidPrivateKey(key: string): boolean;
15
+ /** @inheritdoc */
16
+ isValidPublicKey(key: string): boolean;
17
+ /** @inheritdoc */
18
+ isValidSignature(signature: string): boolean;
19
+ /**
20
+ * Verifies the signature on a given message
21
+ *
22
+ * @param {string} signedMessage the signed message for the signature
23
+ * @param {string} signature the signature to verify
24
+ * @param {string} address the address of the signer
25
+ * @returns {boolean} whether the signature is valid or not
26
+ */
27
+ verifySignature(signedMessage: string, signature: string, address: string): boolean;
28
+ /** @inheritdoc */
29
+ isValidTransactionId(txId: string): boolean;
30
+ /**
31
+ * decodeSeed decodes a dot seed
32
+ *
33
+ * @param {string} seed - the seed to be validated.
34
+ * @returns {Seed} - the object Seed
35
+ */
36
+ decodeSeed(seed: string): Seed;
37
+ /**
38
+ * Helper function to capitalize the first letter of a string
39
+ *
40
+ * @param {string} val
41
+ * @returns {string}
42
+ */
43
+ capitalizeFirstLetter(val: string): string;
44
+ /**
45
+ * Helper function to decode the internal method hex in case of a proxy transaction
46
+ *
47
+ * @param {string | UnsignedTransaction} tx
48
+ * @param { metadataRpc: string; registry: TypeRegistry } options
49
+ * @returns {TransferArgs}
50
+ */
51
+ decodeCallMethod(tx: string | UnsignedTransaction, options: {
52
+ metadataRpc: string;
53
+ registry: TypeRegistry;
54
+ }): TransferArgs;
55
+ /**
56
+ * keyPairFromSeed generates an object with secretKey and publicKey using the polkadot sdk
57
+ * @param seed 32 bytes long seed
58
+ * @returns KeyPair
59
+ */
60
+ keyPairFromSeed(seed: Uint8Array): KeyPair;
61
+ /**
62
+ * Signing function. Implement this on the OFFLINE signing device.
63
+ *
64
+ * @param {KeyringPair} pair - The signing pair.
65
+ * @param {string} signingPayload - Payload to sign.
66
+ * @param {UnsignedTransaction} transaction - raw transaction to sign
67
+ * @param {Object} options
68
+ * @param {HexString} options.metadataRpc - metadata that is needed for dot to sign
69
+ * @param {TypeRegistry} options.registry - metadata that is needed for dot to sign
70
+ */
71
+ createSignedTx(pair: KeyringPair, signingPayload: string, transaction: UnsignedTransaction, options: {
72
+ metadataRpc: HexString;
73
+ registry: TypeRegistry;
74
+ }): string;
75
+ /**
76
+ * Serializes the signed transaction
77
+ *
78
+ * @param transaction Transaction to serialize
79
+ * @param signature Signature of the message
80
+ * @param metadataRpc Network metadata
81
+ * @param registry Transaction registry
82
+ * @returns string Serialized transaction
83
+ */
84
+ serializeSignedTransaction(transaction: any, signature: any, metadataRpc: `0x${string}`, registry: any): string;
85
+ /**
86
+ * Decodes the dot address from the given format
87
+ *
88
+ * @param {string} address
89
+ * @param {number} [ss58Format]
90
+ * @returns {string}
91
+ */
92
+ decodeDotAddress(address: string, ss58Format: number): string;
93
+ /**
94
+ * Decodes the dot address from the given format
95
+ *
96
+ * @param {string} address
97
+ * @param {number} [ss58Format]
98
+ * @returns {string}
99
+ */
100
+ encodeDotAddress(address: string, ss58Format?: number): string;
101
+ /**
102
+ * Retrieves the txHash of a signed txHex
103
+ *
104
+ * @param txHex signed transaction hex
105
+ * @returns {string}
106
+ */
107
+ getTxHash(txHex: string): string;
108
+ getMaterial(coinConfig: Readonly<CoinConfig>): Material;
109
+ isSigningPayload(payload: DecodedSigningPayload | DecodedSignedTx): payload is DecodedSigningPayload;
110
+ isProxyTransfer(arg: TxMethod['args']): arg is ProxyArgs;
111
+ isTransfer(arg: TxMethod['args']): arg is TransferArgs;
112
+ isTransferAll(arg: TxMethod['args']): arg is TransferAllArgs;
113
+ /**
114
+ * extracts and returns the signature in hex format given a raw signed transaction
115
+ *
116
+ * @param {string} rawTx signed raw transaction
117
+ * @param options registry dot registry used to retrieve the signature
118
+ */
119
+ recoverSignatureFromRawTx(rawTx: string, options: {
120
+ registry: TypeRegistry;
121
+ }): string;
122
+ /**
123
+ * Decodes the dot address from the given format
124
+ *
125
+ * @param {string} address
126
+ * @param {number} [ss58Format]
127
+ * @returns {KeyPair}
128
+ */
129
+ decodeDotAddressToKeyPair(address: string, ss58Format?: number): KeyPair;
130
+ /**
131
+ * Checks whether the given input is a hex string with with 0 value
132
+ * used to check whether a given transaction is immortal or mortal
133
+ * @param hexValue
134
+ */
135
+ isZeroHex(hexValue: string): boolean;
136
+ /**
137
+ * Takes an asset name and returns the respective address to format to
138
+ * since polkadot addresses differ depending on the network
139
+ * ref: https://wiki.polkadot.network/docs/learn-accounts
140
+ * @param networkCoinName
141
+ */
142
+ getAddressFormat(networkCoinName: DotAssetTypes): DotAddressFormat;
143
+ }
144
+ declare const utils: Utils;
145
+ export default utils;
146
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"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"}