@bitgo-beta/sdk-coin-hbar 2.0.73-alpha.107 → 2.0.73-alpha.108
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/dist/src/hbar.d.ts +168 -0
- package/dist/src/hbar.d.ts.map +1 -0
- package/dist/src/hbar.js +497 -0
- package/dist/src/hbarToken.d.ts +21 -0
- package/dist/src/hbarToken.d.ts.map +1 -0
- package/dist/src/hbarToken.js +58 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +22 -0
- package/dist/src/lib/coinTransferBuilder.d.ts +47 -0
- package/dist/src/lib/coinTransferBuilder.d.ts.map +1 -0
- package/dist/src/lib/coinTransferBuilder.js +159 -0
- package/dist/src/lib/constants.d.ts +8 -0
- package/dist/src/lib/constants.d.ts.map +1 -0
- package/dist/src/lib/constants.js +12 -0
- package/dist/src/lib/iface.d.ts +50 -0
- package/dist/src/lib/iface.d.ts.map +1 -0
- package/dist/src/lib/iface.js +3 -0
- package/dist/src/lib/index.d.ts +10 -0
- package/dist/src/lib/index.d.ts.map +1 -0
- package/dist/src/lib/index.js +53 -0
- package/dist/src/lib/keyPair.d.ts +24 -0
- package/dist/src/lib/keyPair.d.ts.map +1 -0
- package/dist/src/lib/keyPair.js +70 -0
- package/dist/src/lib/tokenAssociateBuilder.d.ts +38 -0
- package/dist/src/lib/tokenAssociateBuilder.d.ts.map +1 -0
- package/dist/src/lib/tokenAssociateBuilder.js +107 -0
- package/dist/src/lib/tokenTransferBuilder.d.ts +25 -0
- package/dist/src/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/src/lib/tokenTransferBuilder.js +130 -0
- package/dist/src/lib/transaction.d.ts +106 -0
- package/dist/src/lib/transaction.d.ts.map +1 -0
- package/dist/src/lib/transaction.js +330 -0
- package/dist/src/lib/transactionBuilder.d.ts +111 -0
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder.js +284 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts +47 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilderFactory.js +88 -0
- package/dist/src/lib/transferBuilder.d.ts +24 -0
- package/dist/src/lib/transferBuilder.d.ts.map +1 -0
- package/dist/src/lib/transferBuilder.js +55 -0
- package/dist/src/lib/utils.d.ts +210 -0
- package/dist/src/lib/utils.d.ts.map +1 -0
- package/dist/src/lib/utils.js +481 -0
- package/dist/src/lib/walletInitializationBuilder.d.ts +28 -0
- package/dist/src/lib/walletInitializationBuilder.d.ts.map +1 -0
- package/dist/src/lib/walletInitializationBuilder.js +124 -0
- package/dist/src/register.d.ts +3 -0
- package/dist/src/register.d.ts.map +1 -0
- package/dist/src/register.js +15 -0
- package/dist/src/seedValidator.d.ts +31 -0
- package/dist/src/seedValidator.d.ts.map +1 -0
- package/dist/src/seedValidator.js +103 -0
- package/dist/src/thbar.d.ts +14 -0
- package/dist/src/thbar.d.ts.map +1 -0
- package/dist/src/thbar.js +17 -0
- package/package.json +7 -7
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HbarToken = void 0;
|
|
4
|
+
const statics_1 = require("@bitgo-beta/statics");
|
|
5
|
+
const hbar_1 = require("./hbar");
|
|
6
|
+
class HbarToken extends hbar_1.Hbar {
|
|
7
|
+
constructor(bitgo, tokenConfig) {
|
|
8
|
+
const staticsCoin = tokenConfig.network === 'Mainnet' ? statics_1.coins.get('hbar') : statics_1.coins.get('thbar');
|
|
9
|
+
super(bitgo, staticsCoin);
|
|
10
|
+
this.tokenConfig = tokenConfig;
|
|
11
|
+
}
|
|
12
|
+
static createTokenConstructor(config) {
|
|
13
|
+
return (bitgo) => new HbarToken(bitgo, config);
|
|
14
|
+
}
|
|
15
|
+
static createTokenConstructors(tokenConfigs = [...statics_1.tokens.bitcoin.hbar.tokens, ...statics_1.tokens.testnet.hbar.tokens]) {
|
|
16
|
+
const tokensCtors = [];
|
|
17
|
+
for (const token of tokenConfigs) {
|
|
18
|
+
const tokenConstructor = HbarToken.createTokenConstructor(token);
|
|
19
|
+
tokensCtors.push({ name: token.type, coinConstructor: tokenConstructor });
|
|
20
|
+
}
|
|
21
|
+
return tokensCtors;
|
|
22
|
+
}
|
|
23
|
+
get name() {
|
|
24
|
+
return this.tokenConfig.name;
|
|
25
|
+
}
|
|
26
|
+
get coin() {
|
|
27
|
+
return this.tokenConfig.coin;
|
|
28
|
+
}
|
|
29
|
+
get network() {
|
|
30
|
+
return this.tokenConfig.network;
|
|
31
|
+
}
|
|
32
|
+
get decimalPlaces() {
|
|
33
|
+
return this.tokenConfig.decimalPlaces;
|
|
34
|
+
}
|
|
35
|
+
get nodeAccountId() {
|
|
36
|
+
return this.tokenConfig.nodeAccountId;
|
|
37
|
+
}
|
|
38
|
+
get tokenId() {
|
|
39
|
+
return this.tokenConfig.tokenId;
|
|
40
|
+
}
|
|
41
|
+
get contractAddress() {
|
|
42
|
+
return this.tokenConfig.contractAddress;
|
|
43
|
+
}
|
|
44
|
+
getChain() {
|
|
45
|
+
return this.tokenConfig.type;
|
|
46
|
+
}
|
|
47
|
+
getBaseChain() {
|
|
48
|
+
return this.coin;
|
|
49
|
+
}
|
|
50
|
+
getFullName() {
|
|
51
|
+
return this.name;
|
|
52
|
+
}
|
|
53
|
+
getBaseFactor() {
|
|
54
|
+
return Math.pow(10, this.tokenConfig.decimalPlaces);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.HbarToken = HbarToken;
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGJhclRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hiYXJUb2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxpREFBcUU7QUFDckUsaUNBQThCO0FBRTlCLE1BQWEsU0FBVSxTQUFRLFdBQUk7SUFHakMsWUFBWSxLQUFnQixFQUFFLFdBQTRCO1FBQ3hELE1BQU0sV0FBVyxHQUFHLFdBQVcsQ0FBQyxPQUFPLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxlQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9GLEtBQUssQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVELE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxNQUF1QjtRQUNuRCxPQUFPLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxNQUFNLENBQUMsdUJBQXVCLENBQzVCLGVBQWtDLENBQUMsR0FBRyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUVoRyxNQUFNLFdBQVcsR0FBMkIsRUFBRSxDQUFDO1FBQy9DLEtBQUssTUFBTSxLQUFLLElBQUksWUFBWSxFQUFFLENBQUM7WUFDakMsTUFBTSxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakUsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDNUUsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQUNGO0FBbkVELDhCQW1FQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJpdEdvQmFzZSwgQ29pbkNvbnN0cnVjdG9yLCBOYW1lZENvaW5Db25zdHJ1Y3RvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IGNvaW5zLCBIYmFyVG9rZW5Db25maWcsIHRva2VucyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgSGJhciB9IGZyb20gJy4vaGJhcic7XG5cbmV4cG9ydCBjbGFzcyBIYmFyVG9rZW4gZXh0ZW5kcyBIYmFyIHtcbiAgcHVibGljIHJlYWRvbmx5IHRva2VuQ29uZmlnOiBIYmFyVG9rZW5Db25maWc7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgdG9rZW5Db25maWc6IEhiYXJUb2tlbkNvbmZpZykge1xuICAgIGNvbnN0IHN0YXRpY3NDb2luID0gdG9rZW5Db25maWcubmV0d29yayA9PT0gJ01haW5uZXQnID8gY29pbnMuZ2V0KCdoYmFyJykgOiBjb2lucy5nZXQoJ3RoYmFyJyk7XG4gICAgc3VwZXIoYml0Z28sIHN0YXRpY3NDb2luKTtcbiAgICB0aGlzLnRva2VuQ29uZmlnID0gdG9rZW5Db25maWc7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWc6IEhiYXJUb2tlbkNvbmZpZyk6IENvaW5Db25zdHJ1Y3RvciB7XG4gICAgcmV0dXJuIChiaXRnbzogQml0R29CYXNlKSA9PiBuZXcgSGJhclRva2VuKGJpdGdvLCBjb25maWcpO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZVRva2VuQ29uc3RydWN0b3JzKFxuICAgIHRva2VuQ29uZmlnczogSGJhclRva2VuQ29uZmlnW10gPSBbLi4udG9rZW5zLmJpdGNvaW4uaGJhci50b2tlbnMsIC4uLnRva2Vucy50ZXN0bmV0LmhiYXIudG9rZW5zXVxuICApOiBOYW1lZENvaW5Db25zdHJ1Y3RvcltdIHtcbiAgICBjb25zdCB0b2tlbnNDdG9yczogTmFtZWRDb2luQ29uc3RydWN0b3JbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdG9rZW4gb2YgdG9rZW5Db25maWdzKSB7XG4gICAgICBjb25zdCB0b2tlbkNvbnN0cnVjdG9yID0gSGJhclRva2VuLmNyZWF0ZVRva2VuQ29uc3RydWN0b3IodG9rZW4pO1xuICAgICAgdG9rZW5zQ3RvcnMucHVzaCh7IG5hbWU6IHRva2VuLnR5cGUsIGNvaW5Db25zdHJ1Y3RvcjogdG9rZW5Db25zdHJ1Y3RvciB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRva2Vuc0N0b3JzO1xuICB9XG5cbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5uYW1lO1xuICB9XG5cbiAgZ2V0IGNvaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5jb2luO1xuICB9XG5cbiAgZ2V0IG5ldHdvcmsoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5uZXR3b3JrO1xuICB9XG5cbiAgZ2V0IGRlY2ltYWxQbGFjZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5kZWNpbWFsUGxhY2VzO1xuICB9XG5cbiAgZ2V0IG5vZGVBY2NvdW50SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5ub2RlQWNjb3VudElkO1xuICB9XG5cbiAgZ2V0IHRva2VuSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy50b2tlbklkO1xuICB9XG5cbiAgZ2V0IGNvbnRyYWN0QWRkcmVzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmNvbnRyYWN0QWRkcmVzcztcbiAgfVxuXG4gIGdldENoYWluKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcudHlwZTtcbiAgfVxuXG4gIGdldEJhc2VDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvaW47XG4gIH1cblxuICBnZXRGdWxsTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRCYXNlRmFjdG9yKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgucG93KDEwLCB0aGlzLnRva2VuQ29uZmlnLmRlY2ltYWxQbGFjZXMpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./lib"), exports);
|
|
18
|
+
__exportStar(require("./hbar"), exports);
|
|
19
|
+
__exportStar(require("./hbarToken"), exports);
|
|
20
|
+
__exportStar(require("./thbar"), exports);
|
|
21
|
+
__exportStar(require("./register"), exports);
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0Qix5Q0FBdUI7QUFDdkIsOENBQTRCO0FBQzVCLDBDQUF3QjtBQUN4Qiw2Q0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYic7XG5leHBvcnQgKiBmcm9tICcuL2hiYXInO1xuZXhwb3J0ICogZnJvbSAnLi9oYmFyVG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi90aGJhcic7XG5leHBvcnQgKiBmcm9tICcuL3JlZ2lzdGVyJztcbiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
2
|
+
import { proto } from '@hashgraph/proto';
|
|
3
|
+
import { Recipient } from './iface';
|
|
4
|
+
import { TransferBuilder } from './transferBuilder';
|
|
5
|
+
import { Transaction } from './transaction';
|
|
6
|
+
export declare class CoinTransferBuilder extends TransferBuilder {
|
|
7
|
+
private _toAddress;
|
|
8
|
+
private _amount;
|
|
9
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
10
|
+
/** @inheritdoc */
|
|
11
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
12
|
+
private buildTransferData;
|
|
13
|
+
/** @inheritdoc */
|
|
14
|
+
initBuilder(tx: Transaction): void;
|
|
15
|
+
/**
|
|
16
|
+
* Initialize the transfer specific data, getting the recipient account
|
|
17
|
+
* represented by the element with a positive amount on the transfer element.
|
|
18
|
+
* The negative amount represents the source account, so it's ignored.
|
|
19
|
+
*
|
|
20
|
+
* @param {proto} transfers - Array of objects which contains accountID and transferred amount
|
|
21
|
+
*/
|
|
22
|
+
protected initTransfers(transfers: proto.IAccountAmount[]): void;
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated - Use the send method instead
|
|
25
|
+
*
|
|
26
|
+
* Set the destination address where the funds will be sent,
|
|
27
|
+
* it may take the format `'<shard>.<realm>.<account>'` or `'<account>'`
|
|
28
|
+
*
|
|
29
|
+
* @param {string} address - The address to transfer funds to
|
|
30
|
+
* @returns {TransferBuilder} - The builder with the new parameter set
|
|
31
|
+
*/
|
|
32
|
+
to(address: string): this;
|
|
33
|
+
/**
|
|
34
|
+
* @deprecated - Use the send method instead
|
|
35
|
+
*
|
|
36
|
+
* Set the amount to be transferred
|
|
37
|
+
*
|
|
38
|
+
* @param {string} amount - Amount to transfer in tinyBars (there are 100,000,000 tinyBars in one Hbar)
|
|
39
|
+
* @returns {TransferBuilder} - The builder with the new parameter set
|
|
40
|
+
*/
|
|
41
|
+
amount(amount: string): this;
|
|
42
|
+
/** @inheritdoc */
|
|
43
|
+
send(recipient: Recipient): this;
|
|
44
|
+
/** @inheritdoc */
|
|
45
|
+
validateMandatoryFields(): void;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=coinTransferBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coinTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/coinTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,qBAAa,mBAAoB,SAAQ,eAAe;IAEtD,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,OAAO,CAAS;gBAEZ,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAK3D,OAAO,CAAC,iBAAiB;IAsBzB,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAQlC;;;;;;OAMG;IACH,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,cAAc,EAAE,GAAG,IAAI;IAehE;;;;;;;;OAQG;IACH,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAWzB;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAW5B,kBAAkB;IAClB,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAYhC,kBAAkB;IAClB,uBAAuB,IAAI,IAAI;CAUhC"}
|
|
@@ -0,0 +1,159 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.CoinTransferBuilder = void 0;
|
|
37
|
+
const Long = __importStar(require("long"));
|
|
38
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
39
|
+
const transferBuilder_1 = require("./transferBuilder");
|
|
40
|
+
const utils_1 = require("./utils");
|
|
41
|
+
const bignumber_js_1 = require("bignumber.js");
|
|
42
|
+
class CoinTransferBuilder extends transferBuilder_1.TransferBuilder {
|
|
43
|
+
constructor(_coinConfig) {
|
|
44
|
+
super(_coinConfig);
|
|
45
|
+
}
|
|
46
|
+
/** @inheritdoc */
|
|
47
|
+
async buildImplementation() {
|
|
48
|
+
this._txBodyData.transfers = this.buildTransferData();
|
|
49
|
+
return await super.buildImplementation();
|
|
50
|
+
}
|
|
51
|
+
buildTransferData() {
|
|
52
|
+
let totalSend = new bignumber_js_1.BigNumber(0);
|
|
53
|
+
const accountAmounts = [
|
|
54
|
+
{
|
|
55
|
+
accountID: (0, utils_1.buildHederaAccountID)(this._source.address),
|
|
56
|
+
amount: Long.fromInt(0),
|
|
57
|
+
}, // sender
|
|
58
|
+
];
|
|
59
|
+
// add recipients and update send amount
|
|
60
|
+
this._recipients.forEach((recipient) => {
|
|
61
|
+
accountAmounts.push({ accountID: (0, utils_1.buildHederaAccountID)(recipient.address), amount: Long.fromString(recipient.amount) } // recipient
|
|
62
|
+
);
|
|
63
|
+
totalSend = totalSend.plus(recipient.amount);
|
|
64
|
+
});
|
|
65
|
+
accountAmounts[0].amount = Long.fromString(totalSend.toString()).negate(); // update sender send amount
|
|
66
|
+
return {
|
|
67
|
+
accountAmounts: accountAmounts,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/** @inheritdoc */
|
|
71
|
+
initBuilder(tx) {
|
|
72
|
+
super.initBuilder(tx);
|
|
73
|
+
const transferData = tx.txBody.cryptoTransfer;
|
|
74
|
+
if (transferData && transferData.transfers && transferData.transfers.accountAmounts) {
|
|
75
|
+
this.initTransfers(transferData.transfers.accountAmounts);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Initialize the transfer specific data, getting the recipient account
|
|
80
|
+
* represented by the element with a positive amount on the transfer element.
|
|
81
|
+
* The negative amount represents the source account, so it's ignored.
|
|
82
|
+
*
|
|
83
|
+
* @param {proto} transfers - Array of objects which contains accountID and transferred amount
|
|
84
|
+
*/
|
|
85
|
+
initTransfers(transfers) {
|
|
86
|
+
transfers.forEach((transferData) => {
|
|
87
|
+
const amount = Long.fromValue(transferData.amount);
|
|
88
|
+
if (amount.isPositive()) {
|
|
89
|
+
this.send({
|
|
90
|
+
address: (0, utils_1.stringifyAccountId)(transferData.accountID),
|
|
91
|
+
amount: amount.toString(),
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
// region Transfer fields
|
|
97
|
+
// Currently works for one recipient by using exatcly one of to + amount or send function
|
|
98
|
+
/**
|
|
99
|
+
* @deprecated - Use the send method instead
|
|
100
|
+
*
|
|
101
|
+
* Set the destination address where the funds will be sent,
|
|
102
|
+
* it may take the format `'<shard>.<realm>.<account>'` or `'<account>'`
|
|
103
|
+
*
|
|
104
|
+
* @param {string} address - The address to transfer funds to
|
|
105
|
+
* @returns {TransferBuilder} - The builder with the new parameter set
|
|
106
|
+
*/
|
|
107
|
+
to(address) {
|
|
108
|
+
if (this._recipients.length > 0) {
|
|
109
|
+
throw new sdk_core_1.DuplicateMethodError('Invalid method: send already used');
|
|
110
|
+
}
|
|
111
|
+
if (!(0, utils_1.isValidAddress)(address)) {
|
|
112
|
+
throw new sdk_core_1.InvalidParameterValueError('Invalid address');
|
|
113
|
+
}
|
|
114
|
+
this._toAddress = address;
|
|
115
|
+
return this;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* @deprecated - Use the send method instead
|
|
119
|
+
*
|
|
120
|
+
* Set the amount to be transferred
|
|
121
|
+
*
|
|
122
|
+
* @param {string} amount - Amount to transfer in tinyBars (there are 100,000,000 tinyBars in one Hbar)
|
|
123
|
+
* @returns {TransferBuilder} - The builder with the new parameter set
|
|
124
|
+
*/
|
|
125
|
+
amount(amount) {
|
|
126
|
+
if (this._recipients.length > 0) {
|
|
127
|
+
throw new sdk_core_1.DuplicateMethodError('Invalid method: send already used');
|
|
128
|
+
}
|
|
129
|
+
if (!(0, utils_1.isValidAmount)(amount)) {
|
|
130
|
+
throw new sdk_core_1.InvalidParameterValueError('Invalid amount');
|
|
131
|
+
}
|
|
132
|
+
this._amount = amount;
|
|
133
|
+
return this;
|
|
134
|
+
}
|
|
135
|
+
/** @inheritdoc */
|
|
136
|
+
send(recipient) {
|
|
137
|
+
if (this._amount || this._toAddress) {
|
|
138
|
+
throw new sdk_core_1.DuplicateMethodError('Invalid method: to or amount already used');
|
|
139
|
+
}
|
|
140
|
+
if (recipient.tokenName) {
|
|
141
|
+
throw new sdk_core_1.InvalidParameterValueError('Invalid token name must be empty');
|
|
142
|
+
}
|
|
143
|
+
return super.send(recipient);
|
|
144
|
+
}
|
|
145
|
+
// endregion
|
|
146
|
+
// region Validators
|
|
147
|
+
/** @inheritdoc */
|
|
148
|
+
validateMandatoryFields() {
|
|
149
|
+
if (this._toAddress && this._amount) {
|
|
150
|
+
this._recipients.push({
|
|
151
|
+
address: this._toAddress,
|
|
152
|
+
amount: this._amount,
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
super.validateMandatoryFields();
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
exports.CoinTransferBuilder = CoinTransferBuilder;
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pblRyYW5zZmVyQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvY29pblRyYW5zZmVyQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSwyQ0FBNkI7QUFFN0IsbURBQXdGO0FBRXhGLHVEQUFvRDtBQUVwRCxtQ0FBa0c7QUFDbEcsK0NBQXlDO0FBRXpDLE1BQWEsbUJBQW9CLFNBQVEsaUNBQWU7SUFNdEQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELGtCQUFrQjtJQUNSLEtBQUssQ0FBQyxtQkFBbUI7UUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDdEQsT0FBTyxNQUFNLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxTQUFTLEdBQUcsSUFBSSx3QkFBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sY0FBYyxHQUEyQjtZQUM3QztnQkFDRSxTQUFTLEVBQUUsSUFBQSw0QkFBb0IsRUFBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztnQkFDckQsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2FBQ3hCLEVBQUUsU0FBUztTQUNiLENBQUM7UUFDRix3Q0FBd0M7UUFDeEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNyQyxjQUFjLENBQUMsSUFBSSxDQUNqQixFQUFFLFNBQVMsRUFBRSxJQUFBLDRCQUFvQixFQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsTUFB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QixDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBQ0QsWUFBWTtJQUVaLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsdUJBQXVCO1FBQ3JCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7Z0JBQ3BCLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVTtnQkFDeEIsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPO2FBQ3JCLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0NBRUY7QUFwSUQsa0RBb0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0ICogYXMgTG9uZyBmcm9tICdsb25nJztcbmltcG9ydCB7IHByb3RvIH0gZnJvbSAnQGhhc2hncmFwaC9wcm90byc7XG5pbXBvcnQgeyBEdXBsaWNhdGVNZXRob2RFcnJvciwgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBSZWNpcGllbnQgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBpc1ZhbGlkQWRkcmVzcywgaXNWYWxpZEFtb3VudCwgc3RyaW5naWZ5QWNjb3VudElkLCBidWlsZEhlZGVyYUFjY291bnRJRCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgQmlnTnVtYmVyIH0gZnJvbSAnYmlnbnVtYmVyLmpzJztcblxuZXhwb3J0IGNsYXNzIENvaW5UcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2ZlckJ1aWxkZXIge1xuICAvLyBAZGVwcmVjYXRlZCBVc2UgX3JlY2lwaWVudHMgZmllbGQgaW5zdGVhZFxuICBwcml2YXRlIF90b0FkZHJlc3M6IHN0cmluZztcbiAgLy8gQGRlcHJlY2F0ZWQgVXNlIF9yZWNpcGllbnRzIGZpZWxkIGluc3RlYWRcbiAgcHJpdmF0ZSBfYW1vdW50OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLl90eEJvZHlEYXRhLnRyYW5zZmVycyA9IHRoaXMuYnVpbGRUcmFuc2ZlckRhdGEoKTtcbiAgICByZXR1cm4gYXdhaXQgc3VwZXIuYnVpbGRJbXBsZW1lbnRhdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFRyYW5zZmVyRGF0YSgpOiBwcm90by5JVHJhbnNmZXJMaXN0IHtcbiAgICBsZXQgdG90YWxTZW5kID0gbmV3IEJpZ051bWJlcigwKTtcbiAgICBjb25zdCBhY2NvdW50QW1vdW50czogcHJvdG8uSUFjY291bnRBbW91bnRbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgYWNjb3VudElEOiBidWlsZEhlZGVyYUFjY291bnRJRCh0aGlzLl9zb3VyY2UuYWRkcmVzcyksXG4gICAgICAgIGFtb3VudDogTG9uZy5mcm9tSW50KDApLFxuICAgICAgfSwgLy8gc2VuZGVyXG4gICAgXTtcbiAgICAvLyBhZGQgcmVjaXBpZW50cyBhbmQgdXBkYXRlIHNlbmQgYW1vdW50XG4gICAgdGhpcy5fcmVjaXBpZW50cy5mb3JFYWNoKChyZWNpcGllbnQpID0+IHtcbiAgICAgIGFjY291bnRBbW91bnRzLnB1c2goXG4gICAgICAgIHsgYWNjb3VudElEOiBidWlsZEhlZGVyYUFjY291bnRJRChyZWNpcGllbnQuYWRkcmVzcyksIGFtb3VudDogTG9uZy5mcm9tU3RyaW5nKHJlY2lwaWVudC5hbW91bnQpIH0gLy8gcmVjaXBpZW50XG4gICAgICApO1xuICAgICAgdG90YWxTZW5kID0gdG90YWxTZW5kLnBsdXMocmVjaXBpZW50LmFtb3VudCk7XG4gICAgfSk7XG4gICAgYWNjb3VudEFtb3VudHNbMF0uYW1vdW50ID0gTG9uZy5mcm9tU3RyaW5nKHRvdGFsU2VuZC50b1N0cmluZygpKS5uZWdhdGUoKTsgLy8gdXBkYXRlIHNlbmRlciBzZW5kIGFtb3VudFxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFjY291bnRBbW91bnRzOiBhY2NvdW50QW1vdW50cyxcbiAgICB9O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICBjb25zdCB0cmFuc2ZlckRhdGEgPSB0eC50eEJvZHkuY3J5cHRvVHJhbnNmZXI7XG4gICAgaWYgKHRyYW5zZmVyRGF0YSAmJiB0cmFuc2ZlckRhdGEudHJhbnNmZXJzICYmIHRyYW5zZmVyRGF0YS50cmFuc2ZlcnMuYWNjb3VudEFtb3VudHMpIHtcbiAgICAgIHRoaXMuaW5pdFRyYW5zZmVycyh0cmFuc2ZlckRhdGEudHJhbnNmZXJzLmFjY291bnRBbW91bnRzKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgdHJhbnNmZXIgc3BlY2lmaWMgZGF0YSwgZ2V0dGluZyB0aGUgcmVjaXBpZW50IGFjY291bnRcbiAgICogcmVwcmVzZW50ZWQgYnkgdGhlIGVsZW1lbnQgd2l0aCBhIHBvc2l0aXZlIGFtb3VudCBvbiB0aGUgdHJhbnNmZXIgZWxlbWVudC5cbiAgICogVGhlIG5lZ2F0aXZlIGFtb3VudCByZXByZXNlbnRzIHRoZSBzb3VyY2UgYWNjb3VudCwgc28gaXQncyBpZ25vcmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3Byb3RvfSB0cmFuc2ZlcnMgLSBBcnJheSBvZiBvYmplY3RzIHdoaWNoIGNvbnRhaW5zIGFjY291bnRJRCBhbmQgdHJhbnNmZXJyZWQgYW1vdW50XG4gICAqL1xuICBwcm90ZWN0ZWQgaW5pdFRyYW5zZmVycyh0cmFuc2ZlcnM6IHByb3RvLklBY2NvdW50QW1vdW50W10pOiB2b2lkIHtcbiAgICB0cmFuc2ZlcnMuZm9yRWFjaCgodHJhbnNmZXJEYXRhKSA9PiB7XG4gICAgICBjb25zdCBhbW91bnQgPSBMb25nLmZyb21WYWx1ZSh0cmFuc2ZlckRhdGEuYW1vdW50ISk7XG4gICAgICBpZiAoYW1vdW50LmlzUG9zaXRpdmUoKSkge1xuICAgICAgICB0aGlzLnNlbmQoe1xuICAgICAgICAgIGFkZHJlc3M6IHN0cmluZ2lmeUFjY291bnRJZCh0cmFuc2ZlckRhdGEuYWNjb3VudElEISksXG4gICAgICAgICAgYW1vdW50OiBhbW91bnQudG9TdHJpbmcoKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvLyByZWdpb24gVHJhbnNmZXIgZmllbGRzXG5cbiAgLy8gQ3VycmVudGx5IHdvcmtzIGZvciBvbmUgcmVjaXBpZW50IGJ5IHVzaW5nIGV4YXRjbHkgb25lIG9mIHRvICsgYW1vdW50IG9yIHNlbmQgZnVuY3Rpb25cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIC0gVXNlIHRoZSBzZW5kIG1ldGhvZCBpbnN0ZWFkXG4gICAqXG4gICAqIFNldCB0aGUgZGVzdGluYXRpb24gYWRkcmVzcyB3aGVyZSB0aGUgZnVuZHMgd2lsbCBiZSBzZW50LFxuICAgKiBpdCBtYXkgdGFrZSB0aGUgZm9ybWF0IGAnPHNoYXJkPi48cmVhbG0+LjxhY2NvdW50PidgIG9yIGAnPGFjY291bnQ+J2BcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgLSBUaGUgYWRkcmVzcyB0byB0cmFuc2ZlciBmdW5kcyB0b1xuICAgKiBAcmV0dXJucyB7VHJhbnNmZXJCdWlsZGVyfSAtIFRoZSBidWlsZGVyIHdpdGggdGhlIG5ldyBwYXJhbWV0ZXIgc2V0XG4gICAqL1xuICB0byhhZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5fcmVjaXBpZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICB0aHJvdyBuZXcgRHVwbGljYXRlTWV0aG9kRXJyb3IoJ0ludmFsaWQgbWV0aG9kOiBzZW5kIGFscmVhZHkgdXNlZCcpO1xuICAgIH1cbiAgICBpZiAoIWlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICAgIH1cbiAgICB0aGlzLl90b0FkZHJlc3MgPSBhZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIC0gVXNlIHRoZSBzZW5kIG1ldGhvZCBpbnN0ZWFkXG4gICAqXG4gICAqIFNldCB0aGUgYW1vdW50IHRvIGJlIHRyYW5zZmVycmVkXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhbW91bnQgLSBBbW91bnQgdG8gdHJhbnNmZXIgaW4gdGlueUJhcnMgKHRoZXJlIGFyZSAxMDAsMDAwLDAwMCB0aW55QmFycyBpbiBvbmUgSGJhcilcbiAgICogQHJldHVybnMge1RyYW5zZmVyQnVpbGRlcn0gLSBUaGUgYnVpbGRlciB3aXRoIHRoZSBuZXcgcGFyYW1ldGVyIHNldFxuICAgKi9cbiAgYW1vdW50KGFtb3VudDogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuX3JlY2lwaWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhyb3cgbmV3IER1cGxpY2F0ZU1ldGhvZEVycm9yKCdJbnZhbGlkIG1ldGhvZDogc2VuZCBhbHJlYWR5IHVzZWQnKTtcbiAgICB9XG4gICAgaWYgKCFpc1ZhbGlkQW1vdW50KGFtb3VudCkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBhbW91bnQnKTtcbiAgICB9XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHNlbmQocmVjaXBpZW50OiBSZWNpcGllbnQpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5fYW1vdW50IHx8IHRoaXMuX3RvQWRkcmVzcykge1xuICAgICAgdGhyb3cgbmV3IER1cGxpY2F0ZU1ldGhvZEVycm9yKCdJbnZhbGlkIG1ldGhvZDogdG8gb3IgYW1vdW50IGFscmVhZHkgdXNlZCcpO1xuICAgIH1cbiAgICBpZiAocmVjaXBpZW50LnRva2VuTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdJbnZhbGlkIHRva2VuIG5hbWUgbXVzdCBiZSBlbXB0eScpO1xuICAgIH1cbiAgICByZXR1cm4gc3VwZXIuc2VuZChyZWNpcGllbnQpO1xuICB9XG4gIC8vIGVuZHJlZ2lvblxuXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZU1hbmRhdG9yeUZpZWxkcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fdG9BZGRyZXNzICYmIHRoaXMuX2Ftb3VudCkge1xuICAgICAgdGhpcy5fcmVjaXBpZW50cy5wdXNoKHtcbiAgICAgICAgYWRkcmVzczogdGhpcy5fdG9BZGRyZXNzLFxuICAgICAgICBhbW91bnQ6IHRoaXMuX2Ftb3VudCxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBzdXBlci52YWxpZGF0ZU1hbmRhdG9yeUZpZWxkcygpO1xuICB9XG4gIC8vIGVuZHJlZ2lvblxufVxuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const DEFAULT_SIGNER_NUMBER = 3;
|
|
2
|
+
export declare enum HederaTransactionTypes {
|
|
3
|
+
Transfer = "cryptoTransfer",
|
|
4
|
+
CreateAccount = "cryptoCreateAccount",
|
|
5
|
+
TokenAssociateToAccount = "tokenAssociate",
|
|
6
|
+
TokenDissociateFromAccount = "tokenAssociate"
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC,oBAAY,sBAAsB;IAChC,QAAQ,mBAAmB;IAC3B,aAAa,wBAAwB;IACrC,uBAAuB,mBAAmB;IAC1C,0BAA0B,mBAAmB;CAC9C"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HederaTransactionTypes = exports.DEFAULT_SIGNER_NUMBER = void 0;
|
|
4
|
+
exports.DEFAULT_SIGNER_NUMBER = 3;
|
|
5
|
+
var HederaTransactionTypes;
|
|
6
|
+
(function (HederaTransactionTypes) {
|
|
7
|
+
HederaTransactionTypes["Transfer"] = "cryptoTransfer";
|
|
8
|
+
HederaTransactionTypes["CreateAccount"] = "cryptoCreateAccount";
|
|
9
|
+
HederaTransactionTypes["TokenAssociateToAccount"] = "tokenAssociate";
|
|
10
|
+
HederaTransactionTypes["TokenDissociateFromAccount"] = "tokenAssociate";
|
|
11
|
+
})(HederaTransactionTypes || (exports.HederaTransactionTypes = HederaTransactionTypes = {}));
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxxQkFBcUIsR0FBRyxDQUFDLENBQUM7QUFFdkMsSUFBWSxzQkFLWDtBQUxELFdBQVksc0JBQXNCO0lBQ2hDLHFEQUEyQixDQUFBO0lBQzNCLCtEQUFxQyxDQUFBO0lBQ3JDLG9FQUEwQyxDQUFBO0lBQzFDLHVFQUE2QyxDQUFBO0FBQy9DLENBQUMsRUFMVyxzQkFBc0Isc0NBQXRCLHNCQUFzQixRQUtqQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBERUZBVUxUX1NJR05FUl9OVU1CRVIgPSAzO1xuXG5leHBvcnQgZW51bSBIZWRlcmFUcmFuc2FjdGlvblR5cGVzIHtcbiAgVHJhbnNmZXIgPSAnY3J5cHRvVHJhbnNmZXInLFxuICBDcmVhdGVBY2NvdW50ID0gJ2NyeXB0b0NyZWF0ZUFjY291bnQnLFxuICBUb2tlbkFzc29jaWF0ZVRvQWNjb3VudCA9ICd0b2tlbkFzc29jaWF0ZScsXG4gIFRva2VuRGlzc29jaWF0ZUZyb21BY2NvdW50ID0gJ3Rva2VuQXNzb2NpYXRlJyxcbn1cbiJdfQ==
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { KeyPair } from '.';
|
|
2
|
+
import { HederaTransactionTypes } from './constants';
|
|
3
|
+
export interface TxData {
|
|
4
|
+
id: string;
|
|
5
|
+
hash?: string;
|
|
6
|
+
from: string;
|
|
7
|
+
data: string;
|
|
8
|
+
fee: number;
|
|
9
|
+
startTime: string;
|
|
10
|
+
validDuration: string;
|
|
11
|
+
node: string;
|
|
12
|
+
memo?: string;
|
|
13
|
+
/** @deprecated Use instructionsData.params.recipients instead */
|
|
14
|
+
to?: string;
|
|
15
|
+
/** @deprecated Use instructionsData.params.recipients instead */
|
|
16
|
+
amount?: string;
|
|
17
|
+
instructionsData?: InstructionParams;
|
|
18
|
+
}
|
|
19
|
+
export interface Recipient {
|
|
20
|
+
address: string;
|
|
21
|
+
amount: string;
|
|
22
|
+
tokenName?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface HederaNode {
|
|
25
|
+
nodeId: string;
|
|
26
|
+
}
|
|
27
|
+
export interface SignatureData {
|
|
28
|
+
signature: string;
|
|
29
|
+
keyPair: KeyPair;
|
|
30
|
+
}
|
|
31
|
+
export interface AddressDetails {
|
|
32
|
+
address: string;
|
|
33
|
+
memoId?: string;
|
|
34
|
+
}
|
|
35
|
+
export type InstructionParams = Transfer | AssociateAccount;
|
|
36
|
+
export interface Transfer {
|
|
37
|
+
type: HederaTransactionTypes.Transfer;
|
|
38
|
+
params: {
|
|
39
|
+
tokenName?: string;
|
|
40
|
+
recipients: Recipient[];
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
export interface AssociateAccount {
|
|
44
|
+
type: HederaTransactionTypes.TokenAssociateToAccount;
|
|
45
|
+
params: {
|
|
46
|
+
accountId: string;
|
|
47
|
+
tokenNames: string[];
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=iface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AAC5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;CACtC;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,gBAAgB,CAAC;AAE5D,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,sBAAsB,CAAC,QAAQ,CAAC;IACtC,MAAM,EAAE;QACN,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,SAAS,EAAE,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,sBAAsB,CAAC,uBAAuB,CAAC;IACrD,MAAM,EAAE;QACN,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC;CACH"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLic7XG5pbXBvcnQgeyBIZWRlcmFUcmFuc2FjdGlvblR5cGVzIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFR4RGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIGhhc2g/OiBzdHJpbmc7XG4gIGZyb206IHN0cmluZztcbiAgZGF0YTogc3RyaW5nO1xuICBmZWU6IG51bWJlcjtcbiAgc3RhcnRUaW1lOiBzdHJpbmc7XG4gIHZhbGlkRHVyYXRpb246IHN0cmluZztcbiAgbm9kZTogc3RyaW5nO1xuICBtZW1vPzogc3RyaW5nO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIGluc3RydWN0aW9uc0RhdGEucGFyYW1zLnJlY2lwaWVudHMgaW5zdGVhZCAqL1xuICB0bz86IHN0cmluZztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBpbnN0cnVjdGlvbnNEYXRhLnBhcmFtcy5yZWNpcGllbnRzIGluc3RlYWQgKi9cbiAgYW1vdW50Pzogc3RyaW5nO1xuICBpbnN0cnVjdGlvbnNEYXRhPzogSW5zdHJ1Y3Rpb25QYXJhbXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVjaXBpZW50IHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhlZGVyYU5vZGUge1xuICBub2RlSWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaWduYXR1cmVEYXRhIHtcbiAgc2lnbmF0dXJlOiBzdHJpbmc7XG4gIGtleVBhaXI6IEtleVBhaXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWRkcmVzc0RldGFpbHMge1xuICBhZGRyZXNzOiBzdHJpbmc7XG4gIG1lbW9JZD86IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgSW5zdHJ1Y3Rpb25QYXJhbXMgPSBUcmFuc2ZlciB8IEFzc29jaWF0ZUFjY291bnQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNmZXIge1xuICB0eXBlOiBIZWRlcmFUcmFuc2FjdGlvblR5cGVzLlRyYW5zZmVyO1xuICBwYXJhbXM6IHtcbiAgICB0b2tlbk5hbWU/OiBzdHJpbmc7XG4gICAgcmVjaXBpZW50czogUmVjaXBpZW50W107XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXNzb2NpYXRlQWNjb3VudCB7XG4gIHR5cGU6IEhlZGVyYVRyYW5zYWN0aW9uVHlwZXMuVG9rZW5Bc3NvY2lhdGVUb0FjY291bnQ7XG4gIHBhcmFtczoge1xuICAgIGFjY291bnRJZDogc3RyaW5nO1xuICAgIHRva2VuTmFtZXM6IHN0cmluZ1tdO1xuICB9O1xufVxuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as Utils from './utils';
|
|
2
|
+
export { KeyPair } from './keyPair';
|
|
3
|
+
export { Transaction } from './transaction';
|
|
4
|
+
export { TransactionBuilderFactory } from './transactionBuilderFactory';
|
|
5
|
+
export { TransferBuilder } from './transferBuilder';
|
|
6
|
+
export { CoinTransferBuilder } from './coinTransferBuilder';
|
|
7
|
+
export { TokenTransferBuilder } from './tokenTransferBuilder';
|
|
8
|
+
export { TokenAssociateBuilder } from './tokenAssociateBuilder';
|
|
9
|
+
export { Utils };
|
|
10
|
+
//# 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,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.Utils = exports.TokenAssociateBuilder = exports.TokenTransferBuilder = exports.CoinTransferBuilder = exports.TransferBuilder = exports.TransactionBuilderFactory = exports.Transaction = exports.KeyPair = void 0;
|
|
37
|
+
const Utils = __importStar(require("./utils"));
|
|
38
|
+
exports.Utils = Utils;
|
|
39
|
+
var keyPair_1 = require("./keyPair");
|
|
40
|
+
Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
|
|
41
|
+
var transaction_1 = require("./transaction");
|
|
42
|
+
Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return transaction_1.Transaction; } });
|
|
43
|
+
var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
|
|
44
|
+
Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
|
|
45
|
+
var transferBuilder_1 = require("./transferBuilder");
|
|
46
|
+
Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
|
|
47
|
+
var coinTransferBuilder_1 = require("./coinTransferBuilder");
|
|
48
|
+
Object.defineProperty(exports, "CoinTransferBuilder", { enumerable: true, get: function () { return coinTransferBuilder_1.CoinTransferBuilder; } });
|
|
49
|
+
var tokenTransferBuilder_1 = require("./tokenTransferBuilder");
|
|
50
|
+
Object.defineProperty(exports, "TokenTransferBuilder", { enumerable: true, get: function () { return tokenTransferBuilder_1.TokenTransferBuilder; } });
|
|
51
|
+
var tokenAssociateBuilder_1 = require("./tokenAssociateBuilder");
|
|
52
|
+
Object.defineProperty(exports, "TokenAssociateBuilder", { enumerable: true, get: function () { return tokenAssociateBuilder_1.TokenAssociateBuilder; } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUFpQztBQVN4QixzQkFBSztBQVBkLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsNkNBQTRDO0FBQW5DLDBHQUFBLFdBQVcsT0FBQTtBQUNwQix5RUFBd0U7QUFBL0Qsc0lBQUEseUJBQXlCLE9BQUE7QUFDbEMscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4Qiw2REFBNEQ7QUFBbkQsMEhBQUEsbUJBQW1CLE9BQUE7QUFDNUIsK0RBQThEO0FBQXJELDRIQUFBLG9CQUFvQixPQUFBO0FBQzdCLGlFQUFnRTtBQUF2RCw4SEFBQSxxQkFBcUIsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5JztcbmV4cG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IENvaW5UcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL2NvaW5UcmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgVG9rZW5UcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3Rva2VuVHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IFRva2VuQXNzb2NpYXRlQnVpbGRlciB9IGZyb20gJy4vdG9rZW5Bc3NvY2lhdGVCdWlsZGVyJztcbmV4cG9ydCB7IFV0aWxzIH07XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AddressFormat, DefaultKeys, Ed25519KeyPair, KeyPairOptions } from '@bitgo-beta/sdk-core';
|
|
2
|
+
export declare const PUBLIC_KEY_PREFIX = "302a300506032b6570032100";
|
|
3
|
+
export declare class KeyPair extends Ed25519KeyPair {
|
|
4
|
+
/**
|
|
5
|
+
* Public constructor. By default, creates a key pair with a random master seed.
|
|
6
|
+
*
|
|
7
|
+
* @param { KeyPairOptions } source Either a master seed, a private key, or a public key
|
|
8
|
+
*/
|
|
9
|
+
constructor(source?: KeyPairOptions);
|
|
10
|
+
/**
|
|
11
|
+
* Hedera default keys format is a pair of Uint8Array keys
|
|
12
|
+
*
|
|
13
|
+
* @param {boolean} raw defines if the key is returned in raw or protocol default format
|
|
14
|
+
* @returns { DefaultKeys } The keys in the defined format
|
|
15
|
+
*/
|
|
16
|
+
getKeys(raw?: boolean): DefaultKeys;
|
|
17
|
+
/** @inheritdoc */
|
|
18
|
+
getAddress(format?: AddressFormat): string;
|
|
19
|
+
/** @inheritdoc */
|
|
20
|
+
recordKeysFromPublicKeyInProtocolFormat(pub: string): DefaultKeys;
|
|
21
|
+
/** @inheritdoc */
|
|
22
|
+
recordKeysFromPrivateKeyInProtocolFormat(prv: string): DefaultKeys;
|
|
23
|
+
}
|
|
24
|
+
//# 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,aAAa,EAAE,WAAW,EAAE,cAAc,EAAc,cAAc,EAAgB,MAAM,sBAAsB,CAAC;AAG5H,eAAO,MAAM,iBAAiB,6BAA6B,CAAC;AAG5D,qBAAa,OAAQ,SAAQ,cAAc;IACzC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,cAAc;IAInC;;;;;OAKG;IACH,OAAO,CAAC,GAAG,UAAQ,GAAG,WAAW;IAajC,kBAAkB;IAClB,UAAU,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM;IAI1C,kBAAkB;IAClB,uCAAuC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAUjE,kBAAkB;IAClB,wCAAwC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;CAgBnE"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KeyPair = exports.PUBLIC_KEY_PREFIX = void 0;
|
|
4
|
+
const sdk_1 = require("@hashgraph/sdk");
|
|
5
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
6
|
+
const utils_1 = require("./utils");
|
|
7
|
+
exports.PUBLIC_KEY_PREFIX = '302a300506032b6570032100';
|
|
8
|
+
const PRIVATE_KEY_PREFIX = '302e020100300506032b657004220420';
|
|
9
|
+
class KeyPair extends sdk_core_1.Ed25519KeyPair {
|
|
10
|
+
/**
|
|
11
|
+
* Public constructor. By default, creates a key pair with a random master seed.
|
|
12
|
+
*
|
|
13
|
+
* @param { KeyPairOptions } source Either a master seed, a private key, or a public key
|
|
14
|
+
*/
|
|
15
|
+
constructor(source) {
|
|
16
|
+
super(source);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Hedera default keys format is a pair of Uint8Array keys
|
|
20
|
+
*
|
|
21
|
+
* @param {boolean} raw defines if the key is returned in raw or protocol default format
|
|
22
|
+
* @returns { DefaultKeys } The keys in the defined format
|
|
23
|
+
*/
|
|
24
|
+
getKeys(raw = false) {
|
|
25
|
+
const pub = sdk_1.PublicKey.fromString(this.keyPair.pub).toString();
|
|
26
|
+
const result = {
|
|
27
|
+
pub: raw ? pub.slice(exports.PUBLIC_KEY_PREFIX.length) : pub,
|
|
28
|
+
};
|
|
29
|
+
if (this.keyPair.prv) {
|
|
30
|
+
const prv = sdk_1.PrivateKey.fromString(this.keyPair.prv).toString();
|
|
31
|
+
result.prv = raw ? prv.slice(PRIVATE_KEY_PREFIX.length) : prv;
|
|
32
|
+
}
|
|
33
|
+
return result;
|
|
34
|
+
}
|
|
35
|
+
/** @inheritdoc */
|
|
36
|
+
getAddress(format) {
|
|
37
|
+
throw new sdk_core_1.NotSupported('Address derivation is not supported in Hedera');
|
|
38
|
+
}
|
|
39
|
+
/** @inheritdoc */
|
|
40
|
+
recordKeysFromPublicKeyInProtocolFormat(pub) {
|
|
41
|
+
try {
|
|
42
|
+
const hederaPub = sdk_1.PublicKey.fromString(pub.toLowerCase()).toString();
|
|
43
|
+
const ed25519Pub = (0, utils_1.removePrefix)(exports.PUBLIC_KEY_PREFIX, hederaPub);
|
|
44
|
+
return { pub: ed25519Pub };
|
|
45
|
+
}
|
|
46
|
+
catch (e) {
|
|
47
|
+
throw new sdk_core_1.InvalidKey('Invalid public key: ' + pub);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/** @inheritdoc */
|
|
51
|
+
recordKeysFromPrivateKeyInProtocolFormat(prv) {
|
|
52
|
+
if (!/^([a-f\d]{2})+$/i.test(prv)) {
|
|
53
|
+
throw new sdk_core_1.InvalidKey('Invalid private key length. Must be a hex and multiple of 2');
|
|
54
|
+
}
|
|
55
|
+
try {
|
|
56
|
+
const hederaPrv = sdk_1.PrivateKey.fromString(prv);
|
|
57
|
+
const ed25519Prv = (0, utils_1.removePrefix)(PRIVATE_KEY_PREFIX, hederaPrv.toString());
|
|
58
|
+
const ed25519Pub = (0, utils_1.removePrefix)(exports.PUBLIC_KEY_PREFIX, hederaPrv.publicKey.toString());
|
|
59
|
+
return {
|
|
60
|
+
prv: ed25519Prv,
|
|
61
|
+
pub: ed25519Pub,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
catch (e) {
|
|
65
|
+
throw new sdk_core_1.InvalidKey('Invalid private key');
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
exports.KeyPair = KeyPair;
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx3Q0FBdUQ7QUFDdkQsbURBQTRIO0FBQzVILG1DQUF1QztBQUUxQixRQUFBLGlCQUFpQixHQUFHLDBCQUEwQixDQUFDO0FBQzVELE1BQU0sa0JBQWtCLEdBQUcsa0NBQWtDLENBQUM7QUFFOUQsTUFBYSxPQUFRLFNBQVEseUJBQWM7SUFDekM7Ozs7T0FJRztJQUNILFlBQVksTUFBdUI7UUFDakMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxHQUFHLEdBQUcsS0FBSztRQUNqQixNQUFNLEdBQUcsR0FBRyxlQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDOUQsTUFBTSxNQUFNLEdBQWdCO1lBQzFCLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMseUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUc7U0FDckQsQ0FBQztRQUVGLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNyQixNQUFNLEdBQUcsR0FBRyxnQkFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQy9ELE1BQU0sQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDaEUsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsVUFBVSxDQUFDLE1BQXNCO1FBQy9CLE1BQU0sSUFBSSx1QkFBWSxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix1Q0FBdUMsQ0FBQyxHQUFXO1FBQ2pELElBQUksQ0FBQztZQUNILE1BQU0sU0FBUyxHQUFHLGVBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckUsTUFBTSxVQUFVLEdBQUcsSUFBQSxvQkFBWSxFQUFDLHlCQUFpQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQzlELE9BQU8sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLENBQUM7UUFDN0IsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxNQUFNLElBQUkscUJBQVUsQ0FBQyxzQkFBc0IsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNyRCxDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix3Q0FBd0MsQ0FBQyxHQUFXO1FBQ2xELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNsQyxNQUFNLElBQUkscUJBQVUsQ0FBQyw2REFBNkQsQ0FBQyxDQUFDO1FBQ3RGLENBQUM7UUFDRCxJQUFJLENBQUM7WUFDSCxNQUFNLFNBQVMsR0FBRyxnQkFBVSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM3QyxNQUFNLFVBQVUsR0FBRyxJQUFBLG9CQUFZLEVBQUMsa0JBQWtCLEVBQUUsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDMUUsTUFBTSxVQUFVLEdBQUcsSUFBQSxvQkFBWSxFQUFDLHlCQUFpQixFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUNuRixPQUFPO2dCQUNMLEdBQUcsRUFBRSxVQUFVO2dCQUNmLEdBQUcsRUFBRSxVQUFVO2FBQ2hCLENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxxQkFBVSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDOUMsQ0FBQztJQUNILENBQUM7Q0FDRjtBQTlERCwwQkE4REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcml2YXRlS2V5LCBQdWJsaWNLZXkgfSBmcm9tICdAaGFzaGdyYXBoL3Nkayc7XG5pbXBvcnQgeyBBZGRyZXNzRm9ybWF0LCBEZWZhdWx0S2V5cywgRWQyNTUxOUtleVBhaXIsIEludmFsaWRLZXksIEtleVBhaXJPcHRpb25zLCBOb3RTdXBwb3J0ZWQgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyByZW1vdmVQcmVmaXggfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFBVQkxJQ19LRVlfUFJFRklYID0gJzMwMmEzMDA1MDYwMzJiNjU3MDAzMjEwMCc7XG5jb25zdCBQUklWQVRFX0tFWV9QUkVGSVggPSAnMzAyZTAyMDEwMDMwMDUwNjAzMmI2NTcwMDQyMjA0MjAnO1xuXG5leHBvcnQgY2xhc3MgS2V5UGFpciBleHRlbmRzIEVkMjU1MTlLZXlQYWlyIHtcbiAgLyoqXG4gICAqIFB1YmxpYyBjb25zdHJ1Y3Rvci4gQnkgZGVmYXVsdCwgY3JlYXRlcyBhIGtleSBwYWlyIHdpdGggYSByYW5kb20gbWFzdGVyIHNlZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7IEtleVBhaXJPcHRpb25zIH0gc291cmNlIEVpdGhlciBhIG1hc3RlciBzZWVkLCBhIHByaXZhdGUga2V5LCBvciBhIHB1YmxpYyBrZXlcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNvdXJjZT86IEtleVBhaXJPcHRpb25zKSB7XG4gICAgc3VwZXIoc291cmNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIZWRlcmEgZGVmYXVsdCBrZXlzIGZvcm1hdCBpcyBhIHBhaXIgb2YgVWludDhBcnJheSBrZXlzXG4gICAqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gcmF3IGRlZmluZXMgaWYgdGhlIGtleSBpcyByZXR1cm5lZCBpbiByYXcgb3IgcHJvdG9jb2wgZGVmYXVsdCBmb3JtYXRcbiAgICogQHJldHVybnMgeyBEZWZhdWx0S2V5cyB9IFRoZSBrZXlzIGluIHRoZSBkZWZpbmVkIGZvcm1hdFxuICAgKi9cbiAgZ2V0S2V5cyhyYXcgPSBmYWxzZSk6IERlZmF1bHRLZXlzIHtcbiAgICBjb25zdCBwdWIgPSBQdWJsaWNLZXkuZnJvbVN0cmluZyh0aGlzLmtleVBhaXIucHViKS50b1N0cmluZygpO1xuICAgIGNvbnN0IHJlc3VsdDogRGVmYXVsdEtleXMgPSB7XG4gICAgICBwdWI6IHJhdyA/IHB1Yi5zbGljZShQVUJMSUNfS0VZX1BSRUZJWC5sZW5ndGgpIDogcHViLFxuICAgIH07XG5cbiAgICBpZiAodGhpcy5rZXlQYWlyLnBydikge1xuICAgICAgY29uc3QgcHJ2ID0gUHJpdmF0ZUtleS5mcm9tU3RyaW5nKHRoaXMua2V5UGFpci5wcnYpLnRvU3RyaW5nKCk7XG4gICAgICByZXN1bHQucHJ2ID0gcmF3ID8gcHJ2LnNsaWNlKFBSSVZBVEVfS0VZX1BSRUZJWC5sZW5ndGgpIDogcHJ2O1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEFkZHJlc3MoZm9ybWF0PzogQWRkcmVzc0Zvcm1hdCk6IHN0cmluZyB7XG4gICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnQWRkcmVzcyBkZXJpdmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgaW4gSGVkZXJhJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcmVjb3JkS2V5c0Zyb21QdWJsaWNLZXlJblByb3RvY29sRm9ybWF0KHB1Yjogc3RyaW5nKTogRGVmYXVsdEtleXMge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBoZWRlcmFQdWIgPSBQdWJsaWNLZXkuZnJvbVN0cmluZyhwdWIudG9Mb3dlckNhc2UoKSkudG9TdHJpbmcoKTtcbiAgICAgIGNvbnN0IGVkMjU1MTlQdWIgPSByZW1vdmVQcmVmaXgoUFVCTElDX0tFWV9QUkVGSVgsIGhlZGVyYVB1Yik7XG4gICAgICByZXR1cm4geyBwdWI6IGVkMjU1MTlQdWIgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEtleSgnSW52YWxpZCBwdWJsaWMga2V5OiAnICsgcHViKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcmVjb3JkS2V5c0Zyb21Qcml2YXRlS2V5SW5Qcm90b2NvbEZvcm1hdChwcnY6IHN0cmluZyk6IERlZmF1bHRLZXlzIHtcbiAgICBpZiAoIS9eKFthLWZcXGRdezJ9KSskL2kudGVzdChwcnYpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEtleSgnSW52YWxpZCBwcml2YXRlIGtleSBsZW5ndGguIE11c3QgYmUgYSBoZXggYW5kIG11bHRpcGxlIG9mIDInKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGhlZGVyYVBydiA9IFByaXZhdGVLZXkuZnJvbVN0cmluZyhwcnYpO1xuICAgICAgY29uc3QgZWQyNTUxOVBydiA9IHJlbW92ZVByZWZpeChQUklWQVRFX0tFWV9QUkVGSVgsIGhlZGVyYVBydi50b1N0cmluZygpKTtcbiAgICAgIGNvbnN0IGVkMjU1MTlQdWIgPSByZW1vdmVQcmVmaXgoUFVCTElDX0tFWV9QUkVGSVgsIGhlZGVyYVBydi5wdWJsaWNLZXkudG9TdHJpbmcoKSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwcnY6IGVkMjU1MTlQcnYsXG4gICAgICAgIHB1YjogZWQyNTUxOVB1YixcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRLZXkoJ0ludmFsaWQgcHJpdmF0ZSBrZXknKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
2
|
+
import { BaseKey } from '@bitgo-beta/sdk-core';
|
|
3
|
+
import { Transaction } from './transaction';
|
|
4
|
+
import { TransactionBuilder } from './transactionBuilder';
|
|
5
|
+
export declare class TokenAssociateBuilder extends TransactionBuilder {
|
|
6
|
+
private readonly _txBodyData;
|
|
7
|
+
private _account;
|
|
8
|
+
private _tokenIds;
|
|
9
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
10
|
+
/** @inheritdoc */
|
|
11
|
+
initBuilder(tx: Transaction): void;
|
|
12
|
+
private initTokenAssociation;
|
|
13
|
+
/** @inheritdoc */
|
|
14
|
+
protected signImplementation(key: BaseKey): Transaction;
|
|
15
|
+
/** @inheritdoc */
|
|
16
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
17
|
+
/** @inheritdoc */
|
|
18
|
+
validateMandatoryFields(): void;
|
|
19
|
+
/**
|
|
20
|
+
* Set account to associate with tokens, defaults to this._source.address value
|
|
21
|
+
*
|
|
22
|
+
* @param {string} accountID - The name of the account to associate to the transaction
|
|
23
|
+
* @returns {TokenAssociateBuilder} - This token association builder
|
|
24
|
+
*/
|
|
25
|
+
account(accountID: string): this;
|
|
26
|
+
/**
|
|
27
|
+
* Add a token to associate to the multisig wallet.
|
|
28
|
+
*
|
|
29
|
+
* @param {string} tokenName - The name of the token to associate to the transaction
|
|
30
|
+
* @returns {TokenAssociateBuilder} - This token association builder
|
|
31
|
+
*/
|
|
32
|
+
tokens(tokenName: string): this;
|
|
33
|
+
private buildTokenData;
|
|
34
|
+
private buildAccountData;
|
|
35
|
+
private validateAccount;
|
|
36
|
+
private validateToken;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=tokenAssociateBuilder.d.ts.map
|