@bitgo-beta/sdk-coin-algo 0.0.0-semantic-release-managed

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 (67) hide show
  1. package/.eslintignore +5 -0
  2. package/.mocharc.yml +8 -0
  3. package/CHANGELOG.md +854 -0
  4. package/LICENSE +191 -0
  5. package/README.md +30 -0
  6. package/dist/src/algo.d.ts +291 -0
  7. package/dist/src/algo.d.ts.map +1 -0
  8. package/dist/src/algo.js +637 -0
  9. package/dist/src/algoToken.d.ts +32 -0
  10. package/dist/src/algoToken.d.ts.map +1 -0
  11. package/dist/src/algoToken.js +82 -0
  12. package/dist/src/builder.d.ts +3 -0
  13. package/dist/src/builder.d.ts.map +1 -0
  14. package/dist/src/builder.js +10 -0
  15. package/dist/src/index.d.ts +6 -0
  16. package/dist/src/index.d.ts.map +1 -0
  17. package/dist/src/index.js +45 -0
  18. package/dist/src/lib/assetTransferBuilder.d.ts +42 -0
  19. package/dist/src/lib/assetTransferBuilder.d.ts.map +1 -0
  20. package/dist/src/lib/assetTransferBuilder.js +105 -0
  21. package/dist/src/lib/errors.d.ts +11 -0
  22. package/dist/src/lib/errors.d.ts.map +1 -0
  23. package/dist/src/lib/errors.js +27 -0
  24. package/dist/src/lib/ifaces.d.ts +45 -0
  25. package/dist/src/lib/ifaces.d.ts.map +1 -0
  26. package/dist/src/lib/ifaces.js +3 -0
  27. package/dist/src/lib/index.d.ts +13 -0
  28. package/dist/src/lib/index.d.ts.map +1 -0
  29. package/dist/src/lib/index.js +61 -0
  30. package/dist/src/lib/keyPair.d.ts +25 -0
  31. package/dist/src/lib/keyPair.d.ts.map +1 -0
  32. package/dist/src/lib/keyPair.js +91 -0
  33. package/dist/src/lib/keyRegistrationBuilder.d.ts +104 -0
  34. package/dist/src/lib/keyRegistrationBuilder.d.ts.map +1 -0
  35. package/dist/src/lib/keyRegistrationBuilder.js +240 -0
  36. package/dist/src/lib/seedEncoding.d.ts +25 -0
  37. package/dist/src/lib/seedEncoding.d.ts.map +1 -0
  38. package/dist/src/lib/seedEncoding.js +111 -0
  39. package/dist/src/lib/transaction.d.ts +75 -0
  40. package/dist/src/lib/transaction.d.ts.map +1 -0
  41. package/dist/src/lib/transaction.js +250 -0
  42. package/dist/src/lib/transactionBuilder.d.ts +210 -0
  43. package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
  44. package/dist/src/lib/transactionBuilder.js +389 -0
  45. package/dist/src/lib/transactionBuilderFactory.d.ts +16 -0
  46. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -0
  47. package/dist/src/lib/transactionBuilderFactory.js +52 -0
  48. package/dist/src/lib/transferBuilder.d.ts +40 -0
  49. package/dist/src/lib/transferBuilder.d.ts.map +1 -0
  50. package/dist/src/lib/transferBuilder.js +89 -0
  51. package/dist/src/lib/txnSchema.d.ts +7 -0
  52. package/dist/src/lib/txnSchema.d.ts.map +1 -0
  53. package/dist/src/lib/txnSchema.js +68 -0
  54. package/dist/src/lib/utils.d.ts +254 -0
  55. package/dist/src/lib/utils.d.ts.map +1 -0
  56. package/dist/src/lib/utils.js +563 -0
  57. package/dist/src/register.d.ts +3 -0
  58. package/dist/src/register.d.ts.map +1 -0
  59. package/dist/src/register.js +15 -0
  60. package/dist/src/seedValidator.d.ts +31 -0
  61. package/dist/src/seedValidator.d.ts.map +1 -0
  62. package/dist/src/seedValidator.js +103 -0
  63. package/dist/src/talgo.d.ts +12 -0
  64. package/dist/src/talgo.d.ts.map +1 -0
  65. package/dist/src/talgo.js +20 -0
  66. package/package.json +63 -0
  67. package/types/index.d.ts +60 -0
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { Algo } from './algo';
5
+ import { BitGoBase, CoinConstructor, NamedCoinConstructor } from '@bitgo-beta/sdk-core';
6
+ import { AlgoTokenConfig } from '@bitgo-beta/statics';
7
+ export declare class AlgoToken extends Algo {
8
+ static readonly tokenNamePattern: RegExp;
9
+ static readonly tokenPattern: RegExp;
10
+ readonly tokenConfig: AlgoTokenConfig;
11
+ private readonly _code;
12
+ constructor(bitgo: BitGoBase, tokenConfig: AlgoTokenConfig);
13
+ static createTokenConstructor(config: AlgoTokenConfig): CoinConstructor;
14
+ static createTokenConstructors(tokenConfigs?: AlgoTokenConfig[]): NamedCoinConstructor[];
15
+ get type(): string;
16
+ get name(): string;
17
+ get coin(): string;
18
+ get network(): string;
19
+ get code(): string;
20
+ get issuer(): string | undefined;
21
+ get decimalPlaces(): number;
22
+ getChain(): string;
23
+ getBaseChain(): string;
24
+ getFullName(): string;
25
+ getBaseFactor(): number;
26
+ /**
27
+ * Flag for sending value of 0
28
+ * @returns {boolean} True if okay to send 0 value, false otherwise
29
+ */
30
+ valuelessTransferAllowed(): boolean;
31
+ }
32
+ //# sourceMappingURL=algoToken.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"algoToken.d.ts","sourceRoot":"","sources":["../../src/algoToken.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAgB,eAAe,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAAE,eAAe,EAAuB,MAAM,qBAAqB,CAAC;AAE3E,qBAAa,SAAU,SAAQ,IAAI;IACjC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,SAAqC;IACrE,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAW;IAC/C,SAAgB,WAAW,EAAE,eAAe,CAAC;IAC7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEnB,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe;IAkB1D,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe;IAIvE,MAAM,CAAC,uBAAuB,CAAC,YAAY,GAAE,eAAe,EAAwB,GAAG,oBAAoB,EAAE;IAW7G,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,aAAa,IAAI,MAAM;IAIvB;;;OAGG;IACH,wBAAwB,IAAI,OAAO;CAGpC"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AlgoToken = void 0;
4
+ /**
5
+ * @prettier
6
+ */
7
+ const algo_1 = require("./algo");
8
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
9
+ const statics_1 = require("@bitgo-beta/statics");
10
+ class AlgoToken extends algo_1.Algo {
11
+ constructor(bitgo, tokenConfig) {
12
+ super(bitgo);
13
+ this.tokenConfig = tokenConfig;
14
+ const match = this.tokenConfig.type.match(AlgoToken.tokenNamePattern) || [];
15
+ const tokenCoin = match[1];
16
+ this._code = match[2];
17
+ const token = match[3];
18
+ if (tokenCoin !== tokenConfig.coin) {
19
+ throw new sdk_core_1.BitGoJsError(`invalid coin found in token: ${this.tokenConfig.type}`);
20
+ }
21
+ if (!token) {
22
+ throw new sdk_core_1.BitGoJsError(`invalid token: ${this.tokenConfig.type}`);
23
+ }
24
+ }
25
+ static createTokenConstructor(config) {
26
+ return (bitgo) => new AlgoToken(bitgo, config);
27
+ }
28
+ static createTokenConstructors(tokenConfigs = statics_1.formattedAlgoTokens) {
29
+ const tokensCtors = [];
30
+ tokenConfigs.forEach((config) => {
31
+ tokensCtors.push({ name: config.type, coinConstructor: AlgoToken.createTokenConstructor(config) });
32
+ if (config.alias) {
33
+ tokensCtors.push({ name: config.alias, coinConstructor: AlgoToken.createTokenConstructor(config) });
34
+ }
35
+ });
36
+ return tokensCtors;
37
+ }
38
+ get type() {
39
+ return this.tokenConfig.type;
40
+ }
41
+ get name() {
42
+ return this.tokenConfig.name;
43
+ }
44
+ get coin() {
45
+ return this.tokenConfig.coin;
46
+ }
47
+ get network() {
48
+ return this.tokenConfig.network;
49
+ }
50
+ get code() {
51
+ return this._code;
52
+ }
53
+ get issuer() {
54
+ return undefined; // Not defined for Algorand
55
+ }
56
+ get decimalPlaces() {
57
+ return this.tokenConfig.decimalPlaces;
58
+ }
59
+ getChain() {
60
+ return this.tokenConfig.type;
61
+ }
62
+ getBaseChain() {
63
+ return this.coin;
64
+ }
65
+ getFullName() {
66
+ return 'Algo Token';
67
+ }
68
+ getBaseFactor() {
69
+ return Math.pow(10, this.tokenConfig.decimalPlaces);
70
+ }
71
+ /**
72
+ * Flag for sending value of 0
73
+ * @returns {boolean} True if okay to send 0 value, false otherwise
74
+ */
75
+ valuelessTransferAllowed() {
76
+ return true;
77
+ }
78
+ }
79
+ exports.AlgoToken = AlgoToken;
80
+ AlgoToken.tokenNamePattern = /^([^:]+):(?:([^.]+)-)?([0-9]+)$/;
81
+ AlgoToken.tokenPattern = /[0-9]/;
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxnb1Rva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FsZ29Ub2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILGlDQUE4QjtBQUM5QixtREFBc0c7QUFDdEcsaURBQTJFO0FBRTNFLE1BQWEsU0FBVSxTQUFRLFdBQUk7SUFNakMsWUFBWSxLQUFnQixFQUFFLFdBQTRCO1FBQ3hELEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNiLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBRS9CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFNUUsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2QixJQUFJLFNBQVMsS0FBSyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbkMsTUFBTSxJQUFJLHVCQUFZLENBQUMsZ0NBQWdDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNsRixDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLHVCQUFZLENBQUMsa0JBQWtCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRSxDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxNQUF1QjtRQUNuRCxPQUFPLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxNQUFNLENBQUMsdUJBQXVCLENBQUMsZUFBa0MsNkJBQW1CO1FBQ2xGLE1BQU0sV0FBVyxHQUEyQixFQUFFLENBQUM7UUFDL0MsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzlCLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsU0FBUyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakIsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxTQUFTLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3RHLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sU0FBUyxDQUFDLENBQUMsMkJBQTJCO0lBQy9DLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7O09BR0c7SUFDSCx3QkFBd0I7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOztBQXpGSCw4QkEwRkM7QUF6RmlCLDBCQUFnQixHQUFHLGlDQUFpQyxDQUFDO0FBQ3JELHNCQUFZLEdBQVcsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgQWxnbyB9IGZyb20gJy4vYWxnbyc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UsIEJpdEdvSnNFcnJvciwgQ29pbkNvbnN0cnVjdG9yLCBOYW1lZENvaW5Db25zdHJ1Y3RvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEFsZ29Ub2tlbkNvbmZpZywgZm9ybWF0dGVkQWxnb1Rva2VucyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuXG5leHBvcnQgY2xhc3MgQWxnb1Rva2VuIGV4dGVuZHMgQWxnbyB7XG4gIHN0YXRpYyByZWFkb25seSB0b2tlbk5hbWVQYXR0ZXJuID0gL14oW146XSspOig/OihbXi5dKyktKT8oWzAtOV0rKSQvO1xuICBzdGF0aWMgcmVhZG9ubHkgdG9rZW5QYXR0ZXJuOiBSZWdFeHAgPSAvWzAtOV0vO1xuICBwdWJsaWMgcmVhZG9ubHkgdG9rZW5Db25maWc6IEFsZ29Ub2tlbkNvbmZpZztcbiAgcHJpdmF0ZSByZWFkb25seSBfY29kZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHRva2VuQ29uZmlnOiBBbGdvVG9rZW5Db25maWcpIHtcbiAgICBzdXBlcihiaXRnbyk7XG4gICAgdGhpcy50b2tlbkNvbmZpZyA9IHRva2VuQ29uZmlnO1xuXG4gICAgY29uc3QgbWF0Y2ggPSB0aGlzLnRva2VuQ29uZmlnLnR5cGUubWF0Y2goQWxnb1Rva2VuLnRva2VuTmFtZVBhdHRlcm4pIHx8IFtdO1xuXG4gICAgY29uc3QgdG9rZW5Db2luID0gbWF0Y2hbMV07XG4gICAgdGhpcy5fY29kZSA9IG1hdGNoWzJdO1xuICAgIGNvbnN0IHRva2VuID0gbWF0Y2hbM107XG5cbiAgICBpZiAodG9rZW5Db2luICE9PSB0b2tlbkNvbmZpZy5jb2luKSB7XG4gICAgICB0aHJvdyBuZXcgQml0R29Kc0Vycm9yKGBpbnZhbGlkIGNvaW4gZm91bmQgaW4gdG9rZW46ICR7dGhpcy50b2tlbkNvbmZpZy50eXBlfWApO1xuICAgIH1cbiAgICBpZiAoIXRva2VuKSB7XG4gICAgICB0aHJvdyBuZXcgQml0R29Kc0Vycm9yKGBpbnZhbGlkIHRva2VuOiAke3RoaXMudG9rZW5Db25maWcudHlwZX1gKTtcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWc6IEFsZ29Ub2tlbkNvbmZpZyk6IENvaW5Db25zdHJ1Y3RvciB7XG4gICAgcmV0dXJuIChiaXRnbzogQml0R29CYXNlKSA9PiBuZXcgQWxnb1Rva2VuKGJpdGdvLCBjb25maWcpO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZVRva2VuQ29uc3RydWN0b3JzKHRva2VuQ29uZmlnczogQWxnb1Rva2VuQ29uZmlnW10gPSBmb3JtYXR0ZWRBbGdvVG9rZW5zKTogTmFtZWRDb2luQ29uc3RydWN0b3JbXSB7XG4gICAgY29uc3QgdG9rZW5zQ3RvcnM6IE5hbWVkQ29pbkNvbnN0cnVjdG9yW10gPSBbXTtcbiAgICB0b2tlbkNvbmZpZ3MuZm9yRWFjaCgoY29uZmlnKSA9PiB7XG4gICAgICB0b2tlbnNDdG9ycy5wdXNoKHsgbmFtZTogY29uZmlnLnR5cGUsIGNvaW5Db25zdHJ1Y3RvcjogQWxnb1Rva2VuLmNyZWF0ZVRva2VuQ29uc3RydWN0b3IoY29uZmlnKSB9KTtcbiAgICAgIGlmIChjb25maWcuYWxpYXMpIHtcbiAgICAgICAgdG9rZW5zQ3RvcnMucHVzaCh7IG5hbWU6IGNvbmZpZy5hbGlhcywgY29pbkNvbnN0cnVjdG9yOiBBbGdvVG9rZW4uY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWcpIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiB0b2tlbnNDdG9ycztcbiAgfVxuXG4gIGdldCB0eXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcudHlwZTtcbiAgfVxuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmFtZTtcbiAgfVxuXG4gIGdldCBjb2luKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuY29pbjtcbiAgfVxuXG4gIGdldCBuZXR3b3JrKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmV0d29yaztcbiAgfVxuXG4gIGdldCBjb2RlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2NvZGU7XG4gIH1cblxuICBnZXQgaXNzdWVyKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDsgLy8gTm90IGRlZmluZWQgZm9yIEFsZ29yYW5kXG4gIH1cblxuICBnZXQgZGVjaW1hbFBsYWNlcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmRlY2ltYWxQbGFjZXM7XG4gIH1cblxuICBnZXRDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLnR5cGU7XG4gIH1cblxuICBnZXRCYXNlQ2hhaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb2luO1xuICB9XG5cbiAgZ2V0RnVsbE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ0FsZ28gVG9rZW4nO1xuICB9XG5cbiAgZ2V0QmFzZUZhY3RvcigpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLnBvdygxMCwgdGhpcy50b2tlbkNvbmZpZy5kZWNpbWFsUGxhY2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGbGFnIGZvciBzZW5kaW5nIHZhbHVlIG9mIDBcbiAgICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgb2theSB0byBzZW5kIDAgdmFsdWUsIGZhbHNlIG90aGVyd2lzZVxuICAgKi9cbiAgdmFsdWVsZXNzVHJhbnNmZXJBbGxvd2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ import { TransactionBuilderFactory } from './lib';
2
+ export declare const getBuilder: (coinName: string) => TransactionBuilderFactory;
3
+ //# sourceMappingURL=builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/builder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,OAAO,CAAC;AAElD,eAAO,MAAM,UAAU,aAAc,MAAM,KAAG,yBAE7C,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBuilder = void 0;
4
+ const statics_1 = require("@bitgo-beta/statics");
5
+ const lib_1 = require("./lib");
6
+ const getBuilder = (coinName) => {
7
+ return new lib_1.TransactionBuilderFactory(statics_1.coins.get(coinName));
8
+ };
9
+ exports.getBuilder = getBuilder;
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGlEQUE0QztBQUM1QywrQkFBa0Q7QUFFM0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxRQUFnQixFQUE2QixFQUFFO0lBQ3hFLE9BQU8sSUFBSSwrQkFBeUIsQ0FBQyxlQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7QUFDNUQsQ0FBQyxDQUFDO0FBRlcsUUFBQSxVQUFVLGNBRXJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29pbnMgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL2xpYic7XG5cbmV4cG9ydCBjb25zdCBnZXRCdWlsZGVyID0gKGNvaW5OYW1lOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5ID0+IHtcbiAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5KGNvaW5zLmdldChjb2luTmFtZSkpO1xufTtcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export * from './algo';
2
+ export * from './talgo';
3
+ export * as AlgoLib from './lib';
4
+ export * from './algoToken';
5
+ export * from './register';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,OAAO,KAAK,OAAO,MAAM,OAAO,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,45 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
19
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
+ };
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.AlgoLib = void 0;
40
+ __exportStar(require("./algo"), exports);
41
+ __exportStar(require("./talgo"), exports);
42
+ exports.AlgoLib = __importStar(require("./lib"));
43
+ __exportStar(require("./algoToken"), exports);
44
+ __exportStar(require("./register"), exports);
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEseUNBQXVCO0FBQ3ZCLDBDQUF3QjtBQUN4QixpREFBaUM7QUFDakMsOENBQTRCO0FBQzVCLDZDQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWxnbyc7XG5leHBvcnQgKiBmcm9tICcuL3RhbGdvJztcbmV4cG9ydCAqIGFzIEFsZ29MaWIgZnJvbSAnLi9saWInO1xuZXhwb3J0ICogZnJvbSAnLi9hbGdvVG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG4iXX0=
@@ -0,0 +1,42 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
+ import algosdk from 'algosdk';
3
+ import { BaseAddress, TransactionType } from '@bitgo-beta/sdk-core';
4
+ import { TransferBuilder } from './transferBuilder';
5
+ import { Transaction } from './transaction';
6
+ export declare class AssetTransferBuilder extends TransferBuilder {
7
+ private _tokenId;
8
+ constructor(coinConfig: Readonly<CoinConfig>);
9
+ /**
10
+ * Sets the token id.
11
+
12
+ * The token id uniquely identifies the asset.
13
+ *
14
+ * @param {number} id The token id.
15
+ * @returns {AssetTransferBuilder} This transaction builder.
16
+ *
17
+ * @see https://developer.algorand.org/docs/reference/transactions/#asset-transfer-transaction
18
+ */
19
+ tokenId(id: number): this;
20
+ /**
21
+ * Sets the parameters of the transaction builder to allowlist an asset.
22
+ *
23
+ * To allow list an asset, you send 0 units of the asset to yourself.
24
+ *
25
+ * This method sets the tokenId, sender, receiver, asset amount, and
26
+ * fee parameters to their respective values to allowlist and asset.
27
+ *
28
+ * @param {number} tokenId The unique identifier of the asset.
29
+ * @param {BaseAddress} userAddress The address of the user.
30
+ * @returns {AssetTransferBuilder} This transaction builder.
31
+ */
32
+ allowListAsset(tokenId: number, userAddress: BaseAddress): this;
33
+ protected buildAlgoTxn(): algosdk.Transaction;
34
+ protected get transactionType(): TransactionType;
35
+ /** @inheritdoc */
36
+ protected fromImplementation(rawTransaction: Uint8Array | string): Transaction;
37
+ validateRawTransaction(rawTransaction: Uint8Array | string): void;
38
+ /** @inheritdoc */
39
+ validateTransaction(txn: Transaction): void;
40
+ protected validateFields(tokenId: number, assetAmount: number | bigint, receiver: string): void;
41
+ }
42
+ //# sourceMappingURL=assetTransferBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assetTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/assetTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,WAAW,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,qBAAa,oBAAqB,SAAQ,eAAe;IACvD,OAAO,CAAC,QAAQ,CAAS;gBAEb,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI5C;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IASzB;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAW/D,SAAS,CAAC,YAAY,IAAI,OAAO,CAAC,WAAW;IAc7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,UAAU,GAAG,MAAM,GAAG,WAAW;IAc9E,sBAAsB,CAAC,cAAc,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IAWjE,kBAAkB;IAClB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAK3C,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;CAmBhG"}
@@ -0,0 +1,105 @@
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.AssetTransferBuilder = void 0;
7
+ const algosdk_1 = __importDefault(require("algosdk"));
8
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
9
+ const transferBuilder_1 = require("./transferBuilder");
10
+ const txnSchema_1 = require("./txnSchema");
11
+ const utils_1 = __importDefault(require("./utils"));
12
+ class AssetTransferBuilder extends transferBuilder_1.TransferBuilder {
13
+ constructor(coinConfig) {
14
+ super(coinConfig);
15
+ }
16
+ /**
17
+ * Sets the token id.
18
+
19
+ * The token id uniquely identifies the asset.
20
+ *
21
+ * @param {number} id The token id.
22
+ * @returns {AssetTransferBuilder} This transaction builder.
23
+ *
24
+ * @see https://developer.algorand.org/docs/reference/transactions/#asset-transfer-transaction
25
+ */
26
+ tokenId(id) {
27
+ if (id <= 0) {
28
+ throw new Error('Asset index must be a uint64 value');
29
+ }
30
+ this._tokenId = id;
31
+ return this;
32
+ }
33
+ /**
34
+ * Sets the parameters of the transaction builder to allowlist an asset.
35
+ *
36
+ * To allow list an asset, you send 0 units of the asset to yourself.
37
+ *
38
+ * This method sets the tokenId, sender, receiver, asset amount, and
39
+ * fee parameters to their respective values to allowlist and asset.
40
+ *
41
+ * @param {number} tokenId The unique identifier of the asset.
42
+ * @param {BaseAddress} userAddress The address of the user.
43
+ * @returns {AssetTransferBuilder} This transaction builder.
44
+ */
45
+ allowListAsset(tokenId, userAddress) {
46
+ this.tokenId(tokenId);
47
+ this.sender(userAddress);
48
+ this.to(userAddress);
49
+ this.isFlatFee(true);
50
+ this.fee({ fee: '1000' });
51
+ this.amount(0);
52
+ return this;
53
+ }
54
+ buildAlgoTxn() {
55
+ return algosdk_1.default.makeAssetTransferTxnWithSuggestedParams(this._sender, this._to, this._closeRemainderTo, undefined, this._amount, this._note, this._tokenId, this.suggestedParams, this._reKeyTo);
56
+ }
57
+ get transactionType() {
58
+ return sdk_core_1.TransactionType.Send;
59
+ }
60
+ /** @inheritdoc */
61
+ fromImplementation(rawTransaction) {
62
+ const tx = super.fromImplementation(rawTransaction);
63
+ const algoTx = tx.getAlgoTransaction();
64
+ if (!algoTx) {
65
+ throw new sdk_core_1.InvalidTransactionError('Transaction is empty');
66
+ }
67
+ this._tokenId = algoTx.assetIndex;
68
+ this._amount = algoTx.amount || 0;
69
+ this._to = algosdk_1.default.encodeAddress(algoTx.to.publicKey);
70
+ return tx;
71
+ }
72
+ validateRawTransaction(rawTransaction) {
73
+ const { txn: algoTxn } = utils_1.default.decodeAlgoTxn(rawTransaction);
74
+ if (algoTxn.type !== algosdk_1.default.TransactionType.axfer) {
75
+ throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${algoTxn.type}. Expected ${algosdk_1.default.TransactionType.axfer}`);
76
+ }
77
+ this.validateFields(algoTxn.assetIndex, algoTxn.amount, algosdk_1.default.encodeAddress(algoTxn.to.publicKey));
78
+ }
79
+ /** @inheritdoc */
80
+ validateTransaction(txn) {
81
+ super.validateTransaction(txn);
82
+ this.validateFields(this._tokenId, this._amount, this._to);
83
+ }
84
+ validateFields(tokenId, assetAmount, receiver) {
85
+ let validationResult;
86
+ if (this._sender !== this._to) {
87
+ validationResult = txnSchema_1.AssetTransferTxnSchema.validate({
88
+ tokenId,
89
+ assetAmount,
90
+ receiver,
91
+ });
92
+ }
93
+ else {
94
+ validationResult = txnSchema_1.AssetToggleTxnSchema.validate({
95
+ tokenId,
96
+ receiver,
97
+ });
98
+ }
99
+ if (validationResult.error) {
100
+ throw new sdk_core_1.InvalidTransactionError(`Transaction validation failed: ${validationResult.error.message}`);
101
+ }
102
+ }
103
+ }
104
+ exports.AssetTransferBuilder = AssetTransferBuilder;
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRUcmFuc2ZlckJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2Fzc2V0VHJhbnNmZXJCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLHNEQUE4QjtBQUM5QixtREFBNkY7QUFDN0YsdURBQW9EO0FBRXBELDJDQUEyRTtBQUMzRSxvREFBNEI7QUFFNUIsTUFBYSxvQkFBcUIsU0FBUSxpQ0FBZTtJQUd2RCxZQUFZLFVBQWdDO1FBQzFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsT0FBTyxDQUFDLEVBQVU7UUFDaEIsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBRW5CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0gsY0FBYyxDQUFDLE9BQWUsRUFBRSxXQUF3QjtRQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWYsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRVMsWUFBWTtRQUNwQixPQUFPLGlCQUFPLENBQUMsdUNBQXVDLENBQ3BELElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLEdBQUcsRUFDUixJQUFJLENBQUMsaUJBQWlCLEVBQ3RCLFNBQVMsRUFDVCxJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsZUFBZSxFQUNwQixJQUFJLENBQUMsUUFBUSxDQUNkLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQW1DO1FBQzlELE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwRCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksa0NBQXVCLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUM1RCxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLEdBQUcsR0FBRyxpQkFBTyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXRELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELHNCQUFzQixDQUFDLGNBQW1DO1FBQ3hELE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsZUFBSyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM3RCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssaUJBQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkQsTUFBTSxJQUFJLGtDQUF1QixDQUMvQiw2QkFBNkIsT0FBTyxDQUFDLElBQUksY0FBYyxpQkFBTyxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FDdkYsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxpQkFBTyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixtQkFBbUIsQ0FBQyxHQUFnQjtRQUNsQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFUyxjQUFjLENBQUMsT0FBZSxFQUFFLFdBQTRCLEVBQUUsUUFBZ0I7UUFDdEYsSUFBSSxnQkFBZ0IsQ0FBQztRQUNyQixJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQzlCLGdCQUFnQixHQUFHLGtDQUFzQixDQUFDLFFBQVEsQ0FBQztnQkFDakQsT0FBTztnQkFDUCxXQUFXO2dCQUNYLFFBQVE7YUFDVCxDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNOLGdCQUFnQixHQUFHLGdDQUFvQixDQUFDLFFBQVEsQ0FBQztnQkFDL0MsT0FBTztnQkFDUCxRQUFRO2FBQ1QsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsTUFBTSxJQUFJLGtDQUF1QixDQUFDLGtDQUFrQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN4RyxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBdEhELG9EQXNIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCBhbGdvc2RrIGZyb20gJ2FsZ29zZGsnO1xuaW1wb3J0IHsgQmFzZUFkZHJlc3MsIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgQXNzZXRUcmFuc2ZlclR4blNjaGVtYSwgQXNzZXRUb2dnbGVUeG5TY2hlbWEgfSBmcm9tICcuL3R4blNjaGVtYSc7XG5pbXBvcnQgVXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBBc3NldFRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFRyYW5zZmVyQnVpbGRlciB7XG4gIHByaXZhdGUgX3Rva2VuSWQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcihjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKGNvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHRva2VuIGlkLlxuXG4gICAqIFRoZSB0b2tlbiBpZCB1bmlxdWVseSBpZGVudGlmaWVzIHRoZSBhc3NldC5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IGlkIFRoZSB0b2tlbiBpZC5cbiAgICogQHJldHVybnMge0Fzc2V0VHJhbnNmZXJCdWlsZGVyfSBUaGlzIHRyYW5zYWN0aW9uIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIuYWxnb3JhbmQub3JnL2RvY3MvcmVmZXJlbmNlL3RyYW5zYWN0aW9ucy8jYXNzZXQtdHJhbnNmZXItdHJhbnNhY3Rpb25cbiAgICovXG4gIHRva2VuSWQoaWQ6IG51bWJlcik6IHRoaXMge1xuICAgIGlmIChpZCA8PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Fzc2V0IGluZGV4IG11c3QgYmUgYSB1aW50NjQgdmFsdWUnKTtcbiAgICB9XG4gICAgdGhpcy5fdG9rZW5JZCA9IGlkO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGFyYW1ldGVycyBvZiB0aGUgdHJhbnNhY3Rpb24gYnVpbGRlciB0byBhbGxvd2xpc3QgYW4gYXNzZXQuXG4gICAqXG4gICAqIFRvIGFsbG93IGxpc3QgYW4gYXNzZXQsIHlvdSBzZW5kIDAgdW5pdHMgb2YgdGhlIGFzc2V0IHRvIHlvdXJzZWxmLlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBzZXRzIHRoZSB0b2tlbklkLCBzZW5kZXIsIHJlY2VpdmVyLCBhc3NldCBhbW91bnQsIGFuZFxuICAgKiBmZWUgcGFyYW1ldGVycyB0byB0aGVpciByZXNwZWN0aXZlIHZhbHVlcyB0byBhbGxvd2xpc3QgYW5kIGFzc2V0LlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gdG9rZW5JZCBUaGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGFzc2V0LlxuICAgKiBAcGFyYW0ge0Jhc2VBZGRyZXNzfSB1c2VyQWRkcmVzcyBUaGUgYWRkcmVzcyBvZiB0aGUgdXNlci5cbiAgICogQHJldHVybnMge0Fzc2V0VHJhbnNmZXJCdWlsZGVyfSBUaGlzIHRyYW5zYWN0aW9uIGJ1aWxkZXIuXG4gICAqL1xuICBhbGxvd0xpc3RBc3NldCh0b2tlbklkOiBudW1iZXIsIHVzZXJBZGRyZXNzOiBCYXNlQWRkcmVzcyk6IHRoaXMge1xuICAgIHRoaXMudG9rZW5JZCh0b2tlbklkKTtcbiAgICB0aGlzLnNlbmRlcih1c2VyQWRkcmVzcyk7XG4gICAgdGhpcy50byh1c2VyQWRkcmVzcyk7XG4gICAgdGhpcy5pc0ZsYXRGZWUodHJ1ZSk7XG4gICAgdGhpcy5mZWUoeyBmZWU6ICcxMDAwJyB9KTtcbiAgICB0aGlzLmFtb3VudCgwKTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJvdGVjdGVkIGJ1aWxkQWxnb1R4bigpOiBhbGdvc2RrLlRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gYWxnb3Nkay5tYWtlQXNzZXRUcmFuc2ZlclR4bldpdGhTdWdnZXN0ZWRQYXJhbXMoXG4gICAgICB0aGlzLl9zZW5kZXIsXG4gICAgICB0aGlzLl90byxcbiAgICAgIHRoaXMuX2Nsb3NlUmVtYWluZGVyVG8sXG4gICAgICB1bmRlZmluZWQsXG4gICAgICB0aGlzLl9hbW91bnQsXG4gICAgICB0aGlzLl9ub3RlLFxuICAgICAgdGhpcy5fdG9rZW5JZCxcbiAgICAgIHRoaXMuc3VnZ2VzdGVkUGFyYW1zLFxuICAgICAgdGhpcy5fcmVLZXlUb1xuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU2VuZDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBVaW50OEFycmF5IHwgc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gc3VwZXIuZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBjb25zdCBhbGdvVHggPSB0eC5nZXRBbGdvVHJhbnNhY3Rpb24oKTtcbiAgICBpZiAoIWFsZ29UeCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdUcmFuc2FjdGlvbiBpcyBlbXB0eScpO1xuICAgIH1cblxuICAgIHRoaXMuX3Rva2VuSWQgPSBhbGdvVHguYXNzZXRJbmRleDtcbiAgICB0aGlzLl9hbW91bnQgPSBhbGdvVHguYW1vdW50IHx8IDA7XG4gICAgdGhpcy5fdG8gPSBhbGdvc2RrLmVuY29kZUFkZHJlc3MoYWxnb1R4LnRvLnB1YmxpY0tleSk7XG5cbiAgICByZXR1cm4gdHg7XG4gIH1cblxuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBVaW50OEFycmF5IHwgc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgeyB0eG46IGFsZ29UeG4gfSA9IFV0aWxzLmRlY29kZUFsZ29UeG4ocmF3VHJhbnNhY3Rpb24pO1xuICAgIGlmIChhbGdvVHhuLnR5cGUgIT09IGFsZ29zZGsuVHJhbnNhY3Rpb25UeXBlLmF4ZmVyKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICAgIGBJbnZhbGlkIFRyYW5zYWN0aW9uIFR5cGU6ICR7YWxnb1R4bi50eXBlfS4gRXhwZWN0ZWQgJHthbGdvc2RrLlRyYW5zYWN0aW9uVHlwZS5heGZlcn1gXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMudmFsaWRhdGVGaWVsZHMoYWxnb1R4bi5hc3NldEluZGV4LCBhbGdvVHhuLmFtb3VudCwgYWxnb3Nkay5lbmNvZGVBZGRyZXNzKGFsZ29UeG4udG8ucHVibGljS2V5KSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbih0eG46IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIudmFsaWRhdGVUcmFuc2FjdGlvbih0eG4pO1xuICAgIHRoaXMudmFsaWRhdGVGaWVsZHModGhpcy5fdG9rZW5JZCwgdGhpcy5fYW1vdW50LCB0aGlzLl90byk7XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsaWRhdGVGaWVsZHModG9rZW5JZDogbnVtYmVyLCBhc3NldEFtb3VudDogbnVtYmVyIHwgYmlnaW50LCByZWNlaXZlcjogc3RyaW5nKTogdm9pZCB7XG4gICAgbGV0IHZhbGlkYXRpb25SZXN1bHQ7XG4gICAgaWYgKHRoaXMuX3NlbmRlciAhPT0gdGhpcy5fdG8pIHtcbiAgICAgIHZhbGlkYXRpb25SZXN1bHQgPSBBc3NldFRyYW5zZmVyVHhuU2NoZW1hLnZhbGlkYXRlKHtcbiAgICAgICAgdG9rZW5JZCxcbiAgICAgICAgYXNzZXRBbW91bnQsXG4gICAgICAgIHJlY2VpdmVyLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZhbGlkYXRpb25SZXN1bHQgPSBBc3NldFRvZ2dsZVR4blNjaGVtYS52YWxpZGF0ZSh7XG4gICAgICAgIHRva2VuSWQsXG4gICAgICAgIHJlY2VpdmVyLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgVHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBmYWlsZWQ6ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,11 @@
1
+ import { BuildTransactionError } from '@bitgo-beta/sdk-core';
2
+ export declare class InsufficientFeeError extends BuildTransactionError {
3
+ constructor(providedFee: number, minimum: number);
4
+ }
5
+ export declare class AddressValidationError extends BuildTransactionError {
6
+ constructor(malformedAddress: string);
7
+ }
8
+ export declare class KeyDilutionError extends BuildTransactionError {
9
+ constructor(incorrectValue: number);
10
+ }
11
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,qBAAa,oBAAqB,SAAQ,qBAAqB;gBACjD,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAOjD;AAED,qBAAa,sBAAuB,SAAQ,qBAAqB;gBACnD,gBAAgB,EAAE,MAAM;CAIrC;AACD,qBAAa,gBAAiB,SAAQ,qBAAqB;gBAC7C,cAAc,EAAE,MAAM;CAMnC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KeyDilutionError = exports.AddressValidationError = exports.InsufficientFeeError = void 0;
4
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
+ class InsufficientFeeError extends sdk_core_1.BuildTransactionError {
6
+ constructor(providedFee, minimum) {
7
+ super(`The provided fee of '${providedFee}' microalgos cannot be less than the ` +
8
+ `minimum fee of '${minimum}' microalgos`);
9
+ this.name = InsufficientFeeError.name;
10
+ }
11
+ }
12
+ exports.InsufficientFeeError = InsufficientFeeError;
13
+ class AddressValidationError extends sdk_core_1.BuildTransactionError {
14
+ constructor(malformedAddress) {
15
+ super(`The address '${malformedAddress}' is not a well-formed algorand address`);
16
+ this.name = AddressValidationError.name;
17
+ }
18
+ }
19
+ exports.AddressValidationError = AddressValidationError;
20
+ class KeyDilutionError extends sdk_core_1.BuildTransactionError {
21
+ constructor(incorrectValue) {
22
+ super(`The keyDilution value '${incorrectValue}' must be less than or equal to the square root of the voteKey validity range.`);
23
+ this.name = KeyDilutionError.name;
24
+ }
25
+ }
26
+ exports.KeyDilutionError = KeyDilutionError;
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQTZEO0FBRTdELE1BQWEsb0JBQXFCLFNBQVEsZ0NBQXFCO0lBQzdELFlBQVksV0FBbUIsRUFBRSxPQUFlO1FBQzlDLEtBQUssQ0FDSCx3QkFBd0IsV0FBVyx1Q0FBdUM7WUFDeEUsbUJBQW1CLE9BQU8sY0FBYyxDQUMzQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUM7SUFDeEMsQ0FBQztDQUNGO0FBUkQsb0RBUUM7QUFFRCxNQUFhLHNCQUF1QixTQUFRLGdDQUFxQjtJQUMvRCxZQUFZLGdCQUF3QjtRQUNsQyxLQUFLLENBQUMsZ0JBQWdCLGdCQUFnQix5Q0FBeUMsQ0FBQyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQUxELHdEQUtDO0FBQ0QsTUFBYSxnQkFBaUIsU0FBUSxnQ0FBcUI7SUFDekQsWUFBWSxjQUFzQjtRQUNoQyxLQUFLLENBQ0gsMEJBQTBCLGNBQWMsZ0ZBQWdGLENBQ3pILENBQUM7UUFDRixJQUFJLENBQUMsSUFBSSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQztJQUNwQyxDQUFDO0NBQ0Y7QUFQRCw0Q0FPQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuZXhwb3J0IGNsYXNzIEluc3VmZmljaWVudEZlZUVycm9yIGV4dGVuZHMgQnVpbGRUcmFuc2FjdGlvbkVycm9yIHtcbiAgY29uc3RydWN0b3IocHJvdmlkZWRGZWU6IG51bWJlciwgbWluaW11bTogbnVtYmVyKSB7XG4gICAgc3VwZXIoXG4gICAgICBgVGhlIHByb3ZpZGVkIGZlZSBvZiAnJHtwcm92aWRlZEZlZX0nIG1pY3JvYWxnb3MgY2Fubm90IGJlIGxlc3MgdGhhbiB0aGUgYCArXG4gICAgICAgIGBtaW5pbXVtIGZlZSBvZiAnJHttaW5pbXVtfScgbWljcm9hbGdvc2BcbiAgICApO1xuICAgIHRoaXMubmFtZSA9IEluc3VmZmljaWVudEZlZUVycm9yLm5hbWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFkZHJlc3NWYWxpZGF0aW9uRXJyb3IgZXh0ZW5kcyBCdWlsZFRyYW5zYWN0aW9uRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtYWxmb3JtZWRBZGRyZXNzOiBzdHJpbmcpIHtcbiAgICBzdXBlcihgVGhlIGFkZHJlc3MgJyR7bWFsZm9ybWVkQWRkcmVzc30nIGlzIG5vdCBhIHdlbGwtZm9ybWVkIGFsZ29yYW5kIGFkZHJlc3NgKTtcbiAgICB0aGlzLm5hbWUgPSBBZGRyZXNzVmFsaWRhdGlvbkVycm9yLm5hbWU7XG4gIH1cbn1cbmV4cG9ydCBjbGFzcyBLZXlEaWx1dGlvbkVycm9yIGV4dGVuZHMgQnVpbGRUcmFuc2FjdGlvbkVycm9yIHtcbiAgY29uc3RydWN0b3IoaW5jb3JyZWN0VmFsdWU6IG51bWJlcikge1xuICAgIHN1cGVyKFxuICAgICAgYFRoZSBrZXlEaWx1dGlvbiB2YWx1ZSAnJHtpbmNvcnJlY3RWYWx1ZX0nIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUgdm90ZUtleSB2YWxpZGl0eSByYW5nZS5gXG4gICAgKTtcbiAgICB0aGlzLm5hbWUgPSBLZXlEaWx1dGlvbkVycm9yLm5hbWU7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,45 @@
1
+ import algosdk from 'algosdk';
2
+ export interface TxData {
3
+ id: string;
4
+ type?: string;
5
+ from: string;
6
+ to?: string;
7
+ fee: number;
8
+ amount?: string;
9
+ firstRound: number;
10
+ lastRound: number;
11
+ note?: Uint8Array;
12
+ voteKey?: string;
13
+ selectionKey?: string;
14
+ voteFirst?: number;
15
+ voteLast?: number;
16
+ voteKeyDilution?: number;
17
+ stateProofKey?: string;
18
+ tokenId?: number;
19
+ genesisID: string;
20
+ genesisHash: string | Buffer;
21
+ closeRemainderTo?: string;
22
+ nonParticipation?: boolean;
23
+ txType?: string;
24
+ tokenName?: string;
25
+ }
26
+ export interface Address {
27
+ publicKey: Uint8Array;
28
+ checksum: Uint8Array;
29
+ }
30
+ export interface Seed {
31
+ seed: Uint8Array;
32
+ checksum: Uint8Array;
33
+ }
34
+ export interface EncodedTx {
35
+ rawTransaction: Uint8Array;
36
+ txn: algosdk.Transaction;
37
+ signed: boolean;
38
+ signers?: string[];
39
+ signedBy?: string[];
40
+ }
41
+ export interface Account {
42
+ addr: string;
43
+ sk: Uint8Array;
44
+ }
45
+ //# sourceMappingURL=ifaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ifaces.d.ts","sourceRoot":"","sources":["../../../src/lib/ifaces.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,UAAU,CAAC;IACtB,QAAQ,EAAE,UAAU,CAAC;CACtB;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,UAAU,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,cAAc,EAAE,UAAU,CAAC;IAC3B,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,UAAU,CAAC;CAChB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9pZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhbGdvc2RrIGZyb20gJ2FsZ29zZGsnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFR4RGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGZyb206IHN0cmluZztcbiAgdG8/OiBzdHJpbmc7XG4gIGZlZTogbnVtYmVyO1xuICBhbW91bnQ/OiBzdHJpbmc7XG4gIGZpcnN0Um91bmQ6IG51bWJlcjtcbiAgbGFzdFJvdW5kOiBudW1iZXI7XG4gIG5vdGU/OiBVaW50OEFycmF5O1xuICB2b3RlS2V5Pzogc3RyaW5nO1xuICBzZWxlY3Rpb25LZXk/OiBzdHJpbmc7XG4gIHZvdGVGaXJzdD86IG51bWJlcjtcbiAgdm90ZUxhc3Q/OiBudW1iZXI7XG4gIHZvdGVLZXlEaWx1dGlvbj86IG51bWJlcjtcbiAgc3RhdGVQcm9vZktleT86IHN0cmluZztcbiAgdG9rZW5JZD86IG51bWJlcjtcbiAgZ2VuZXNpc0lEOiBzdHJpbmc7XG4gIGdlbmVzaXNIYXNoOiBzdHJpbmcgfCBCdWZmZXI7XG4gIGNsb3NlUmVtYWluZGVyVG8/OiBzdHJpbmc7XG4gIG5vblBhcnRpY2lwYXRpb24/OiBib29sZWFuO1xuICB0eFR5cGU/OiBzdHJpbmc7XG4gIHRva2VuTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRyZXNzIHtcbiAgcHVibGljS2V5OiBVaW50OEFycmF5O1xuICBjaGVja3N1bTogVWludDhBcnJheTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWVkIHtcbiAgc2VlZDogVWludDhBcnJheTtcbiAgY2hlY2tzdW06IFVpbnQ4QXJyYXk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW5jb2RlZFR4IHtcbiAgcmF3VHJhbnNhY3Rpb246IFVpbnQ4QXJyYXk7XG4gIHR4bjogYWxnb3Nkay5UcmFuc2FjdGlvbjtcbiAgc2lnbmVkOiBib29sZWFuO1xuICBzaWduZXJzPzogc3RyaW5nW107XG4gIHNpZ25lZEJ5Pzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWNjb3VudCB7XG4gIGFkZHI6IHN0cmluZztcbiAgc2s6IFVpbnQ4QXJyYXk7XG59XG4iXX0=
@@ -0,0 +1,13 @@
1
+ import utils from './utils';
2
+ import * as Interface from './ifaces';
3
+ export { KeyPair } from './keyPair';
4
+ export { TransactionBuilder } from './transactionBuilder';
5
+ export { TransferBuilder } from './transferBuilder';
6
+ export { KeyRegistrationBuilder } from './keyRegistrationBuilder';
7
+ export { Transaction } from './transaction';
8
+ export { AssetTransferBuilder } from './assetTransferBuilder';
9
+ export { TransactionBuilderFactory } from './transactionBuilderFactory';
10
+ export { InsufficientFeeError, AddressValidationError } from './errors';
11
+ export { Interface };
12
+ export { utils as algoUtils };
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,SAAS,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,CAAC"}
@@ -0,0 +1,61 @@
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
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.algoUtils = exports.Interface = exports.AddressValidationError = exports.InsufficientFeeError = exports.TransactionBuilderFactory = exports.AssetTransferBuilder = exports.Transaction = exports.KeyRegistrationBuilder = exports.TransferBuilder = exports.TransactionBuilder = exports.KeyPair = void 0;
40
+ const utils_1 = __importDefault(require("./utils"));
41
+ exports.algoUtils = utils_1.default;
42
+ const Interface = __importStar(require("./ifaces"));
43
+ exports.Interface = Interface;
44
+ var keyPair_1 = require("./keyPair");
45
+ Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
46
+ var transactionBuilder_1 = require("./transactionBuilder");
47
+ Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
48
+ var transferBuilder_1 = require("./transferBuilder");
49
+ Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
50
+ var keyRegistrationBuilder_1 = require("./keyRegistrationBuilder");
51
+ Object.defineProperty(exports, "KeyRegistrationBuilder", { enumerable: true, get: function () { return keyRegistrationBuilder_1.KeyRegistrationBuilder; } });
52
+ var transaction_1 = require("./transaction");
53
+ Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return transaction_1.Transaction; } });
54
+ var assetTransferBuilder_1 = require("./assetTransferBuilder");
55
+ Object.defineProperty(exports, "AssetTransferBuilder", { enumerable: true, get: function () { return assetTransferBuilder_1.AssetTransferBuilder; } });
56
+ var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
57
+ Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
58
+ var errors_1 = require("./errors");
59
+ Object.defineProperty(exports, "InsufficientFeeError", { enumerable: true, get: function () { return errors_1.InsufficientFeeError; } });
60
+ Object.defineProperty(exports, "AddressValidationError", { enumerable: true, get: function () { return errors_1.AddressValidationError; } });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQVlWLG9CQVpYLGVBQUssQ0FZZTtBQVgzQixvREFBc0M7QUFVN0IsOEJBQVM7QUFSbEIscUNBQW9DO0FBQTNCLGtHQUFBLE9BQU8sT0FBQTtBQUNoQiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4QixtRUFBa0U7QUFBekQsZ0lBQUEsc0JBQXNCLE9BQUE7QUFDL0IsNkNBQTRDO0FBQW5DLDBHQUFBLFdBQVcsT0FBQTtBQUNwQiwrREFBOEQ7QUFBckQsNEhBQUEsb0JBQW9CLE9BQUE7QUFDN0IseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBO0FBQ2xDLG1DQUF3RTtBQUEvRCw4R0FBQSxvQkFBb0IsT0FBQTtBQUFFLGdIQUFBLHNCQUFzQixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICogYXMgSW50ZXJmYWNlIGZyb20gJy4vaWZhY2VzJztcblxuZXhwb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBLZXlSZWdpc3RyYXRpb25CdWlsZGVyIH0gZnJvbSAnLi9rZXlSZWdpc3RyYXRpb25CdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBBc3NldFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vYXNzZXRUcmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgeyBJbnN1ZmZpY2llbnRGZWVFcnJvciwgQWRkcmVzc1ZhbGlkYXRpb25FcnJvciB9IGZyb20gJy4vZXJyb3JzJztcbmV4cG9ydCB7IEludGVyZmFjZSB9O1xuZXhwb3J0IHsgdXRpbHMgYXMgYWxnb1V0aWxzIH07XG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { Ed25519KeyPair, DefaultKeys, KeyPairOptions } from '@bitgo-beta/sdk-core';
2
+ export declare class KeyPair extends Ed25519KeyPair {
3
+ /**
4
+ * Public constructor. By default, creates a key pair with a random master seed.
5
+ *
6
+ * @param { KeyPairOptions } source Either a master seed, a private key, or a public key
7
+ */
8
+ constructor(source?: KeyPairOptions);
9
+ /** @inheritdoc */
10
+ recordKeysFromPrivateKeyInProtocolFormat(prv: string): DefaultKeys;
11
+ /** @inheritdoc */
12
+ recordKeysFromPublicKeyInProtocolFormat(pub: string): DefaultKeys;
13
+ /** @inheritdoc */
14
+ getAddress(): string;
15
+ /** @inheritdoc */
16
+ getKeys(): DefaultKeys;
17
+ /**
18
+ * Getting the base64 private key for signing an algo transaction.
19
+ *
20
+ * @returns {Uint8Array} base64 private key
21
+ * @see https://developer.algorand.org/docs/features/accounts/#transformation-private-key-to-base64-private-key
22
+ */
23
+ getSigningKey(): Uint8Array;
24
+ }
25
+ //# sourceMappingURL=keyPair.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyPair.d.ts","sourceRoot":"","sources":["../../../src/lib/keyPair.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAc,MAAM,sBAAsB,CAAC;AAG/F,qBAAa,OAAQ,SAAQ,cAAc;IACzC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,cAAc;IAInC,kBAAkB;IAClB,wCAAwC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAOlE,kBAAkB;IAClB,uCAAuC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAKjE,kBAAkB;IAClB,UAAU,IAAI,MAAM;IAIpB,kBAAkB;IAClB,OAAO,IAAI,WAAW;IAYtB;;;;;OAKG;IACH,aAAa,IAAI,UAAU;CAM5B"}