@alephium/web3 0.2.0-test.1 → 0.2.2
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/.eslintignore +2 -2
- package/README.md +2 -135
- package/dist/alephium-web3.min.js +1 -1
- package/dist/alephium-web3.min.js.LICENSE.txt +0 -17
- package/dist/alephium-web3.min.js.map +1 -1
- package/dist/src/api/api-alephium.d.ts +116 -18
- package/dist/src/api/api-alephium.js +146 -81
- package/dist/src/api/api-explorer.d.ts +178 -51
- package/dist/src/api/api-explorer.js +172 -37
- package/dist/src/api/index.d.ts +40 -5
- package/dist/src/api/index.js +115 -7
- package/dist/src/api/types.d.ts +23 -0
- package/dist/src/api/types.js +235 -0
- package/dist/src/api/utils.d.ts +6 -0
- package/dist/{scripts/rename-gitignore.js → src/api/utils.js} +11 -6
- package/dist/src/contract/contract.d.ts +69 -55
- package/dist/src/contract/contract.js +241 -387
- package/dist/src/contract/events.d.ts +4 -4
- package/dist/src/contract/events.js +2 -1
- package/dist/src/contract/index.js +5 -1
- package/dist/src/contract/ralph.d.ts +5 -4
- package/dist/src/contract/ralph.js +27 -1
- package/dist/src/global.d.ts +6 -2
- package/dist/src/global.js +19 -3
- package/dist/src/index.d.ts +2 -1
- package/dist/src/index.js +23 -2
- package/dist/src/signer/index.d.ts +0 -1
- package/dist/src/signer/index.js +5 -2
- package/dist/src/signer/signer.d.ts +59 -60
- package/dist/src/signer/signer.js +99 -70
- package/dist/src/transaction/index.d.ts +0 -1
- package/dist/src/transaction/index.js +5 -2
- package/dist/src/transaction/status.d.ts +2 -1
- package/dist/src/transaction/status.js +2 -1
- package/dist/src/utils/bs58.d.ts +1 -0
- package/dist/src/utils/bs58.js +13 -1
- package/dist/src/utils/index.d.ts +0 -1
- package/dist/src/utils/index.js +5 -2
- package/dist/src/utils/subscription.d.ts +0 -2
- package/dist/src/utils/subscription.js +0 -2
- package/dist/src/utils/utils.d.ts +4 -9
- package/dist/src/utils/utils.js +20 -24
- package/jest-config.json +11 -0
- package/package.json +11 -45
- package/src/api/api-alephium.ts +163 -26
- package/src/api/api-explorer.ts +247 -54
- package/src/api/index.ts +140 -6
- package/src/api/types.ts +229 -0
- package/{scripts/rename-gitignore.js → src/api/utils.ts} +7 -6
- package/src/contract/contract.ts +405 -432
- package/src/contract/events.ts +6 -5
- package/src/contract/ralph.ts +29 -4
- package/src/global.ts +23 -3
- package/src/index.ts +7 -1
- package/src/signer/index.ts +0 -1
- package/src/signer/signer.ts +165 -135
- package/src/transaction/index.ts +0 -1
- package/src/transaction/status.ts +5 -2
- package/src/utils/bs58.ts +11 -0
- package/src/utils/index.ts +0 -1
- package/src/utils/subscription.ts +0 -4
- package/src/utils/utils.ts +11 -19
- package/webpack.config.js +3 -0
- package/.eslintrc.json +0 -21
- package/LICENSE +0 -165
- package/contracts/add/add.ral +0 -13
- package/contracts/greeter/greeter.ral +0 -7
- package/contracts/greeter/greeter_interface.ral +0 -4
- package/contracts/greeter_main.ral +0 -7
- package/contracts/main.ral +0 -4
- package/contracts/sub/sub.ral +0 -10
- package/contracts/test/metadata.ral +0 -18
- package/contracts/test/warnings.ral +0 -8
- package/dev/user.conf +0 -29
- package/dist/scripts/create-project.d.ts +0 -2
- package/dist/scripts/create-project.js +0 -125
- package/dist/scripts/rename-gitignore.d.ts +0 -1
- package/dist/scripts/start-devnet.d.ts +0 -1
- package/dist/scripts/start-devnet.js +0 -131
- package/dist/scripts/stop-devnet.d.ts +0 -1
- package/dist/scripts/stop-devnet.js +0 -32
- package/dist/src/signer/node-wallet.d.ts +0 -11
- package/dist/src/signer/node-wallet.js +0 -57
- package/dist/src/test/index.d.ts +0 -6
- package/dist/src/test/index.js +0 -41
- package/dist/src/test/privatekey-wallet.d.ts +0 -11
- package/dist/src/test/privatekey-wallet.js +0 -68
- package/dist/src/transaction/sign-verify.d.ts +0 -2
- package/dist/src/transaction/sign-verify.js +0 -58
- package/dist/src/utils/password-crypto.d.ts +0 -2
- package/dist/src/utils/password-crypto.js +0 -69
- package/gitignore +0 -9
- package/scripts/create-project.ts +0 -137
- package/scripts/start-devnet.js +0 -141
- package/scripts/stop-devnet.js +0 -32
- package/src/contract/ralph.test.ts +0 -178
- package/src/fixtures/address.json +0 -36
- package/src/fixtures/balance.json +0 -9
- package/src/fixtures/self-clique.json +0 -19
- package/src/fixtures/transaction.json +0 -13
- package/src/fixtures/transactions.json +0 -179
- package/src/signer/fixtures/genesis.json +0 -26
- package/src/signer/fixtures/wallets.json +0 -26
- package/src/signer/node-wallet.ts +0 -65
- package/src/test/index.ts +0 -31
- package/src/test/privatekey-wallet.ts +0 -57
- package/src/transaction/sign-verify.test.ts +0 -50
- package/src/transaction/sign-verify.ts +0 -39
- package/src/utils/address.test.ts +0 -47
- package/src/utils/djb2.test.ts +0 -35
- package/src/utils/password-crypto.test.ts +0 -27
- package/src/utils/password-crypto.ts +0 -77
- package/src/utils/utils.test.ts +0 -161
- package/templates/base/README.md +0 -34
- package/templates/base/package.json +0 -35
- package/templates/base/src/greeter.ts +0 -42
- package/templates/base/tsconfig.json +0 -19
- package/templates/react/README.md +0 -34
- package/templates/react/config-overrides.js +0 -18
- package/templates/react/package.json +0 -66
- package/templates/react/src/App.tsx +0 -42
- package/templates/react/src/artifacts/greeter.ral.json +0 -26
- package/templates/react/src/artifacts/greeter_main.ral.json +0 -22
- package/templates/shared/.eslintrc.json +0 -12
- package/templates/shared/scripts/header.js +0 -0
- package/test/contract.test.ts +0 -213
- package/test/events.test.ts +0 -141
- package/test/transaction.test.ts +0 -73
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { node } from '../api';
|
|
2
2
|
import { Subscription, SubscribeOptions } from '../utils';
|
|
3
|
-
export declare class EventSubscription extends Subscription<ContractEvent> {
|
|
3
|
+
export declare class EventSubscription extends Subscription<node.ContractEvent> {
|
|
4
4
|
readonly contractAddress: string;
|
|
5
5
|
private fromCount;
|
|
6
|
-
constructor(options: SubscribeOptions<ContractEvent>, contractAddress: string, fromCount?: number);
|
|
6
|
+
constructor(options: SubscribeOptions<node.ContractEvent>, contractAddress: string, fromCount?: number);
|
|
7
7
|
startPolling(): void;
|
|
8
8
|
currentEventCount(): number;
|
|
9
9
|
polling(): Promise<void>;
|
|
10
10
|
}
|
|
11
|
-
export declare function subscribeToEvents(options: SubscribeOptions<ContractEvent>, contractAddress: string, fromCount?: number): EventSubscription;
|
|
11
|
+
export declare function subscribeToEvents(options: SubscribeOptions<node.ContractEvent>, contractAddress: string, fromCount?: number): EventSubscription;
|
|
@@ -18,6 +18,7 @@ along with the library. If not, see <http://www.gnu.org/licenses/>.
|
|
|
18
18
|
*/
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
20
|
exports.subscribeToEvents = exports.EventSubscription = void 0;
|
|
21
|
+
const __1 = require("..");
|
|
21
22
|
const utils_1 = require("../utils");
|
|
22
23
|
class EventSubscription extends utils_1.Subscription {
|
|
23
24
|
constructor(options, contractAddress, fromCount) {
|
|
@@ -37,7 +38,7 @@ class EventSubscription extends utils_1.Subscription {
|
|
|
37
38
|
}
|
|
38
39
|
async polling() {
|
|
39
40
|
try {
|
|
40
|
-
const events = await
|
|
41
|
+
const events = await __1.web3.getCurrentNodeProvider().events.getEventsContractContractaddress(this.contractAddress, {
|
|
41
42
|
start: this.fromCount
|
|
42
43
|
});
|
|
43
44
|
if (this.cancelled) {
|
|
@@ -18,7 +18,11 @@ along with the library. If not, see <http://www.gnu.org/licenses/>.
|
|
|
18
18
|
*/
|
|
19
19
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
20
20
|
if (k2 === undefined) k2 = k;
|
|
21
|
-
Object.
|
|
21
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
22
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
23
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(o, k2, desc);
|
|
22
26
|
}) : (function(o, m, k, k2) {
|
|
23
27
|
if (k2 === undefined) k2 = k;
|
|
24
28
|
o[k2] = m[k];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Fields,
|
|
1
|
+
import { Val } from '../api';
|
|
2
|
+
import { Fields, FieldsSig } from './contract';
|
|
3
3
|
export declare function encodeBool(bool: boolean): Uint8Array;
|
|
4
4
|
export declare function encodeI256(i256: bigint): Uint8Array;
|
|
5
5
|
export declare function encodeU256(u256: bigint): Uint8Array;
|
|
@@ -7,6 +7,7 @@ export declare function encodeByteVec(bytes: string): Uint8Array;
|
|
|
7
7
|
export declare function encodeAddress(address: string): Uint8Array;
|
|
8
8
|
export declare function encodeScriptFieldAsString(tpe: string, value: Val): string;
|
|
9
9
|
export declare function encodeScriptField(tpe: string, value: Val): Uint8Array;
|
|
10
|
-
export declare function buildScriptByteCode(bytecodeTemplate: string, fields: Fields, fieldsSig:
|
|
11
|
-
export declare function buildContractByteCode(bytecode: string, fields: Fields, fieldsSig:
|
|
10
|
+
export declare function buildScriptByteCode(bytecodeTemplate: string, fields: Fields, fieldsSig: FieldsSig): string;
|
|
11
|
+
export declare function buildContractByteCode(bytecode: string, fields: Fields, fieldsSig: FieldsSig): string;
|
|
12
12
|
export declare function encodeContractField(tpe: string, value: Val): Uint8Array[];
|
|
13
|
+
export declare function buildDebugBytecode(bytecode: string, bytecodePatch: string): string;
|
|
@@ -18,7 +18,7 @@ along with the library. If not, see <http://www.gnu.org/licenses/>.
|
|
|
18
18
|
*/
|
|
19
19
|
var _a;
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
exports.encodeContractField = exports.buildContractByteCode = exports.buildScriptByteCode = exports.encodeScriptField = exports.encodeScriptFieldAsString = exports.encodeAddress = exports.encodeByteVec = exports.encodeU256 = exports.encodeI256 = exports.encodeBool = void 0;
|
|
21
|
+
exports.buildDebugBytecode = exports.encodeContractField = exports.buildContractByteCode = exports.buildScriptByteCode = exports.encodeScriptField = exports.encodeScriptFieldAsString = exports.encodeAddress = exports.encodeByteVec = exports.encodeU256 = exports.encodeI256 = exports.encodeBool = void 0;
|
|
22
22
|
const buffer_1 = require("buffer/");
|
|
23
23
|
const utils_1 = require("../utils");
|
|
24
24
|
const bigIntZero = BigInt(0);
|
|
@@ -343,6 +343,32 @@ exports.encodeContractField = encodeContractField;
|
|
|
343
343
|
function invalidVal(tpe, value) {
|
|
344
344
|
return Error(`Invalid API value ${value} for type ${tpe}`);
|
|
345
345
|
}
|
|
346
|
+
function buildDebugBytecode(bytecode, bytecodePatch) {
|
|
347
|
+
if (bytecodePatch === '') {
|
|
348
|
+
return bytecode;
|
|
349
|
+
}
|
|
350
|
+
const pattern = /[=+-][0-9a-f]*/g;
|
|
351
|
+
let result = '';
|
|
352
|
+
let index = 0;
|
|
353
|
+
for (const parts of bytecodePatch.matchAll(pattern)) {
|
|
354
|
+
const part = parts[0];
|
|
355
|
+
const diffType = part[0];
|
|
356
|
+
if (diffType === '=') {
|
|
357
|
+
const length = parseInt(part.substring(1));
|
|
358
|
+
result = result + bytecode.slice(index, index + length);
|
|
359
|
+
index = index + length;
|
|
360
|
+
}
|
|
361
|
+
else if (diffType === '+') {
|
|
362
|
+
result = result + part.substring(1);
|
|
363
|
+
}
|
|
364
|
+
else {
|
|
365
|
+
const length = parseInt(part.substring(1));
|
|
366
|
+
index = index + length;
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
return result;
|
|
370
|
+
}
|
|
371
|
+
exports.buildDebugBytecode = buildDebugBytecode;
|
|
346
372
|
// export function buildContractByteCode(
|
|
347
373
|
// compiled: node.TemplateContractByteCode,
|
|
348
374
|
// templateVariables: TemplateVariables
|
package/dist/src/global.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
import { NodeProvider } from './api';
|
|
2
|
-
export declare function setCurrentNodeProvider(provider: NodeProvider
|
|
1
|
+
import { ExplorerProvider, NodeProvider } from './api';
|
|
2
|
+
export declare function setCurrentNodeProvider(provider: NodeProvider): void;
|
|
3
|
+
export declare function setCurrentNodeProvider(baseUrl: string, apiKey?: string): void;
|
|
3
4
|
export declare function getCurrentNodeProvider(): NodeProvider;
|
|
5
|
+
export declare function setCurrentExplorerProvider(provider: ExplorerProvider): void;
|
|
6
|
+
export declare function setCurrentExplorerProvider(baseUrl: string, apiKey?: string): void;
|
|
7
|
+
export declare function getCurrentExplorerProvider(): ExplorerProvider | undefined;
|
package/dist/src/global.js
CHANGED
|
@@ -17,12 +17,12 @@ You should have received a copy of the GNU Lesser General Public License
|
|
|
17
17
|
along with the library. If not, see <http://www.gnu.org/licenses/>.
|
|
18
18
|
*/
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.getCurrentNodeProvider = exports.setCurrentNodeProvider = void 0;
|
|
20
|
+
exports.getCurrentExplorerProvider = exports.setCurrentExplorerProvider = exports.getCurrentNodeProvider = exports.setCurrentNodeProvider = void 0;
|
|
21
21
|
const api_1 = require("./api");
|
|
22
22
|
let _currentNodeProvider = undefined;
|
|
23
|
-
function setCurrentNodeProvider(provider) {
|
|
23
|
+
function setCurrentNodeProvider(provider, apiKey) {
|
|
24
24
|
if (typeof provider == 'string') {
|
|
25
|
-
_currentNodeProvider = new api_1.NodeProvider(provider);
|
|
25
|
+
_currentNodeProvider = new api_1.NodeProvider(provider, apiKey);
|
|
26
26
|
}
|
|
27
27
|
else {
|
|
28
28
|
_currentNodeProvider = provider;
|
|
@@ -36,3 +36,19 @@ function getCurrentNodeProvider() {
|
|
|
36
36
|
return _currentNodeProvider;
|
|
37
37
|
}
|
|
38
38
|
exports.getCurrentNodeProvider = getCurrentNodeProvider;
|
|
39
|
+
let _currentExplorerProvider = undefined;
|
|
40
|
+
function setCurrentExplorerProvider(provider, apiKey) {
|
|
41
|
+
if (typeof provider == 'string') {
|
|
42
|
+
_currentExplorerProvider = new api_1.ExplorerProvider(provider, apiKey);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
_currentExplorerProvider = provider;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.setCurrentExplorerProvider = setCurrentExplorerProvider;
|
|
49
|
+
// Different from `NodeProvider`, this may return `undefined`
|
|
50
|
+
// as ExplorerProvider is not necessary for all applications
|
|
51
|
+
function getCurrentExplorerProvider() {
|
|
52
|
+
return _currentExplorerProvider;
|
|
53
|
+
}
|
|
54
|
+
exports.getCurrentExplorerProvider = getCurrentExplorerProvider;
|
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.js
CHANGED
|
@@ -18,19 +18,40 @@ along with the library. If not, see <http://www.gnu.org/licenses/>.
|
|
|
18
18
|
*/
|
|
19
19
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
20
20
|
if (k2 === undefined) k2 = k;
|
|
21
|
-
Object.
|
|
21
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
22
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
23
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(o, k2, desc);
|
|
22
26
|
}) : (function(o, m, k, k2) {
|
|
23
27
|
if (k2 === undefined) k2 = k;
|
|
24
28
|
o[k2] = m[k];
|
|
25
29
|
}));
|
|
30
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
31
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
32
|
+
}) : function(o, v) {
|
|
33
|
+
o["default"] = v;
|
|
34
|
+
});
|
|
26
35
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
27
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
28
37
|
};
|
|
38
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
39
|
+
if (mod && mod.__esModule) return mod;
|
|
40
|
+
var result = {};
|
|
41
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
42
|
+
__setModuleDefault(result, mod);
|
|
43
|
+
return result;
|
|
44
|
+
};
|
|
29
45
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
exports.utils = exports.web3 = void 0;
|
|
47
|
+
BigInt.prototype['toJSON'] = function () {
|
|
48
|
+
return this.toString();
|
|
49
|
+
};
|
|
30
50
|
__exportStar(require("./api"), exports);
|
|
31
51
|
__exportStar(require("./contract"), exports);
|
|
32
52
|
__exportStar(require("./signer"), exports);
|
|
33
53
|
__exportStar(require("./utils"), exports);
|
|
34
54
|
__exportStar(require("./transaction"), exports);
|
|
35
55
|
__exportStar(require("./constants"), exports);
|
|
36
|
-
|
|
56
|
+
exports.web3 = __importStar(require("./global"));
|
|
57
|
+
exports.utils = __importStar(require("./utils"));
|
package/dist/src/signer/index.js
CHANGED
|
@@ -18,7 +18,11 @@ along with the library. If not, see <http://www.gnu.org/licenses/>.
|
|
|
18
18
|
*/
|
|
19
19
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
20
20
|
if (k2 === undefined) k2 = k;
|
|
21
|
-
Object.
|
|
21
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
22
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
23
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(o, k2, desc);
|
|
22
26
|
}) : (function(o, m, k, k2) {
|
|
23
27
|
if (k2 === undefined) k2 = k;
|
|
24
28
|
o[k2] = m[k];
|
|
@@ -28,4 +32,3 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
28
32
|
};
|
|
29
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
34
|
__exportStar(require("./signer"), exports);
|
|
31
|
-
__exportStar(require("./node-wallet"), exports);
|
|
@@ -1,33 +1,20 @@
|
|
|
1
|
-
import { NodeProvider } from '../api';
|
|
1
|
+
import { ExplorerProvider, NodeProvider, Number256, Token } from '../api';
|
|
2
2
|
import { node } from '../api';
|
|
3
|
-
|
|
4
|
-
export interface SignResult {
|
|
5
|
-
fromGroup: number;
|
|
6
|
-
toGroup: number;
|
|
7
|
-
unsignedTx: string;
|
|
8
|
-
txId: string;
|
|
9
|
-
signature: string;
|
|
10
|
-
}
|
|
3
|
+
export declare type OutputRef = node.OutputRef;
|
|
11
4
|
export interface Account {
|
|
12
5
|
address: string;
|
|
13
6
|
group: number;
|
|
14
7
|
publicKey: string;
|
|
15
8
|
}
|
|
16
|
-
export declare type SubmitTx = {
|
|
17
|
-
submitTx?: boolean;
|
|
18
|
-
};
|
|
19
9
|
export declare type SignerAddress = {
|
|
20
10
|
signerAddress: string;
|
|
21
11
|
};
|
|
22
|
-
export declare type GetAccountsParams = undefined;
|
|
23
|
-
export declare type GetAccountsResult = Account[];
|
|
24
12
|
export interface SignTransferTxParams {
|
|
25
13
|
signerAddress: string;
|
|
26
|
-
destinations:
|
|
27
|
-
utxos?:
|
|
14
|
+
destinations: Destination[];
|
|
15
|
+
utxos?: OutputRef[];
|
|
28
16
|
gasAmount?: number;
|
|
29
|
-
gasPrice?:
|
|
30
|
-
submitTx?: boolean;
|
|
17
|
+
gasPrice?: Number256;
|
|
31
18
|
}
|
|
32
19
|
export interface SignTransferTxResult {
|
|
33
20
|
fromGroup: number;
|
|
@@ -35,16 +22,17 @@ export interface SignTransferTxResult {
|
|
|
35
22
|
unsignedTx: string;
|
|
36
23
|
txId: string;
|
|
37
24
|
signature: string;
|
|
25
|
+
gasAmount: number;
|
|
26
|
+
gasPrice: Number256;
|
|
38
27
|
}
|
|
39
28
|
export interface SignDeployContractTxParams {
|
|
40
29
|
signerAddress: string;
|
|
41
30
|
bytecode: string;
|
|
42
|
-
initialAttoAlphAmount?:
|
|
31
|
+
initialAttoAlphAmount?: Number256;
|
|
43
32
|
initialTokenAmounts?: Token[];
|
|
44
|
-
issueTokenAmount?:
|
|
33
|
+
issueTokenAmount?: Number256;
|
|
45
34
|
gasAmount?: number;
|
|
46
|
-
gasPrice?:
|
|
47
|
-
submitTx?: boolean;
|
|
35
|
+
gasPrice?: Number256;
|
|
48
36
|
}
|
|
49
37
|
export interface SignDeployContractTxResult {
|
|
50
38
|
fromGroup: number;
|
|
@@ -54,15 +42,16 @@ export interface SignDeployContractTxResult {
|
|
|
54
42
|
signature: string;
|
|
55
43
|
contractId: string;
|
|
56
44
|
contractAddress: string;
|
|
45
|
+
gasAmount: number;
|
|
46
|
+
gasPrice: Number256;
|
|
57
47
|
}
|
|
58
48
|
export interface SignExecuteScriptTxParams {
|
|
59
49
|
signerAddress: string;
|
|
60
50
|
bytecode: string;
|
|
61
|
-
attoAlphAmount?:
|
|
62
|
-
tokens?:
|
|
51
|
+
attoAlphAmount?: Number256;
|
|
52
|
+
tokens?: Token[];
|
|
63
53
|
gasAmount?: number;
|
|
64
|
-
gasPrice?:
|
|
65
|
-
submitTx?: boolean;
|
|
54
|
+
gasPrice?: Number256;
|
|
66
55
|
}
|
|
67
56
|
export interface SignExecuteScriptTxResult {
|
|
68
57
|
fromGroup: number;
|
|
@@ -70,11 +59,12 @@ export interface SignExecuteScriptTxResult {
|
|
|
70
59
|
unsignedTx: string;
|
|
71
60
|
txId: string;
|
|
72
61
|
signature: string;
|
|
62
|
+
gasAmount: number;
|
|
63
|
+
gasPrice: Number256;
|
|
73
64
|
}
|
|
74
65
|
export interface SignUnsignedTxParams {
|
|
75
66
|
signerAddress: string;
|
|
76
67
|
unsignedTx: string;
|
|
77
|
-
submitTx?: boolean;
|
|
78
68
|
}
|
|
79
69
|
export interface SignUnsignedTxResult {
|
|
80
70
|
fromGroup: number;
|
|
@@ -82,13 +72,8 @@ export interface SignUnsignedTxResult {
|
|
|
82
72
|
unsignedTx: string;
|
|
83
73
|
txId: string;
|
|
84
74
|
signature: string;
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
signerAddress: string;
|
|
88
|
-
hexString: string;
|
|
89
|
-
}
|
|
90
|
-
export interface SignHexStringResult {
|
|
91
|
-
signature: string;
|
|
75
|
+
gasAmount: number;
|
|
76
|
+
gasPrice: Number256;
|
|
92
77
|
}
|
|
93
78
|
export interface SignMessageParams {
|
|
94
79
|
signerAddress: string;
|
|
@@ -97,24 +82,36 @@ export interface SignMessageParams {
|
|
|
97
82
|
export interface SignMessageResult {
|
|
98
83
|
signature: string;
|
|
99
84
|
}
|
|
85
|
+
export interface SubmitTransactionParams {
|
|
86
|
+
unsignedTx: string;
|
|
87
|
+
signature: string;
|
|
88
|
+
}
|
|
89
|
+
export interface SubmissionResult {
|
|
90
|
+
txId: string;
|
|
91
|
+
fromGroup: number;
|
|
92
|
+
toGroup: number;
|
|
93
|
+
}
|
|
100
94
|
export interface SignerProvider {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
95
|
+
get nodeProvider(): NodeProvider | undefined;
|
|
96
|
+
get explorerProvider(): ExplorerProvider | undefined;
|
|
97
|
+
getSelectedAccount(): Promise<Account>;
|
|
98
|
+
signAndSubmitTransferTx(params: SignTransferTxParams): Promise<SignTransferTxResult>;
|
|
99
|
+
signAndSubmitDeployContractTx(params: SignDeployContractTxParams): Promise<SignDeployContractTxResult>;
|
|
100
|
+
signAndSubmitExecuteScriptTx(params: SignExecuteScriptTxParams): Promise<SignExecuteScriptTxResult>;
|
|
101
|
+
signAndSubmitUnsignedTx(params: SignUnsignedTxParams): Promise<SignUnsignedTxResult>;
|
|
105
102
|
signUnsignedTx(params: SignUnsignedTxParams): Promise<SignUnsignedTxResult>;
|
|
106
|
-
signHexString(params: SignHexStringParams): Promise<SignHexStringResult>;
|
|
107
103
|
signMessage(params: SignMessageParams): Promise<SignMessageResult>;
|
|
108
104
|
}
|
|
109
|
-
export declare abstract class
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
abstract
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
105
|
+
export declare abstract class SignerProviderSimple implements SignerProvider {
|
|
106
|
+
abstract get nodeProvider(): NodeProvider | undefined;
|
|
107
|
+
abstract get explorerProvider(): ExplorerProvider | undefined;
|
|
108
|
+
abstract getSelectedAccount(): Promise<Account>;
|
|
109
|
+
private getNodeProvider;
|
|
110
|
+
submitTransaction(params: SubmitTransactionParams): Promise<SubmissionResult>;
|
|
111
|
+
signAndSubmitTransferTx(params: SignTransferTxParams): Promise<SignTransferTxResult>;
|
|
112
|
+
signAndSubmitDeployContractTx(params: SignDeployContractTxParams): Promise<SignDeployContractTxResult>;
|
|
113
|
+
signAndSubmitExecuteScriptTx(params: SignExecuteScriptTxParams): Promise<SignExecuteScriptTxResult>;
|
|
114
|
+
signAndSubmitUnsignedTx(params: SignUnsignedTxParams): Promise<SignUnsignedTxResult>;
|
|
118
115
|
private usePublicKey;
|
|
119
116
|
signTransferTx(params: SignTransferTxParams): Promise<SignTransferTxResult>;
|
|
120
117
|
buildTransferTx(params: SignTransferTxParams): Promise<node.BuildTransactionResult>;
|
|
@@ -123,21 +120,23 @@ export declare abstract class SignerWithNodeProvider implements SignerProvider {
|
|
|
123
120
|
signExecuteScriptTx(params: SignExecuteScriptTxParams): Promise<SignExecuteScriptTxResult>;
|
|
124
121
|
buildScriptTx(params: SignExecuteScriptTxParams): Promise<node.BuildExecuteScriptTxResult>;
|
|
125
122
|
signUnsignedTx(params: SignUnsignedTxParams): Promise<SignUnsignedTxResult>;
|
|
126
|
-
protected handleSign(response: {
|
|
127
|
-
fromGroup: number;
|
|
128
|
-
toGroup: number;
|
|
129
|
-
signerAddress: string;
|
|
130
|
-
unsignedTx: string;
|
|
131
|
-
txId: string;
|
|
132
|
-
}, submitTx: boolean): Promise<SignResult>;
|
|
133
|
-
signHexString(params: SignHexStringParams): Promise<SignHexStringResult>;
|
|
134
123
|
signMessage(params: SignMessageParams): Promise<SignMessageResult>;
|
|
135
124
|
abstract signRaw(signerAddress: string, hexString: string): Promise<string>;
|
|
136
125
|
}
|
|
137
|
-
export
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
126
|
+
export declare abstract class SignerProviderWithMultipleAccounts extends SignerProviderSimple {
|
|
127
|
+
abstract getAccounts(): Promise<Account[]>;
|
|
128
|
+
getAccount(signerAddress: string): Promise<Account>;
|
|
129
|
+
abstract setSelectedAccount(address: string): Promise<void>;
|
|
141
130
|
}
|
|
142
131
|
export declare function verifyHexString(hexString: string, publicKey: string, signature: string): boolean;
|
|
143
132
|
export declare function verifySignedMessage(message: string, publicKey: string, signature: string): boolean;
|
|
133
|
+
export interface Destination {
|
|
134
|
+
address: string;
|
|
135
|
+
attoAlphAmount: Number256;
|
|
136
|
+
tokens?: Token[];
|
|
137
|
+
lockTime?: number;
|
|
138
|
+
message?: string;
|
|
139
|
+
}
|
|
140
|
+
export declare function toApiDestination(data: Destination): node.Destination;
|
|
141
|
+
export declare function toApiDestinations(data: Destination[]): node.Destination[];
|
|
142
|
+
export declare function fromApiDestination(data: node.Destination): Destination;
|