quantumcoin 7.0.12 → 7.0.14
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/README-SDK.md +828 -823
- package/README.md +4 -0
- package/config.d.ts +50 -50
- package/examples/example-generated-sdk-js/README.md +65 -0
- package/examples/example-generated-sdk-js/examples/_test-wallet.js +17 -0
- package/examples/example-generated-sdk-js/examples/deploy.js +41 -0
- package/examples/example-generated-sdk-js/examples/events.js +36 -0
- package/examples/example-generated-sdk-js/examples/read-operations.js +46 -0
- package/examples/example-generated-sdk-js/examples/write-operations.js +44 -0
- package/examples/example-generated-sdk-js/index.d.ts +1 -0
- package/examples/example-generated-sdk-js/index.js +15 -0
- package/examples/example-generated-sdk-js/package-lock.json +59 -0
- package/examples/example-generated-sdk-js/package.json +22 -0
- package/examples/example-generated-sdk-js/src/SimpleERC20.d.ts +19 -0
- package/examples/example-generated-sdk-js/src/SimpleERC20.js +353 -0
- package/examples/example-generated-sdk-js/src/SimpleERC20__factory.d.ts +10 -0
- package/examples/example-generated-sdk-js/src/SimpleERC20__factory.js +29 -0
- package/examples/example-generated-sdk-js/src/index.d.ts +4 -0
- package/examples/example-generated-sdk-js/src/index.js +5 -0
- package/examples/example-generated-sdk-js/src/quantumcoin-shims.d.ts +23 -0
- package/examples/example-generated-sdk-js/src/types.d.ts +3 -0
- package/examples/example-generated-sdk-js/src/types.js +3 -0
- package/examples/example-generated-sdk-js/test/e2e/SimpleERC20.e2e.test.js +78 -0
- package/examples/example-generated-sdk-ts/README.md +65 -0
- package/examples/example-generated-sdk-ts/examples/_test-wallet.js +17 -0
- package/examples/example-generated-sdk-ts/examples/deploy.js +41 -0
- package/examples/example-generated-sdk-ts/examples/events.js +36 -0
- package/examples/example-generated-sdk-ts/examples/read-operations.js +46 -0
- package/examples/example-generated-sdk-ts/examples/write-operations.js +44 -0
- package/examples/example-generated-sdk-ts/index.d.ts +1 -0
- package/examples/example-generated-sdk-ts/index.js +15 -0
- package/examples/example-generated-sdk-ts/package-lock.json +59 -0
- package/examples/example-generated-sdk-ts/package.json +23 -0
- package/examples/example-generated-sdk-ts/src/SimpleERC20.ts +334 -0
- package/examples/example-generated-sdk-ts/src/SimpleERC20__factory.ts +28 -0
- package/examples/example-generated-sdk-ts/src/index.ts +4 -0
- package/examples/example-generated-sdk-ts/src/quantumcoin-shims.d.ts +23 -0
- package/examples/example-generated-sdk-ts/src/types.ts +4 -0
- package/examples/example-generated-sdk-ts/test/e2e/SimpleERC20.e2e.test.js +78 -0
- package/examples/example-generated-sdk-ts/tsconfig.json +14 -0
- package/examples/node_modules/.package-lock.json +5 -5
- package/examples/node_modules/quantum-coin-js-sdk/README.md +5 -5
- package/examples/node_modules/quantum-coin-js-sdk/example/package-lock.json +1 -1
- package/examples/node_modules/quantum-coin-js-sdk/index.d.ts +1031 -1031
- package/examples/node_modules/quantum-coin-js-sdk/index.js +15 -15
- package/examples/node_modules/quantum-coin-js-sdk/package.json +1 -1
- package/examples/node_modules/quantum-coin-js-sdk/wasmBase64.js +2 -2
- package/examples/package-lock.json +6 -6
- package/examples/package.json +1 -1
- package/examples/sdk-generator-erc20.inline.json +251 -251
- package/generate-sdk.js +1845 -1822
- package/package.json +2 -2
- package/src/abi/fragments.d.ts +42 -42
- package/src/abi/index.d.ts +13 -13
- package/src/abi/interface.js +11 -2
- package/src/abi/js-abi-coder.js +61 -2
- package/src/contract/contract.js +53 -5
- package/src/contract/index.d.ts +9 -9
- package/src/errors/index.d.ts +92 -92
- package/src/generator/index.d.ts +11 -4
- package/src/generator/index.js +185 -18
- package/src/internal/hex.d.ts +68 -61
- package/src/internal/hex.js +36 -0
- package/src/providers/json-rpc-provider.d.ts +12 -12
- package/src/providers/provider.js +141 -8
- package/src/utils/address.d.ts +58 -58
- package/src/utils/encoding.d.ts +120 -120
- package/src/utils/hashing.js +298 -298
- package/src/utils/index.d.ts +63 -63
- package/src/utils/index.js +14 -14
- package/src/utils/result.d.ts +57 -57
- package/src/utils/rlp.d.ts +12 -12
- package/src/utils/rlp.js +13 -1
- package/src/utils/units.d.ts +29 -29
- package/src/wallet/index.d.ts +10 -10
- package/src/wallet/wallet.d.ts +192 -192
- package/src/wallet/wallet.js +713 -630
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/README.md +83 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/artifacts/AllSolidityTypes.abi.json +12544 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/artifacts/AllSolidityTypes.bin +1 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/_test-wallet.js +17 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/_test-wallet.ts +10 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/deploy.js +41 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/deploy.ts +41 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/events.js +36 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/events.ts +36 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/offline-signing.js +82 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/offline-signing.ts +80 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/read-operations.js +46 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/read-operations.ts +44 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/write-operations.js +44 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/write-operations.ts +44 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/index.d.ts +1 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/index.js +21 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/package-lock.json +597 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/package.json +25 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/AllSolidityTypes.d.ts +1280 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/AllSolidityTypes.js +14021 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/AllSolidityTypes__factory.d.ts +11 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/AllSolidityTypes__factory.js +31 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/index.d.ts +4 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/index.js +5 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/quantumcoin-shims.d.ts +25 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/types.d.ts +3 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/types.js +3 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/test/e2e/AllSolidityTypes.e2e.test.js +77 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/test/e2e/AllSolidityTypes.extra.test.js +195 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/README.md +83 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/artifacts/AllSolidityTypes.abi.json +12544 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/artifacts/AllSolidityTypes.bin +1 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/_test-wallet.js +17 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/_test-wallet.ts +10 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/deploy.js +41 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/deploy.ts +41 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/events.js +36 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/events.ts +36 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/offline-signing.js +82 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/offline-signing.ts +80 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/read-operations.js +46 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/read-operations.ts +44 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/write-operations.js +44 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/write-operations.ts +44 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/index.d.ts +1 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/index.js +21 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/package-lock.json +597 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/package.json +26 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/AllSolidityTypes.ts +13940 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/AllSolidityTypes__factory.ts +31 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/index.ts +4 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/quantumcoin-shims.d.ts +25 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/types.ts +4 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/test/e2e/AllSolidityTypes.e2e.test.js +77 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/test/e2e/AllSolidityTypes.extra.test.js +195 -0
- package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/tsconfig.json +18 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/README.md +74 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/artifacts/SimpleERC20.abi.json +245 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/artifacts/SimpleERC20.bin +1 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/_test-wallet.js +17 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/_test-wallet.ts +10 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/deploy.js +41 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/deploy.ts +41 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/events.js +36 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/events.ts +36 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/offline-signing.js +82 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/offline-signing.ts +80 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/read-operations.js +46 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/read-operations.ts +44 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/write-operations.js +44 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/write-operations.ts +44 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/index.d.ts +1 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/index.js +16 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/package-lock.json +597 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/package.json +25 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/SimpleERC20.d.ts +24 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/SimpleERC20.js +378 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/SimpleERC20__factory.d.ts +10 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/SimpleERC20__factory.js +31 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/index.d.ts +4 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/index.js +5 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/quantumcoin-shims.d.ts +25 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/types.d.ts +3 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/types.js +3 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/test/e2e/SimpleERC20.e2e.test.js +90 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/README.md +74 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/artifacts/SimpleERC20.abi.json +245 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/artifacts/SimpleERC20.bin +1 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/_test-wallet.js +17 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/_test-wallet.ts +10 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/deploy.js +41 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/deploy.ts +41 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/events.js +36 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/events.ts +36 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/offline-signing.js +82 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/offline-signing.ts +80 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/read-operations.js +46 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/read-operations.ts +44 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/write-operations.js +44 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/write-operations.ts +44 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/index.d.ts +1 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/index.js +16 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/package-lock.json +597 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/package.json +26 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/SimpleERC20.ts +361 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/SimpleERC20__factory.ts +30 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/index.ts +4 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/quantumcoin-shims.d.ts +25 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/types.ts +4 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/test/e2e/SimpleERC20.e2e.test.js +90 -0
- package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/tsconfig.json +18 -0
- package/test/e2e/generator-interface.e2e.test.js +165 -0
- package/test/e2e/generator-interface.e2e.test.ts +160 -0
- package/test/e2e/signing-context-and-fee.e2e.test.js +141 -141
- package/test/e2e/signing-context-and-fee.e2e.test.ts +128 -128
- package/test/integration/provider.test.js +88 -88
- package/test/security/abi-decoder-bounds.test.js +122 -0
- package/test/security/contract-overrides.test.js +112 -0
- package/test/security/generator-injection.test.js +195 -0
- package/test/security/malformed-input.test.js +26 -27
- package/test/security/rpc-numeric-bounds.test.js +81 -0
- package/test/security/rpc-trust.test.js +202 -0
- package/test/unit/abi-interface.test.js +12 -5
- package/test/unit/abi-interface.test.ts +8 -1
- package/test/unit/address-wallet.test.js +923 -892
- package/test/unit/address-wallet.test.ts +877 -877
- package/test/unit/encoding-units-rlp.test.js +35 -0
- package/test/unit/generator.test.js +48 -1
- package/test/unit/generator.test.ts +48 -1
- package/test/unit/hashing.test.js +64 -64
- package/test/unit/hashing.test.ts +63 -63
- package/test/unit/internal-hex.test.js +32 -1
- package/test/unit/internal-hex.test.ts +32 -1
- package/test/unit/populate-transaction.test.js +33 -0
- package/test/unit/providers.test.js +51 -1
- package/test/unit/providers.test.ts +53 -0
package/src/wallet/wallet.d.ts
CHANGED
|
@@ -1,192 +1,192 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* SigningKey wrapper (PQC private/public key bytes).
|
|
3
|
-
*/
|
|
4
|
-
export class SigningKey {
|
|
5
|
-
/**
|
|
6
|
-
* @param {Uint8Array} privateKeyBytes
|
|
7
|
-
* @param {Uint8Array} publicKeyBytes
|
|
8
|
-
*/
|
|
9
|
-
constructor(privateKeyBytes: Uint8Array, publicKeyBytes: Uint8Array);
|
|
10
|
-
privateKeyBytes: Uint8Array<ArrayBuffer>;
|
|
11
|
-
publicKeyBytes: Uint8Array<ArrayBuffer>;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* AbstractSigner base (minimal).
|
|
15
|
-
*/
|
|
16
|
-
export class AbstractSigner {
|
|
17
|
-
/**
|
|
18
|
-
* @param {import("../providers/provider").AbstractProvider|null} provider
|
|
19
|
-
*/
|
|
20
|
-
constructor(provider: import("../providers/provider").AbstractProvider | null);
|
|
21
|
-
provider: import("../providers/provider").AbstractProvider;
|
|
22
|
-
getAddress(): Promise<void>;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* BaseWallet - core signing implementation.
|
|
26
|
-
*/
|
|
27
|
-
export class BaseWallet extends AbstractSigner {
|
|
28
|
-
/**
|
|
29
|
-
* @param {SigningKey} signingKey
|
|
30
|
-
* @param {import("../providers/provider").AbstractProvider|null=} provider
|
|
31
|
-
* @param {{ address: string }=} precomputed
|
|
32
|
-
* @param {any=} qcWallet Internal quantum-coin-js-sdk Wallet (optional)
|
|
33
|
-
*/
|
|
34
|
-
constructor(signingKey: SigningKey, provider?: (import("../providers/provider").AbstractProvider | null) | undefined, precomputed?: {
|
|
35
|
-
address: string;
|
|
36
|
-
} | undefined, qcWallet?: any | undefined);
|
|
37
|
-
signingKey: SigningKey;
|
|
38
|
-
_qcWallet: any;
|
|
39
|
-
/** @type {string} */
|
|
40
|
-
address: string;
|
|
41
|
-
readonly publicKey: string;
|
|
42
|
-
readonly seed: string | null;
|
|
43
|
-
getAddress(): Promise<string>;
|
|
44
|
-
/**
|
|
45
|
-
* Sign a transaction using quantum-coin-js-sdk signRawTransaction().
|
|
46
|
-
* @param {import("../providers/provider").TransactionRequest} tx
|
|
47
|
-
* @returns {Promise<string>}
|
|
48
|
-
*/
|
|
49
|
-
signTransaction(tx: import("../providers/provider").TransactionRequest): Promise<string>;
|
|
50
|
-
/**
|
|
51
|
-
* Signs and sends a transaction.
|
|
52
|
-
* @param {import("../providers/provider").TransactionRequest} tx
|
|
53
|
-
* @returns {Promise<import("../providers/provider").TransactionResponse>}
|
|
54
|
-
*/
|
|
55
|
-
sendTransaction(tx: import("../providers/provider").TransactionRequest): Promise<import("../providers/provider").TransactionResponse>;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Wallet - convenience methods around BaseWallet.
|
|
59
|
-
*/
|
|
60
|
-
export class Wallet extends BaseWallet {
|
|
61
|
-
/**
|
|
62
|
-
* Returns the seed phrase (list of words) if this wallet has a seed, else null.
|
|
63
|
-
* Derived from the stored pre-expansion seed via seed-words.getWordListFromSeedArray.
|
|
64
|
-
*/
|
|
65
|
-
getPhrase(): string[] | null;
|
|
66
|
-
/**
|
|
67
|
-
* Returns the recommended signing context for this wallet.
|
|
68
|
-
* Setting fullSign to true may incur additional gas cost.
|
|
69
|
-
* @param {boolean|null=} fullSign Defaults to false when null or omitted.
|
|
70
|
-
* @returns {number}
|
|
71
|
-
*/
|
|
72
|
-
getSigningContext(fullSign?: boolean | null): number;
|
|
73
|
-
/**
|
|
74
|
-
* Creates a new random wallet.
|
|
75
|
-
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
76
|
-
* @param {number|null=} keyType Optional key type: null (default=3), 3, or 5
|
|
77
|
-
* @returns {Wallet}
|
|
78
|
-
*/
|
|
79
|
-
static createRandom(provider?: import("../providers/provider").AbstractProvider | undefined, keyType?: number | null): Wallet;
|
|
80
|
-
/**
|
|
81
|
-
* Creates a wallet from raw seed bytes.
|
|
82
|
-
* @param {number[]} seed Raw seed bytes: 64 (keyType 3), 72 (keyType 5), or 96 (legacy)
|
|
83
|
-
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
84
|
-
* @returns {Wallet}
|
|
85
|
-
*/
|
|
86
|
-
static fromSeed(seed: number[], provider?: import("../providers/provider").AbstractProvider | undefined): Wallet;
|
|
87
|
-
/**
|
|
88
|
-
* Creates a wallet from an encrypted JSON string.
|
|
89
|
-
* @param {string} json
|
|
90
|
-
* @param {string} password
|
|
91
|
-
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
92
|
-
* @returns {Wallet}
|
|
93
|
-
*/
|
|
94
|
-
static fromEncryptedJsonSync(json: string, password: string, provider?: import("../providers/provider").AbstractProvider | undefined): Wallet;
|
|
95
|
-
/**
|
|
96
|
-
* Creates a wallet from a seed phrase (32, 36, or 48 words).
|
|
97
|
-
* @param {string|string[]} phrase
|
|
98
|
-
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
99
|
-
* @returns {Wallet}
|
|
100
|
-
*/
|
|
101
|
-
static fromPhrase(phrase: string | string[], provider?: import("../providers/provider").AbstractProvider | undefined): Wallet;
|
|
102
|
-
/**
|
|
103
|
-
* Creates a wallet from raw private and public key bytes.
|
|
104
|
-
* @param {Uint8Array|string} privateKey Private key bytes or hex string
|
|
105
|
-
* @param {Uint8Array|string} publicKey Public key bytes or hex string
|
|
106
|
-
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
107
|
-
* @returns {Wallet}
|
|
108
|
-
*/
|
|
109
|
-
static fromKeys(privateKey: Uint8Array | string, publicKey: Uint8Array | string, provider?: import("../providers/provider").AbstractProvider | undefined): Wallet;
|
|
110
|
-
/**
|
|
111
|
-
* Internal helper: build a Wallet from a quantum-coin-js-sdk Wallet object.
|
|
112
|
-
* @param {any} qcWallet
|
|
113
|
-
* @param {import("../providers/provider").AbstractProvider|null} provider
|
|
114
|
-
* @returns {Wallet}
|
|
115
|
-
*/
|
|
116
|
-
static _fromQcWallet(qcWallet: any, provider: import("../providers/provider").AbstractProvider | null): Wallet;
|
|
117
|
-
/**
|
|
118
|
-
* @param {string|Uint8Array|SigningKey} key
|
|
119
|
-
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
120
|
-
*/
|
|
121
|
-
constructor(key: string | Uint8Array | SigningKey, provider?: import("../providers/provider").AbstractProvider | undefined);
|
|
122
|
-
/**
|
|
123
|
-
* Returns wallet address (sync).
|
|
124
|
-
* @returns {string}
|
|
125
|
-
*/
|
|
126
|
-
getAddress(): string;
|
|
127
|
-
/**
|
|
128
|
-
* Returns wallet balance.
|
|
129
|
-
* @param {string=} blockTag
|
|
130
|
-
* @returns {Promise<bigint>}
|
|
131
|
-
*/
|
|
132
|
-
getBalance(blockTag?: string | undefined): Promise<bigint>;
|
|
133
|
-
/**
|
|
134
|
-
* Returns wallet nonce.
|
|
135
|
-
* @param {string=} blockTag
|
|
136
|
-
* @returns {Promise<number>}
|
|
137
|
-
*/
|
|
138
|
-
getTransactionCount(blockTag?: string | undefined): Promise<number>;
|
|
139
|
-
/**
|
|
140
|
-
* Encrypts and serializes this wallet to JSON.
|
|
141
|
-
* @param {string|Uint8Array} password
|
|
142
|
-
* @returns {string}
|
|
143
|
-
*/
|
|
144
|
-
encryptSync(password: string | Uint8Array): string;
|
|
145
|
-
/**
|
|
146
|
-
* Encrypts raw seed bytes into a wallet JSON string (version 5 pre-expansion format).
|
|
147
|
-
* The resulting JSON can be opened with `Wallet.fromEncryptedJsonSync()` or
|
|
148
|
-
* Desktop/Mobile/Web/CLI wallet applications.
|
|
149
|
-
* @param {number[]|Uint8Array} seed Raw seed bytes: 64 (keyType 3), 72 (keyType 5), or 96 (legacy)
|
|
150
|
-
* @param {string|Uint8Array} password Passphrase (at least 12 characters)
|
|
151
|
-
* @returns {string}
|
|
152
|
-
*/
|
|
153
|
-
static encryptSeedSync(seed: number[] | Uint8Array, password: string | Uint8Array): string;
|
|
154
|
-
/**
|
|
155
|
-
* Returns a new wallet connected to a provider.
|
|
156
|
-
* @param {import("../providers/provider").AbstractProvider} provider
|
|
157
|
-
* @returns {Wallet}
|
|
158
|
-
*/
|
|
159
|
-
connect(provider: import("../providers/provider").AbstractProvider): Wallet;
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* NonceManager wrapper.
|
|
163
|
-
*/
|
|
164
|
-
export class NonceManager extends AbstractSigner {
|
|
165
|
-
/**
|
|
166
|
-
* @param {AbstractSigner} signer
|
|
167
|
-
*/
|
|
168
|
-
constructor(signer: AbstractSigner);
|
|
169
|
-
signer: AbstractSigner;
|
|
170
|
-
_nonce: any;
|
|
171
|
-
getTransactionCount(blockTag: any): any;
|
|
172
|
-
sendTransaction(tx: any): Promise<any>;
|
|
173
|
-
reset(): void;
|
|
174
|
-
increment(): void;
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* JsonRpcSigner placeholder (ethers-like).
|
|
178
|
-
* This SDK encourages using Wallet directly for signing.
|
|
179
|
-
*/
|
|
180
|
-
export class JsonRpcSigner extends AbstractSigner {
|
|
181
|
-
constructor(provider: any, address: any);
|
|
182
|
-
_address: any;
|
|
183
|
-
getAddress(): Promise<any>;
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* VoidSigner (cannot sign, only provides address).
|
|
187
|
-
*/
|
|
188
|
-
export class VoidSigner extends AbstractSigner {
|
|
189
|
-
constructor(address: any, provider: any);
|
|
190
|
-
_address: string;
|
|
191
|
-
getAddress(): Promise<string>;
|
|
192
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* SigningKey wrapper (PQC private/public key bytes).
|
|
3
|
+
*/
|
|
4
|
+
export class SigningKey {
|
|
5
|
+
/**
|
|
6
|
+
* @param {Uint8Array} privateKeyBytes
|
|
7
|
+
* @param {Uint8Array} publicKeyBytes
|
|
8
|
+
*/
|
|
9
|
+
constructor(privateKeyBytes: Uint8Array, publicKeyBytes: Uint8Array);
|
|
10
|
+
privateKeyBytes: Uint8Array<ArrayBuffer>;
|
|
11
|
+
publicKeyBytes: Uint8Array<ArrayBuffer>;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* AbstractSigner base (minimal).
|
|
15
|
+
*/
|
|
16
|
+
export class AbstractSigner {
|
|
17
|
+
/**
|
|
18
|
+
* @param {import("../providers/provider").AbstractProvider|null} provider
|
|
19
|
+
*/
|
|
20
|
+
constructor(provider: import("../providers/provider").AbstractProvider | null);
|
|
21
|
+
provider: import("../providers/provider").AbstractProvider;
|
|
22
|
+
getAddress(): Promise<void>;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* BaseWallet - core signing implementation.
|
|
26
|
+
*/
|
|
27
|
+
export class BaseWallet extends AbstractSigner {
|
|
28
|
+
/**
|
|
29
|
+
* @param {SigningKey} signingKey
|
|
30
|
+
* @param {import("../providers/provider").AbstractProvider|null=} provider
|
|
31
|
+
* @param {{ address: string }=} precomputed
|
|
32
|
+
* @param {any=} qcWallet Internal quantum-coin-js-sdk Wallet (optional)
|
|
33
|
+
*/
|
|
34
|
+
constructor(signingKey: SigningKey, provider?: (import("../providers/provider").AbstractProvider | null) | undefined, precomputed?: {
|
|
35
|
+
address: string;
|
|
36
|
+
} | undefined, qcWallet?: any | undefined);
|
|
37
|
+
signingKey: SigningKey;
|
|
38
|
+
_qcWallet: any;
|
|
39
|
+
/** @type {string} */
|
|
40
|
+
address: string;
|
|
41
|
+
readonly publicKey: string;
|
|
42
|
+
readonly seed: string | null;
|
|
43
|
+
getAddress(): Promise<string>;
|
|
44
|
+
/**
|
|
45
|
+
* Sign a transaction using quantum-coin-js-sdk signRawTransaction().
|
|
46
|
+
* @param {import("../providers/provider").TransactionRequest} tx
|
|
47
|
+
* @returns {Promise<string>}
|
|
48
|
+
*/
|
|
49
|
+
signTransaction(tx: import("../providers/provider").TransactionRequest): Promise<string>;
|
|
50
|
+
/**
|
|
51
|
+
* Signs and sends a transaction.
|
|
52
|
+
* @param {import("../providers/provider").TransactionRequest} tx
|
|
53
|
+
* @returns {Promise<import("../providers/provider").TransactionResponse>}
|
|
54
|
+
*/
|
|
55
|
+
sendTransaction(tx: import("../providers/provider").TransactionRequest): Promise<import("../providers/provider").TransactionResponse>;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Wallet - convenience methods around BaseWallet.
|
|
59
|
+
*/
|
|
60
|
+
export class Wallet extends BaseWallet {
|
|
61
|
+
/**
|
|
62
|
+
* Returns the seed phrase (list of words) if this wallet has a seed, else null.
|
|
63
|
+
* Derived from the stored pre-expansion seed via seed-words.getWordListFromSeedArray.
|
|
64
|
+
*/
|
|
65
|
+
getPhrase(): string[] | null;
|
|
66
|
+
/**
|
|
67
|
+
* Returns the recommended signing context for this wallet.
|
|
68
|
+
* Setting fullSign to true may incur additional gas cost.
|
|
69
|
+
* @param {boolean|null=} fullSign Defaults to false when null or omitted.
|
|
70
|
+
* @returns {number}
|
|
71
|
+
*/
|
|
72
|
+
getSigningContext(fullSign?: boolean | null): number;
|
|
73
|
+
/**
|
|
74
|
+
* Creates a new random wallet.
|
|
75
|
+
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
76
|
+
* @param {number|null=} keyType Optional key type: null (default=3), 3, or 5
|
|
77
|
+
* @returns {Wallet}
|
|
78
|
+
*/
|
|
79
|
+
static createRandom(provider?: import("../providers/provider").AbstractProvider | undefined, keyType?: number | null): Wallet;
|
|
80
|
+
/**
|
|
81
|
+
* Creates a wallet from raw seed bytes.
|
|
82
|
+
* @param {number[]} seed Raw seed bytes: 64 (keyType 3), 72 (keyType 5), or 96 (legacy)
|
|
83
|
+
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
84
|
+
* @returns {Wallet}
|
|
85
|
+
*/
|
|
86
|
+
static fromSeed(seed: number[], provider?: import("../providers/provider").AbstractProvider | undefined): Wallet;
|
|
87
|
+
/**
|
|
88
|
+
* Creates a wallet from an encrypted JSON string.
|
|
89
|
+
* @param {string} json
|
|
90
|
+
* @param {string} password
|
|
91
|
+
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
92
|
+
* @returns {Wallet}
|
|
93
|
+
*/
|
|
94
|
+
static fromEncryptedJsonSync(json: string, password: string, provider?: import("../providers/provider").AbstractProvider | undefined): Wallet;
|
|
95
|
+
/**
|
|
96
|
+
* Creates a wallet from a seed phrase (32, 36, or 48 words).
|
|
97
|
+
* @param {string|string[]} phrase
|
|
98
|
+
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
99
|
+
* @returns {Wallet}
|
|
100
|
+
*/
|
|
101
|
+
static fromPhrase(phrase: string | string[], provider?: import("../providers/provider").AbstractProvider | undefined): Wallet;
|
|
102
|
+
/**
|
|
103
|
+
* Creates a wallet from raw private and public key bytes.
|
|
104
|
+
* @param {Uint8Array|string} privateKey Private key bytes or hex string
|
|
105
|
+
* @param {Uint8Array|string} publicKey Public key bytes or hex string
|
|
106
|
+
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
107
|
+
* @returns {Wallet}
|
|
108
|
+
*/
|
|
109
|
+
static fromKeys(privateKey: Uint8Array | string, publicKey: Uint8Array | string, provider?: import("../providers/provider").AbstractProvider | undefined): Wallet;
|
|
110
|
+
/**
|
|
111
|
+
* Internal helper: build a Wallet from a quantum-coin-js-sdk Wallet object.
|
|
112
|
+
* @param {any} qcWallet
|
|
113
|
+
* @param {import("../providers/provider").AbstractProvider|null} provider
|
|
114
|
+
* @returns {Wallet}
|
|
115
|
+
*/
|
|
116
|
+
static _fromQcWallet(qcWallet: any, provider: import("../providers/provider").AbstractProvider | null): Wallet;
|
|
117
|
+
/**
|
|
118
|
+
* @param {string|Uint8Array|SigningKey} key
|
|
119
|
+
* @param {import("../providers/provider").AbstractProvider=} provider
|
|
120
|
+
*/
|
|
121
|
+
constructor(key: string | Uint8Array | SigningKey, provider?: import("../providers/provider").AbstractProvider | undefined);
|
|
122
|
+
/**
|
|
123
|
+
* Returns wallet address (sync).
|
|
124
|
+
* @returns {string}
|
|
125
|
+
*/
|
|
126
|
+
getAddress(): string;
|
|
127
|
+
/**
|
|
128
|
+
* Returns wallet balance.
|
|
129
|
+
* @param {string=} blockTag
|
|
130
|
+
* @returns {Promise<bigint>}
|
|
131
|
+
*/
|
|
132
|
+
getBalance(blockTag?: string | undefined): Promise<bigint>;
|
|
133
|
+
/**
|
|
134
|
+
* Returns wallet nonce.
|
|
135
|
+
* @param {string=} blockTag
|
|
136
|
+
* @returns {Promise<number>}
|
|
137
|
+
*/
|
|
138
|
+
getTransactionCount(blockTag?: string | undefined): Promise<number>;
|
|
139
|
+
/**
|
|
140
|
+
* Encrypts and serializes this wallet to JSON.
|
|
141
|
+
* @param {string|Uint8Array} password
|
|
142
|
+
* @returns {string}
|
|
143
|
+
*/
|
|
144
|
+
encryptSync(password: string | Uint8Array): string;
|
|
145
|
+
/**
|
|
146
|
+
* Encrypts raw seed bytes into a wallet JSON string (version 5 pre-expansion format).
|
|
147
|
+
* The resulting JSON can be opened with `Wallet.fromEncryptedJsonSync()` or
|
|
148
|
+
* Desktop/Mobile/Web/CLI wallet applications.
|
|
149
|
+
* @param {number[]|Uint8Array} seed Raw seed bytes: 64 (keyType 3), 72 (keyType 5), or 96 (legacy)
|
|
150
|
+
* @param {string|Uint8Array} password Passphrase (at least 12 characters)
|
|
151
|
+
* @returns {string}
|
|
152
|
+
*/
|
|
153
|
+
static encryptSeedSync(seed: number[] | Uint8Array, password: string | Uint8Array): string;
|
|
154
|
+
/**
|
|
155
|
+
* Returns a new wallet connected to a provider.
|
|
156
|
+
* @param {import("../providers/provider").AbstractProvider} provider
|
|
157
|
+
* @returns {Wallet}
|
|
158
|
+
*/
|
|
159
|
+
connect(provider: import("../providers/provider").AbstractProvider): Wallet;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* NonceManager wrapper.
|
|
163
|
+
*/
|
|
164
|
+
export class NonceManager extends AbstractSigner {
|
|
165
|
+
/**
|
|
166
|
+
* @param {AbstractSigner} signer
|
|
167
|
+
*/
|
|
168
|
+
constructor(signer: AbstractSigner);
|
|
169
|
+
signer: AbstractSigner;
|
|
170
|
+
_nonce: any;
|
|
171
|
+
getTransactionCount(blockTag: any): any;
|
|
172
|
+
sendTransaction(tx: any): Promise<any>;
|
|
173
|
+
reset(): void;
|
|
174
|
+
increment(): void;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* JsonRpcSigner placeholder (ethers-like).
|
|
178
|
+
* This SDK encourages using Wallet directly for signing.
|
|
179
|
+
*/
|
|
180
|
+
export class JsonRpcSigner extends AbstractSigner {
|
|
181
|
+
constructor(provider: any, address: any);
|
|
182
|
+
_address: any;
|
|
183
|
+
getAddress(): Promise<any>;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* VoidSigner (cannot sign, only provides address).
|
|
187
|
+
*/
|
|
188
|
+
export class VoidSigner extends AbstractSigner {
|
|
189
|
+
constructor(address: any, provider: any);
|
|
190
|
+
_address: string;
|
|
191
|
+
getAddress(): Promise<string>;
|
|
192
|
+
}
|