@getomnichain/omnichain 0.6.2 → 0.7.0
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 +69 -0
- package/dist/cjs/chain_ids.js +2 -2
- package/dist/cjs/chain_ids.js.map +1 -1
- package/dist/cjs/errors.js +6 -0
- package/dist/cjs/errors.js.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/ton/index.js +12 -0
- package/dist/cjs/ton/index.js.map +1 -1
- package/dist/cjs/ton/ton_address.js +72 -14
- package/dist/cjs/ton/ton_address.js.map +1 -1
- package/dist/cjs/ton/ton_asset.js +21 -0
- package/dist/cjs/ton/ton_asset.js.map +1 -0
- package/dist/cjs/ton/ton_assets.js +10 -0
- package/dist/cjs/ton/ton_assets.js.map +1 -0
- package/dist/cjs/ton/ton_chain.js +483 -0
- package/dist/cjs/ton/ton_chain.js.map +1 -0
- package/dist/cjs/ton/ton_chains.js +21 -0
- package/dist/cjs/ton/ton_chains.js.map +1 -0
- package/dist/cjs/ton/ton_jetton_metadata.js +107 -0
- package/dist/cjs/ton/ton_jetton_metadata.js.map +1 -0
- package/dist/cjs/ton/ton_messages.js +174 -0
- package/dist/cjs/ton/ton_messages.js.map +1 -0
- package/dist/cjs/ton/ton_provider.js +456 -0
- package/dist/cjs/ton/ton_provider.js.map +1 -0
- package/dist/cjs/ton/ton_tonapi.js +243 -0
- package/dist/cjs/ton/ton_tonapi.js.map +1 -0
- package/dist/cjs/ton/ton_toncenter.js +252 -0
- package/dist/cjs/ton/ton_toncenter.js.map +1 -0
- package/dist/cjs/ton/ton_transaction_status.js +231 -0
- package/dist/cjs/ton/ton_transaction_status.js.map +1 -0
- package/dist/cjs/ton/ton_transactions.js +107 -0
- package/dist/cjs/ton/ton_transactions.js.map +1 -0
- package/dist/cjs/ton/ton_wallet.js +285 -0
- package/dist/cjs/ton/ton_wallet.js.map +1 -0
- package/dist/cjs/tron/index.js +1 -0
- package/dist/cjs/tron/index.js.map +1 -1
- package/dist/cjs/tron/tron_chain.js +88 -45
- package/dist/cjs/tron/tron_chain.js.map +1 -1
- package/dist/cjs/tron/tron_memo.js +17 -0
- package/dist/cjs/tron/tron_memo.js.map +1 -0
- package/dist/cjs/tron/tron_raw_data.js +213 -0
- package/dist/cjs/tron/tron_raw_data.js.map +1 -0
- package/dist/cjs/tron/tron_transaction_builder.js +34 -13
- package/dist/cjs/tron/tron_transaction_builder.js.map +1 -1
- package/dist/cjs/tron/tron_transaction_status.js +10 -7
- package/dist/cjs/tron/tron_transaction_status.js.map +1 -1
- package/dist/cjs/tron/tron_transactions.js +1 -1
- package/dist/cjs/tron/tron_transactions.js.map +1 -1
- package/dist/esm/chain_ids.js +2 -2
- package/dist/esm/chain_ids.js.map +1 -1
- package/dist/esm/errors.d.ts +3 -0
- package/dist/esm/errors.d.ts.map +1 -1
- package/dist/esm/errors.js +5 -0
- package/dist/esm/errors.js.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/ton/index.d.ts +12 -0
- package/dist/esm/ton/index.d.ts.map +1 -1
- package/dist/esm/ton/index.js +12 -0
- package/dist/esm/ton/index.js.map +1 -1
- package/dist/esm/ton/ton_address.d.ts +26 -2
- package/dist/esm/ton/ton_address.d.ts.map +1 -1
- package/dist/esm/ton/ton_address.js +70 -14
- package/dist/esm/ton/ton_address.js.map +1 -1
- package/dist/esm/ton/ton_asset.d.ts +12 -0
- package/dist/esm/ton/ton_asset.d.ts.map +1 -0
- package/dist/esm/ton/ton_asset.js +17 -0
- package/dist/esm/ton/ton_asset.js.map +1 -0
- package/dist/esm/ton/ton_assets.d.ts +6 -0
- package/dist/esm/ton/ton_assets.d.ts.map +1 -0
- package/dist/esm/ton/ton_assets.js +7 -0
- package/dist/esm/ton/ton_assets.js.map +1 -0
- package/dist/esm/ton/ton_chain.d.ts +205 -0
- package/dist/esm/ton/ton_chain.d.ts.map +1 -0
- package/dist/esm/ton/ton_chain.js +479 -0
- package/dist/esm/ton/ton_chain.js.map +1 -0
- package/dist/esm/ton/ton_chains.d.ts +11 -0
- package/dist/esm/ton/ton_chains.d.ts.map +1 -0
- package/dist/esm/ton/ton_chains.js +18 -0
- package/dist/esm/ton/ton_chains.js.map +1 -0
- package/dist/esm/ton/ton_jetton_metadata.d.ts +36 -0
- package/dist/esm/ton/ton_jetton_metadata.d.ts.map +1 -0
- package/dist/esm/ton/ton_jetton_metadata.js +103 -0
- package/dist/esm/ton/ton_jetton_metadata.js.map +1 -0
- package/dist/esm/ton/ton_messages.d.ts +133 -0
- package/dist/esm/ton/ton_messages.d.ts.map +1 -0
- package/dist/esm/ton/ton_messages.js +159 -0
- package/dist/esm/ton/ton_messages.js.map +1 -0
- package/dist/esm/ton/ton_provider.d.ts +261 -0
- package/dist/esm/ton/ton_provider.d.ts.map +1 -0
- package/dist/esm/ton/ton_provider.js +432 -0
- package/dist/esm/ton/ton_provider.js.map +1 -0
- package/dist/esm/ton/ton_tonapi.d.ts +39 -0
- package/dist/esm/ton/ton_tonapi.d.ts.map +1 -0
- package/dist/esm/ton/ton_tonapi.js +239 -0
- package/dist/esm/ton/ton_tonapi.js.map +1 -0
- package/dist/esm/ton/ton_toncenter.d.ts +25 -0
- package/dist/esm/ton/ton_toncenter.d.ts.map +1 -0
- package/dist/esm/ton/ton_toncenter.js +248 -0
- package/dist/esm/ton/ton_toncenter.js.map +1 -0
- package/dist/esm/ton/ton_transaction_status.d.ts +116 -0
- package/dist/esm/ton/ton_transaction_status.d.ts.map +1 -0
- package/dist/esm/ton/ton_transaction_status.js +226 -0
- package/dist/esm/ton/ton_transaction_status.js.map +1 -0
- package/dist/esm/ton/ton_transactions.d.ts +54 -0
- package/dist/esm/ton/ton_transactions.d.ts.map +1 -0
- package/dist/esm/ton/ton_transactions.js +100 -0
- package/dist/esm/ton/ton_transactions.js.map +1 -0
- package/dist/esm/ton/ton_wallet.d.ts +134 -0
- package/dist/esm/ton/ton_wallet.d.ts.map +1 -0
- package/dist/esm/ton/ton_wallet.js +278 -0
- package/dist/esm/ton/ton_wallet.js.map +1 -0
- package/dist/esm/tron/index.d.ts +1 -0
- package/dist/esm/tron/index.d.ts.map +1 -1
- package/dist/esm/tron/index.js +1 -0
- package/dist/esm/tron/index.js.map +1 -1
- package/dist/esm/tron/tron_chain.d.ts +13 -1
- package/dist/esm/tron/tron_chain.d.ts.map +1 -1
- package/dist/esm/tron/tron_chain.js +89 -46
- package/dist/esm/tron/tron_chain.js.map +1 -1
- package/dist/esm/tron/tron_memo.d.ts +2 -0
- package/dist/esm/tron/tron_memo.d.ts.map +1 -0
- package/dist/esm/tron/tron_memo.js +14 -0
- package/dist/esm/tron/tron_memo.js.map +1 -0
- package/dist/esm/tron/tron_raw_data.d.ts +4 -0
- package/dist/esm/tron/tron_raw_data.d.ts.map +1 -0
- package/dist/esm/tron/tron_raw_data.js +209 -0
- package/dist/esm/tron/tron_raw_data.js.map +1 -0
- package/dist/esm/tron/tron_transaction_builder.d.ts +4 -0
- package/dist/esm/tron/tron_transaction_builder.d.ts.map +1 -1
- package/dist/esm/tron/tron_transaction_builder.js +34 -13
- package/dist/esm/tron/tron_transaction_builder.js.map +1 -1
- package/dist/esm/tron/tron_transaction_status.d.ts +16 -2
- package/dist/esm/tron/tron_transaction_status.d.ts.map +1 -1
- package/dist/esm/tron/tron_transaction_status.js +10 -7
- package/dist/esm/tron/tron_transaction_status.js.map +1 -1
- package/dist/esm/tron/tron_transactions.js +1 -1
- package/dist/esm/tron/tron_transactions.js.map +1 -1
- package/docs/README.md +2 -1
- package/docs/ton.md +164 -0
- package/docs/tron.md +21 -11
- package/package.json +5 -1
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { type StateInit } from '@ton/core';
|
|
2
|
+
import { WalletContractV3R2, WalletContractV4, WalletContractV5R1 } from '@ton/ton';
|
|
3
|
+
import type { Chain } from '../chain.base.ts';
|
|
4
|
+
import { ChainType, WalletFamily } from '../chain_type.ts';
|
|
5
|
+
import { AbstractTransactionPrerequisite } from '../transaction_prerequisite.ts';
|
|
6
|
+
import { UnsignedTransaction } from '../unsigned_transaction.ts';
|
|
7
|
+
import { AbstractBip32StyleSingleAccountWallet, AbstractSignedMessage } from '../wallet.base.ts';
|
|
8
|
+
import { type TonUserFriendlyOptions } from './ton_address.ts';
|
|
9
|
+
import { type TonInternalRequest, type TonOutMessage, type TonWalletVersion, TonSignedMessage } from './ton_messages.ts';
|
|
10
|
+
import { TonSignedTransaction } from './ton_transactions.ts';
|
|
11
|
+
/** Seconds a request stays valid unless the caller says otherwise. */
|
|
12
|
+
export declare const TON_DEFAULT_REQUEST_TTL_SECONDS = 60;
|
|
13
|
+
/** SLIP-0010 ed25519 derivation along hardened `path` segments (e.g. `[44, 607, 0]`) from a BIP-39 seed. */
|
|
14
|
+
export declare function deriveSlip10Ed25519Seed(bip39Seed: Uint8Array, path: readonly number[]): Buffer;
|
|
15
|
+
/** The ed25519 seed of `m/44'/607'/{index}'`. */
|
|
16
|
+
export declare function deriveTonEd25519Seed(bip39Seed: Uint8Array, index: number): Buffer;
|
|
17
|
+
export declare const TON_WALLET_VERSIONS: readonly TonWalletVersion[];
|
|
18
|
+
/** The workchains a wallet can live on: the basechain (0) and the masterchain (-1). */
|
|
19
|
+
export type TonWorkchain = 0 | -1;
|
|
20
|
+
/** The v3r2 / v4r2 wallet id the Python SDK uses on both workchains. */
|
|
21
|
+
export declare const TON_LEGACY_DEFAULT_WALLET_ID = 698983191;
|
|
22
|
+
/** v3r2 / v4r2 send at most four messages per request. */
|
|
23
|
+
export declare const TON_LEGACY_MAX_MESSAGES = 4;
|
|
24
|
+
/** The path the Python SDK accepts as a marker for TON's own scheme; it derives nothing. */
|
|
25
|
+
export declare const TON_PYTHON_MARKER_PATH = "m/44'/607'/0'/0/0";
|
|
26
|
+
/**
|
|
27
|
+
* The ed25519 seed TON's own mnemonic scheme gives (what TON wallets,
|
|
28
|
+
* `@ton/crypto`'s `mnemonicToPrivateKey` and the Python SDK compute):
|
|
29
|
+
* HMAC-SHA512 of the words keyed by the phrase, then PBKDF2-SHA512 with
|
|
30
|
+
* "TON default seed", 100,000 rounds; the first 32 bytes. The words are
|
|
31
|
+
* trimmed and lowercased, as the Python SDK does; they are not validated.
|
|
32
|
+
*/
|
|
33
|
+
export declare function deriveTonNativeSeed(mnemonicStr: string): Buffer;
|
|
34
|
+
export interface TonRequestArgs {
|
|
35
|
+
seqno: number;
|
|
36
|
+
messages: readonly TonOutMessage[];
|
|
37
|
+
/** Unix seconds; defaults to now + {@link TON_DEFAULT_REQUEST_TTL_SECONDS}. */
|
|
38
|
+
validUntil?: number;
|
|
39
|
+
}
|
|
40
|
+
export interface TonExternalRequest {
|
|
41
|
+
/** The external message, base64 BOC, ready to broadcast. */
|
|
42
|
+
boc: string;
|
|
43
|
+
/** Its normalized hash, lowercase hex — the transaction id. */
|
|
44
|
+
hash: string;
|
|
45
|
+
seqno: number;
|
|
46
|
+
validUntil: number;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* A wallet v5r1 (W5) account, its key derived from a BIP-39 mnemonic with
|
|
50
|
+
* SLIP-0010 ed25519 at the hardened path `m/44'/607'/{index}'`, on workchain 0
|
|
51
|
+
* with the mainnet client wallet id.
|
|
52
|
+
*
|
|
53
|
+
* It signs two kinds of request: an external one it sends itself (paying its
|
|
54
|
+
* own fees), and an internal one a relayer delivers and pays for
|
|
55
|
+
* (`tonRelayMessage`).
|
|
56
|
+
*/
|
|
57
|
+
export declare class TonWallet extends AbstractBip32StyleSingleAccountWallet {
|
|
58
|
+
#private;
|
|
59
|
+
readonly publicKey: Buffer;
|
|
60
|
+
/** The wallet contract: W5 (v5r1, the default), or v4r2 / v3r2 as the Python SDK builds them. */
|
|
61
|
+
readonly version: TonWalletVersion;
|
|
62
|
+
/** 0 (the basechain, the default) or -1 (the masterchain, where gas and storage cost far more). */
|
|
63
|
+
readonly workchain: TonWorkchain;
|
|
64
|
+
readonly contract: WalletContractV5R1 | WalletContractV4 | WalletContractV3R2;
|
|
65
|
+
private readonly _address;
|
|
66
|
+
constructor(ed25519Seed: Uint8Array, opts?: {
|
|
67
|
+
version?: TonWalletVersion;
|
|
68
|
+
workchain?: TonWorkchain;
|
|
69
|
+
});
|
|
70
|
+
static chainType(): ChainType;
|
|
71
|
+
static walletFamily(): WalletFamily;
|
|
72
|
+
chainType(): ChainType;
|
|
73
|
+
walletFamily(): WalletFamily;
|
|
74
|
+
/**
|
|
75
|
+
* - **No `derivationPath`** (or Python's marker `m/44'/607'/0'/0/0`): TON's
|
|
76
|
+
* own mnemonic scheme, as TON wallets and the Python SDK derive it — one
|
|
77
|
+
* key per mnemonic, so a wallet's own words give its W5 account. A
|
|
78
|
+
* passphrase is refused: Python ignores it, so honouring it would give a
|
|
79
|
+
* key Python does not.
|
|
80
|
+
* - **A `derivationPath`** (`derivationPath({ account })`): BIP-39 and
|
|
81
|
+
* SLIP-0010 at that path — many accounts from one mnemonic. Note that
|
|
82
|
+
* `m/44'/607'/0'` is account 0 of this scheme, not Python's key.
|
|
83
|
+
*/
|
|
84
|
+
static fromMnemonic(mnemonicStr: string, opts?: {
|
|
85
|
+
derivationPath?: string;
|
|
86
|
+
passphrase?: string;
|
|
87
|
+
version?: TonWalletVersion;
|
|
88
|
+
workchain?: TonWorkchain;
|
|
89
|
+
}): TonWallet;
|
|
90
|
+
static derivationPath(args?: {
|
|
91
|
+
account?: number;
|
|
92
|
+
}): string;
|
|
93
|
+
/** Canonical raw address, `0:<hex>`. */
|
|
94
|
+
get address(): string;
|
|
95
|
+
addressUserFriendly(opts?: TonUserFriendlyOptions): string;
|
|
96
|
+
/** The code and data that deploy this wallet; attach while it is not deployed. */
|
|
97
|
+
get stateInit(): StateInit;
|
|
98
|
+
/**
|
|
99
|
+
* A request this wallet sends itself, as an external message. Pass `deploy`
|
|
100
|
+
* while the wallet is not deployed, so the message carries its StateInit.
|
|
101
|
+
*
|
|
102
|
+
* Every version sends external requests with "ignore errors" (+2) on every
|
|
103
|
+
* message (W5 forces it; v3r2 / v4r2 get it here), so a message that cannot
|
|
104
|
+
* be sent is skipped rather than failing the others — a v3r2 / v4r2
|
|
105
|
+
* request whose action phase failed would keep its seqno and could land
|
|
106
|
+
* again. v3r2 / v4r2 carry at most 4 messages.
|
|
107
|
+
*/
|
|
108
|
+
createExternalRequest(args: TonRequestArgs & {
|
|
109
|
+
deploy?: boolean;
|
|
110
|
+
}): TonExternalRequest;
|
|
111
|
+
/**
|
|
112
|
+
* A signed internal request (op `0x73696e74`) for a relayer to deliver with
|
|
113
|
+
* `tonRelayMessage` — the gasless path, where another account pays. W5
|
|
114
|
+
* (v5r1) only: v3r2 / v4r2 wallets accept requests only as external
|
|
115
|
+
* messages they pay for themselves. Send modes are kept as given, so
|
|
116
|
+
* without "ignore errors" the request's messages leave all together or not
|
|
117
|
+
* at all.
|
|
118
|
+
*/
|
|
119
|
+
createInternalRequest(args: TonRequestArgs): TonInternalRequest;
|
|
120
|
+
/**
|
|
121
|
+
* A v3r2 / v4r2 signed body: the signature, then wallet id, valid_until,
|
|
122
|
+
* seqno, (v4r2: op 0, "send messages"), and each message with its own send
|
|
123
|
+
* mode (+2) — what `@ton/ton`'s transfers build, with per-message modes.
|
|
124
|
+
*/
|
|
125
|
+
private legacyExternalBody;
|
|
126
|
+
/** Signs `transaction` as an external request, reading the seqno and deployment from `chain`. */
|
|
127
|
+
signTransaction(transaction: UnsignedTransaction, chain: Chain): Promise<TonSignedTransaction>;
|
|
128
|
+
/** An ed25519 signature over {@link tonMessageHash}, hex; never over the message's bytes, which could pass for a request hash. */
|
|
129
|
+
signMessage(message: string): TonSignedMessage;
|
|
130
|
+
verifySignature(message: string, signedMessage: AbstractSignedMessage): boolean;
|
|
131
|
+
handleTransactionPrerequisite(prerequisite: AbstractTransactionPrerequisite): Promise<never>;
|
|
132
|
+
private static indexFromDerivationPath;
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=ton_wallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ton_wallet.d.ts","sourceRoot":"","sources":["../../../ton/ton_wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import { createHmac, pbkdf2Sync } from 'node:crypto';
|
|
2
|
+
import { SendMode, beginCell, external, storeMessage, storeMessageRelaxed } from '@ton/core';
|
|
3
|
+
import { keyPairFromSeed, sign } from '@ton/crypto';
|
|
4
|
+
import { WalletContractV3R2, WalletContractV4, WalletContractV5R1 } from '@ton/ton';
|
|
5
|
+
import { mnemonicToSeedBip39 } from "../bip39.js";
|
|
6
|
+
import { ChainType, WalletFamily } from "../chain_type.js";
|
|
7
|
+
import { ChainError, ChainErrorKinds } from "../errors.js";
|
|
8
|
+
import { AbstractBip32StyleSingleAccountWallet } from "../wallet.base.js";
|
|
9
|
+
import { TonAddress } from "./ton_address.js";
|
|
10
|
+
import { TonChain } from "./ton_chain.js";
|
|
11
|
+
import { TonSignedMessage, tonMessageHash, tonNormalizedExternalHash, tonOutActions, } from "./ton_messages.js";
|
|
12
|
+
import { TonSignedTransaction, TonUnsignedTransaction } from "./ton_transactions.js";
|
|
13
|
+
const TON_COIN_TYPE = 607;
|
|
14
|
+
const TON_DERIVATION_PATH_REGEX = /^m\/44'\/607'\/(\d+)'$/;
|
|
15
|
+
const SLIP10_ED25519_SEED_MODIFIER = 'ed25519 seed';
|
|
16
|
+
const FIRST_HARDENED_INDEX = 0x80000000;
|
|
17
|
+
/** Seconds a request stays valid unless the caller says otherwise. */
|
|
18
|
+
export const TON_DEFAULT_REQUEST_TTL_SECONDS = 60;
|
|
19
|
+
/** SLIP-0010 ed25519 derivation along hardened `path` segments (e.g. `[44, 607, 0]`) from a BIP-39 seed. */
|
|
20
|
+
export function deriveSlip10Ed25519Seed(bip39Seed, path) {
|
|
21
|
+
let digest = createHmac('sha512', SLIP10_ED25519_SEED_MODIFIER).update(bip39Seed).digest();
|
|
22
|
+
let il = digest.subarray(0, 32);
|
|
23
|
+
let ir = digest.subarray(32);
|
|
24
|
+
for (const segment of path) {
|
|
25
|
+
if (!Number.isInteger(segment) || segment < 0 || segment >= FIRST_HARDENED_INDEX) {
|
|
26
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `Invalid SLIP-0010 path segment ${segment}`);
|
|
27
|
+
}
|
|
28
|
+
const indexBytes = Buffer.alloc(4);
|
|
29
|
+
indexBytes.writeUInt32BE(FIRST_HARDENED_INDEX + segment);
|
|
30
|
+
digest = createHmac('sha512', ir).update(Buffer.concat([Buffer.alloc(1), il, indexBytes])).digest();
|
|
31
|
+
il = digest.subarray(0, 32);
|
|
32
|
+
ir = digest.subarray(32);
|
|
33
|
+
}
|
|
34
|
+
return Buffer.from(il);
|
|
35
|
+
}
|
|
36
|
+
/** The ed25519 seed of `m/44'/607'/{index}'`. */
|
|
37
|
+
export function deriveTonEd25519Seed(bip39Seed, index) {
|
|
38
|
+
return deriveSlip10Ed25519Seed(bip39Seed, [44, TON_COIN_TYPE, index]);
|
|
39
|
+
}
|
|
40
|
+
export const TON_WALLET_VERSIONS = ['v3r2', 'v4r2', 'v5r1'];
|
|
41
|
+
/** The v3r2 / v4r2 wallet id the Python SDK uses on both workchains. */
|
|
42
|
+
export const TON_LEGACY_DEFAULT_WALLET_ID = 698983191;
|
|
43
|
+
/** v3r2 / v4r2 send at most four messages per request. */
|
|
44
|
+
export const TON_LEGACY_MAX_MESSAGES = 4;
|
|
45
|
+
/** The path the Python SDK accepts as a marker for TON's own scheme; it derives nothing. */
|
|
46
|
+
export const TON_PYTHON_MARKER_PATH = "m/44'/607'/0'/0/0";
|
|
47
|
+
const TON_NATIVE_SEED_SALT = 'TON default seed';
|
|
48
|
+
const TON_NATIVE_PBKDF2_ITERATIONS = 100_000;
|
|
49
|
+
/**
|
|
50
|
+
* The ed25519 seed TON's own mnemonic scheme gives (what TON wallets,
|
|
51
|
+
* `@ton/crypto`'s `mnemonicToPrivateKey` and the Python SDK compute):
|
|
52
|
+
* HMAC-SHA512 of the words keyed by the phrase, then PBKDF2-SHA512 with
|
|
53
|
+
* "TON default seed", 100,000 rounds; the first 32 bytes. The words are
|
|
54
|
+
* trimmed and lowercased, as the Python SDK does; they are not validated.
|
|
55
|
+
*/
|
|
56
|
+
export function deriveTonNativeSeed(mnemonicStr) {
|
|
57
|
+
const words = mnemonicStr.trim().toLowerCase().split(/\s+/).filter((word) => word.length > 0);
|
|
58
|
+
if (words.length === 0)
|
|
59
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, 'The mnemonic is empty');
|
|
60
|
+
const entropy = createHmac('sha512', words.join(' ')).update('').digest();
|
|
61
|
+
return pbkdf2Sync(entropy, TON_NATIVE_SEED_SALT, TON_NATIVE_PBKDF2_ITERATIONS, 64, 'sha512').subarray(0, 32);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* A wallet v5r1 (W5) account, its key derived from a BIP-39 mnemonic with
|
|
65
|
+
* SLIP-0010 ed25519 at the hardened path `m/44'/607'/{index}'`, on workchain 0
|
|
66
|
+
* with the mainnet client wallet id.
|
|
67
|
+
*
|
|
68
|
+
* It signs two kinds of request: an external one it sends itself (paying its
|
|
69
|
+
* own fees), and an internal one a relayer delivers and pays for
|
|
70
|
+
* (`tonRelayMessage`).
|
|
71
|
+
*/
|
|
72
|
+
export class TonWallet extends AbstractBip32StyleSingleAccountWallet {
|
|
73
|
+
publicKey;
|
|
74
|
+
/** The wallet contract: W5 (v5r1, the default), or v4r2 / v3r2 as the Python SDK builds them. */
|
|
75
|
+
version;
|
|
76
|
+
/** 0 (the basechain, the default) or -1 (the masterchain, where gas and storage cost far more). */
|
|
77
|
+
workchain;
|
|
78
|
+
contract;
|
|
79
|
+
#secretKey;
|
|
80
|
+
_address;
|
|
81
|
+
constructor(ed25519Seed, opts = {}) {
|
|
82
|
+
super();
|
|
83
|
+
if (ed25519Seed.length !== 32) {
|
|
84
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `A TON ed25519 seed is 32 bytes, got ${ed25519Seed.length}`);
|
|
85
|
+
}
|
|
86
|
+
const version = opts.version ?? 'v5r1';
|
|
87
|
+
if (!TON_WALLET_VERSIONS.includes(version)) {
|
|
88
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `TON wallet version must be one of ${TON_WALLET_VERSIONS.join(', ')}, got ${String(version)}`);
|
|
89
|
+
}
|
|
90
|
+
const workchain = opts.workchain ?? 0;
|
|
91
|
+
if (workchain !== 0 && workchain !== -1) {
|
|
92
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `A TON wallet lives on workchain 0 or -1, got ${String(workchain)}`);
|
|
93
|
+
}
|
|
94
|
+
const keyPair = keyPairFromSeed(Buffer.from(ed25519Seed));
|
|
95
|
+
this.publicKey = keyPair.publicKey;
|
|
96
|
+
this.#secretKey = keyPair.secretKey;
|
|
97
|
+
this.version = version;
|
|
98
|
+
this.workchain = workchain;
|
|
99
|
+
// The wallet ids the Python SDK (ton_core) uses on either workchain: W5's
|
|
100
|
+
// context names workchain 0 (as @ton/ton's default does), and v3r2 /
|
|
101
|
+
// v4r2's is 698983191 whatever the wallet's workchain — where @ton/ton
|
|
102
|
+
// would add the workchain, giving another address on -1.
|
|
103
|
+
const publicKey = keyPair.publicKey;
|
|
104
|
+
this.contract =
|
|
105
|
+
version === 'v5r1'
|
|
106
|
+
? WalletContractV5R1.create({ workchain, publicKey })
|
|
107
|
+
: version === 'v4r2'
|
|
108
|
+
? WalletContractV4.create({ workchain, publicKey, walletId: TON_LEGACY_DEFAULT_WALLET_ID })
|
|
109
|
+
: WalletContractV3R2.create({ workchain, publicKey, walletId: TON_LEGACY_DEFAULT_WALLET_ID });
|
|
110
|
+
this._address = this.contract.address.toRawString();
|
|
111
|
+
}
|
|
112
|
+
[Symbol.for('nodejs.util.inspect.custom')]() {
|
|
113
|
+
return `TonWallet { address: '${this._address}' }`;
|
|
114
|
+
}
|
|
115
|
+
static chainType() {
|
|
116
|
+
return ChainType.TON;
|
|
117
|
+
}
|
|
118
|
+
static walletFamily() {
|
|
119
|
+
return WalletFamily.TON;
|
|
120
|
+
}
|
|
121
|
+
chainType() {
|
|
122
|
+
return TonWallet.chainType();
|
|
123
|
+
}
|
|
124
|
+
walletFamily() {
|
|
125
|
+
return TonWallet.walletFamily();
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* - **No `derivationPath`** (or Python's marker `m/44'/607'/0'/0/0`): TON's
|
|
129
|
+
* own mnemonic scheme, as TON wallets and the Python SDK derive it — one
|
|
130
|
+
* key per mnemonic, so a wallet's own words give its W5 account. A
|
|
131
|
+
* passphrase is refused: Python ignores it, so honouring it would give a
|
|
132
|
+
* key Python does not.
|
|
133
|
+
* - **A `derivationPath`** (`derivationPath({ account })`): BIP-39 and
|
|
134
|
+
* SLIP-0010 at that path — many accounts from one mnemonic. Note that
|
|
135
|
+
* `m/44'/607'/0'` is account 0 of this scheme, not Python's key.
|
|
136
|
+
*/
|
|
137
|
+
static fromMnemonic(mnemonicStr, opts = {}) {
|
|
138
|
+
if (opts.derivationPath === undefined || opts.derivationPath === TON_PYTHON_MARKER_PATH) {
|
|
139
|
+
if (opts.passphrase !== undefined && opts.passphrase !== '') {
|
|
140
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, "TON's own mnemonic scheme takes no passphrase here (the Python SDK ignores it); pass a derivationPath to use one");
|
|
141
|
+
}
|
|
142
|
+
return new TonWallet(deriveTonNativeSeed(mnemonicStr), { version: opts.version, workchain: opts.workchain });
|
|
143
|
+
}
|
|
144
|
+
const index = TonWallet.indexFromDerivationPath(opts.derivationPath);
|
|
145
|
+
return new TonWallet(deriveTonEd25519Seed(mnemonicToSeedBip39(mnemonicStr, opts.passphrase ?? ''), index), { version: opts.version, workchain: opts.workchain });
|
|
146
|
+
}
|
|
147
|
+
static derivationPath(args = {}) {
|
|
148
|
+
return `m/44'/${TON_COIN_TYPE}'/${args.account ?? 0}'`;
|
|
149
|
+
}
|
|
150
|
+
/** Canonical raw address, `0:<hex>`. */
|
|
151
|
+
get address() {
|
|
152
|
+
return this._address;
|
|
153
|
+
}
|
|
154
|
+
addressUserFriendly(opts = {}) {
|
|
155
|
+
return new TonAddress(this._address).toUserFriendly(opts);
|
|
156
|
+
}
|
|
157
|
+
/** The code and data that deploy this wallet; attach while it is not deployed. */
|
|
158
|
+
get stateInit() {
|
|
159
|
+
return { code: this.contract.init.code, data: this.contract.init.data };
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* A request this wallet sends itself, as an external message. Pass `deploy`
|
|
163
|
+
* while the wallet is not deployed, so the message carries its StateInit.
|
|
164
|
+
*
|
|
165
|
+
* Every version sends external requests with "ignore errors" (+2) on every
|
|
166
|
+
* message (W5 forces it; v3r2 / v4r2 get it here), so a message that cannot
|
|
167
|
+
* be sent is skipped rather than failing the others — a v3r2 / v4r2
|
|
168
|
+
* request whose action phase failed would keep its seqno and could land
|
|
169
|
+
* again. v3r2 / v4r2 carry at most 4 messages.
|
|
170
|
+
*/
|
|
171
|
+
createExternalRequest(args) {
|
|
172
|
+
const validUntil = args.validUntil ?? defaultValidUntil();
|
|
173
|
+
const body = this.contract instanceof WalletContractV5R1
|
|
174
|
+
? this.contract.createRequest({
|
|
175
|
+
seqno: args.seqno,
|
|
176
|
+
timeout: validUntil,
|
|
177
|
+
secretKey: this.#secretKey,
|
|
178
|
+
authType: 'external',
|
|
179
|
+
actions: tonOutActions(args.messages),
|
|
180
|
+
})
|
|
181
|
+
: this.legacyExternalBody(args.seqno, validUntil, args.messages);
|
|
182
|
+
const message = external({ to: this.contract.address, init: args.deploy === true ? this.stateInit : undefined, body });
|
|
183
|
+
return {
|
|
184
|
+
boc: beginCell().store(storeMessage(message)).endCell().toBoc().toString('base64'),
|
|
185
|
+
hash: tonNormalizedExternalHash(this._address, body),
|
|
186
|
+
seqno: args.seqno,
|
|
187
|
+
validUntil,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* A signed internal request (op `0x73696e74`) for a relayer to deliver with
|
|
192
|
+
* `tonRelayMessage` — the gasless path, where another account pays. W5
|
|
193
|
+
* (v5r1) only: v3r2 / v4r2 wallets accept requests only as external
|
|
194
|
+
* messages they pay for themselves. Send modes are kept as given, so
|
|
195
|
+
* without "ignore errors" the request's messages leave all together or not
|
|
196
|
+
* at all.
|
|
197
|
+
*/
|
|
198
|
+
createInternalRequest(args) {
|
|
199
|
+
if (!(this.contract instanceof WalletContractV5R1)) {
|
|
200
|
+
throw new ChainError(ChainErrorKinds.FeatureNotSupported, `Relayed (gasless) requests need a W5 (v5r1) wallet; this one is ${this.version}`);
|
|
201
|
+
}
|
|
202
|
+
const validUntil = args.validUntil ?? defaultValidUntil();
|
|
203
|
+
const body = this.contract.createRequest({
|
|
204
|
+
seqno: args.seqno,
|
|
205
|
+
timeout: validUntil,
|
|
206
|
+
secretKey: this.#secretKey,
|
|
207
|
+
authType: 'internal',
|
|
208
|
+
actions: tonOutActions(args.messages),
|
|
209
|
+
});
|
|
210
|
+
return { body, seqno: args.seqno, validUntil };
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* A v3r2 / v4r2 signed body: the signature, then wallet id, valid_until,
|
|
214
|
+
* seqno, (v4r2: op 0, "send messages"), and each message with its own send
|
|
215
|
+
* mode (+2) — what `@ton/ton`'s transfers build, with per-message modes.
|
|
216
|
+
*/
|
|
217
|
+
legacyExternalBody(seqno, validUntil, messages) {
|
|
218
|
+
if (messages.length > TON_LEGACY_MAX_MESSAGES) {
|
|
219
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `A ${this.version} request carries at most ${TON_LEGACY_MAX_MESSAGES} messages, got ${messages.length}`);
|
|
220
|
+
}
|
|
221
|
+
const signing = beginCell()
|
|
222
|
+
.storeUint(this.contract.walletId, 32)
|
|
223
|
+
.storeUint(validUntil, 32)
|
|
224
|
+
.storeUint(seqno, 32);
|
|
225
|
+
if (this.version === 'v4r2')
|
|
226
|
+
signing.storeUint(0, 8);
|
|
227
|
+
for (const action of tonOutActions(messages)) {
|
|
228
|
+
signing.storeUint(action.mode | SendMode.IGNORE_ERRORS, 8).storeRef(beginCell().store(storeMessageRelaxed(action.outMsg)).endCell());
|
|
229
|
+
}
|
|
230
|
+
const signature = sign(signing.endCell().hash(), this.#secretKey);
|
|
231
|
+
return beginCell().storeBuffer(signature).storeBuilder(signing).endCell();
|
|
232
|
+
}
|
|
233
|
+
/** Signs `transaction` as an external request, reading the seqno and deployment from `chain`. */
|
|
234
|
+
async signTransaction(transaction, chain) {
|
|
235
|
+
if (!(transaction instanceof TonUnsignedTransaction)) {
|
|
236
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `Expected a TonUnsignedTransaction, got ${transaction.constructor.name}`);
|
|
237
|
+
}
|
|
238
|
+
if (new TonAddress(transaction.walletAddress).canonical() !== this._address) {
|
|
239
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `Transaction is for ${transaction.walletAddress}, not this wallet ${this._address}`);
|
|
240
|
+
}
|
|
241
|
+
const tonChain = assertTonChain(chain);
|
|
242
|
+
if (tonChain.chainId !== transaction.chainId) {
|
|
243
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `Transaction for chain ${transaction.chainId} cannot be signed on ${tonChain.chainId}`);
|
|
244
|
+
}
|
|
245
|
+
const seqno = await tonChain.getSeqno(this._address);
|
|
246
|
+
// At seqno 0 the wallet may have no code yet; a StateInit sent to a
|
|
247
|
+
// deployed wallet is ignored.
|
|
248
|
+
const request = this.createExternalRequest({ seqno, messages: transaction.messages, validUntil: transaction.validUntil, deploy: seqno === 0 });
|
|
249
|
+
return new TonSignedTransaction({ chainId: transaction.chainId, boc: request.boc });
|
|
250
|
+
}
|
|
251
|
+
/** An ed25519 signature over {@link tonMessageHash}, hex; never over the message's bytes, which could pass for a request hash. */
|
|
252
|
+
signMessage(message) {
|
|
253
|
+
return new TonSignedMessage(sign(tonMessageHash(message), this.#secretKey).toString('hex'));
|
|
254
|
+
}
|
|
255
|
+
verifySignature(message, signedMessage) {
|
|
256
|
+
return TonChain.verifySignature(this.publicKey, message, signedMessage);
|
|
257
|
+
}
|
|
258
|
+
async handleTransactionPrerequisite(prerequisite) {
|
|
259
|
+
throw new ChainError(ChainErrorKinds.FeatureNotSupported, `TonWallet has no transaction prerequisites (got ${prerequisite?.constructor?.name ?? typeof prerequisite})`);
|
|
260
|
+
}
|
|
261
|
+
static indexFromDerivationPath(derivationPath) {
|
|
262
|
+
const match = TON_DERIVATION_PATH_REGEX.exec(derivationPath);
|
|
263
|
+
if (match === null) {
|
|
264
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `Invalid TON derivation path ${derivationPath}; expected m/44'/607'/<account>' (hardened, SLIP-0010)`);
|
|
265
|
+
}
|
|
266
|
+
return Number(match[1]);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
function assertTonChain(chain) {
|
|
270
|
+
if (!(chain instanceof TonChain)) {
|
|
271
|
+
throw new ChainError(ChainErrorKinds.InvalidArgument, `Expected a TonChain, got ${chain.constructor.name}`);
|
|
272
|
+
}
|
|
273
|
+
return chain;
|
|
274
|
+
}
|
|
275
|
+
function defaultValidUntil() {
|
|
276
|
+
return Math.floor(Date.now() / 1000) + TON_DEFAULT_REQUEST_TTL_SECONDS;
|
|
277
|
+
}
|
|
278
|
+
//# sourceMappingURL=ton_wallet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ton_wallet.js","sourceRoot":"","sources":["../../../ton/ton_wallet.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/tron/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export * from './tron_client.ts';
|
|
|
9
9
|
export * from './tron_contract.ts';
|
|
10
10
|
export * from './tron_gas_pricing.ts';
|
|
11
11
|
export * from './tron_keys.ts';
|
|
12
|
+
export * from './tron_memo.ts';
|
|
12
13
|
export * from './tron_transaction_builder.ts';
|
|
13
14
|
export * from './tron_transaction_status.ts';
|
|
14
15
|
export * from './tron_transactions.ts';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../tron/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../tron/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC"}
|
package/dist/esm/tron/index.js
CHANGED
|
@@ -9,6 +9,7 @@ export * from "./tron_client.js";
|
|
|
9
9
|
export * from "./tron_contract.js";
|
|
10
10
|
export * from "./tron_gas_pricing.js";
|
|
11
11
|
export * from "./tron_keys.js";
|
|
12
|
+
export * from "./tron_memo.js";
|
|
12
13
|
export * from "./tron_transaction_builder.js";
|
|
13
14
|
export * from "./tron_transaction_status.js";
|
|
14
15
|
export * from "./tron_transactions.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../tron/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../tron/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC"}
|
|
@@ -13,7 +13,7 @@ import { TronClient, TronJson } from './tron_client.ts';
|
|
|
13
13
|
import { TronAbiEntry, TronContract } from './tron_contract.ts';
|
|
14
14
|
import { TronPublicKey } from './tron_keys.ts';
|
|
15
15
|
import { TronTrx } from './tron_transaction_builder.ts';
|
|
16
|
-
import { TronTransactionStatus } from './tron_transaction_status.ts';
|
|
16
|
+
import { TronIncludedTransactionDetails, TronTransactionStatus } from './tron_transaction_status.ts';
|
|
17
17
|
import { TronBroadcastTransactionResponse, TronTransactionSimulationResult, TronUnsignedTransaction } from './tron_transactions.ts';
|
|
18
18
|
export declare const TRC20_ABI: TronAbiEntry[];
|
|
19
19
|
export declare const TRC20_TRANSFER_TOPIC = "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef";
|
|
@@ -111,6 +111,17 @@ export declare class TronChain extends Chain implements SignedTransactionBroadca
|
|
|
111
111
|
simulateTransaction(req: TronSimulateTransactionRequest): Promise<TronTransactionSimulationResult>;
|
|
112
112
|
static _toBase58CheckAny(addressStr: string): string;
|
|
113
113
|
static _parseTrc20TransferLog(log: TronJson): TronParsedTransferLog | null;
|
|
114
|
+
static _nativeTransferOfContract(contract: TronJson): {
|
|
115
|
+
from: string;
|
|
116
|
+
to: string;
|
|
117
|
+
amountSun: bigint;
|
|
118
|
+
} | null;
|
|
119
|
+
static _trxPaidByInternalTransaction(internal: TronJson): {
|
|
120
|
+
from: string;
|
|
121
|
+
to: string;
|
|
122
|
+
amountSun: bigint;
|
|
123
|
+
} | null;
|
|
124
|
+
static _tronAddressOrNull(address: unknown): string | null;
|
|
114
125
|
_balanceChangesFromInfo(args: {
|
|
115
126
|
txData: TronJson;
|
|
116
127
|
info: TronJson;
|
|
@@ -121,6 +132,7 @@ export declare class TronChain extends Chain implements SignedTransactionBroadca
|
|
|
121
132
|
getTransactionStatus(txHash: string, opts?: TronGetTransactionStatusOpts): Promise<TronTransactionStatus>;
|
|
122
133
|
getTransactionStatus(txHashes: string[], opts?: TronGetTransactionStatusOpts): Promise<TronTransactionStatus[]>;
|
|
123
134
|
private getTransactionStatusOnce;
|
|
135
|
+
static _includedTransactionDetails(info: TronJson, txData: TronJson): TronIncludedTransactionDetails;
|
|
124
136
|
broadcastSignedTransaction(signedTransaction: AbstractSignedTransaction): Promise<TronBroadcastTransactionResponse>;
|
|
125
137
|
static verifySignature(publicKey: TronPublicKey | string, message: string, signedMessage: AbstractSignedMessage): boolean;
|
|
126
138
|
verifySignature(publicKey: TronPublicKey | string, message: string, signedMessage: AbstractSignedMessage): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tron_chain.d.ts","sourceRoot":"","sources":["../../../tron/tron_chain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAsB,cAAc,EAAwB,MAAM,4BAA4B,CAAC;AACtG,OAAO,EACL,aAAa,EACb,KAAK,EACL,qBAAqB,EACrB,wBAAwB,EACxB,6BAA6B,EAE9B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAc,cAAc,EAAiC,MAAM,cAAc,CAAC;AACzF,OAAO,
|
|
1
|
+
{"version":3,"file":"tron_chain.d.ts","sourceRoot":"","sources":["../../../tron/tron_chain.ts"],"names":[],"mappings":"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"}
|