opnet 1.0.13 → 1.0.15
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/CONTRIBUTING.md +71 -0
- package/README.md +6 -7
- package/browser/_version.d.ts +1 -1
- package/browser/abi/BaseContractProperty.d.ts +3 -0
- package/browser/abi/BitcoinAbiTypes.d.ts +4 -0
- package/browser/abi/BitcoinInterface.d.ts +9 -0
- package/browser/abi/interfaces/BaseContractProperties.d.ts +4 -0
- package/browser/abi/interfaces/BitcoinAbiValue.d.ts +5 -0
- package/browser/abi/interfaces/BitcoinInterfaceAbi.d.ts +11 -0
- package/browser/bitcoin/UTXOs.d.ts +1 -6
- package/browser/bitcoin/interfaces/IUTXO.d.ts +7 -0
- package/browser/common/CommonTypes.d.ts +1 -0
- package/browser/contracts/CallResult.d.ts +6 -3
- package/browser/contracts/Contract.d.ts +28 -0
- package/browser/contracts/interfaces/ICallResult.d.ts +2 -3
- package/browser/contracts/interfaces/IContract.d.ts +4 -0
- package/browser/crypto/crypto-browser.d.ts +7 -0
- package/browser/index.js +1 -1
- package/browser/opnet.d.ts +11 -0
- package/browser/scripts/testContract.d.ts +1 -0
- package/browser/scripts/testMethods.d.ts +1 -0
- package/browser/utils/BitcoinUtils.d.ts +4 -0
- package/build/_version.d.ts +1 -1
- package/build/_version.js +1 -1
- package/build/abi/BaseContractProperty.d.ts +3 -0
- package/build/abi/BaseContractProperty.js +1 -0
- package/build/abi/BitcoinAbiTypes.d.ts +4 -0
- package/build/abi/BitcoinAbiTypes.js +5 -0
- package/build/abi/BitcoinInterface.d.ts +9 -0
- package/build/abi/BitcoinInterface.js +45 -0
- package/build/abi/BitcoinInterfaceAbi.d.ts +3 -0
- package/build/abi/BitcoinInterfaceAbi.js +1 -0
- package/build/abi/enums/ParamTypes.d.ts +0 -0
- package/build/abi/enums/ParamTypes.js +1 -0
- package/build/abi/interface/BitcoinInterface.d.ts +6 -0
- package/build/abi/interface/BitcoinInterface.js +12 -0
- package/build/abi/interface/BitcoinInterfaceAbi.d.ts +3 -0
- package/build/abi/interface/BitcoinInterfaceAbi.js +1 -0
- package/build/abi/interfaces/BaseContractProperties.d.ts +4 -0
- package/build/abi/interfaces/BaseContractProperties.js +1 -0
- package/build/abi/interfaces/BaseContractProperty.d.ts +2 -0
- package/build/abi/interfaces/BaseContractProperty.js +1 -0
- package/build/abi/interfaces/BitcoinAbiInput.d.ts +5 -0
- package/build/abi/interfaces/BitcoinAbiInput.js +1 -0
- package/build/abi/interfaces/BitcoinAbiValue.d.ts +5 -0
- package/build/abi/interfaces/BitcoinAbiValue.js +1 -0
- package/build/abi/interfaces/BitcoinInterfaceAbi.d.ts +11 -0
- package/build/abi/interfaces/BitcoinInterfaceAbi.js +1 -0
- package/build/bitcoin/UTXOs.d.ts +1 -6
- package/build/bitcoin/interfaces/IUTXO.d.ts +7 -0
- package/build/bitcoin/interfaces/IUTXO.js +1 -0
- package/build/common/CommonTypes.d.ts +1 -0
- package/build/contracts/CallResult.d.ts +6 -3
- package/build/contracts/CallResult.js +9 -2
- package/build/contracts/Contract.d.ts +28 -0
- package/build/contracts/Contract.js +206 -0
- package/build/contracts/interfaces/ICallResult.d.ts +2 -3
- package/build/contracts/interfaces/IContract.d.ts +4 -0
- package/build/contracts/interfaces/IContract.js +1 -0
- package/build/interface/BitcoinInterface.d.ts +6 -0
- package/build/interface/BitcoinInterface.js +12 -0
- package/build/interface/BitcoinInterfaceAbi.d.ts +3 -0
- package/build/interface/BitcoinInterfaceAbi.js +1 -0
- package/build/interface/Interface.d.ts +2 -0
- package/build/interface/Interface.js +2 -0
- package/build/interface.d.ts +0 -0
- package/build/interface.js +1 -0
- package/build/opnet.d.ts +11 -0
- package/build/opnet.js +11 -0
- package/build/scripts/test.js +12 -0
- package/build/scripts/testContract.d.ts +1 -0
- package/build/scripts/testContract.js +28 -0
- package/build/scripts/testMethods.d.ts +1 -0
- package/build/scripts/testMethods.js +24 -0
- package/build/utils/BitcoinUtils.d.ts +4 -0
- package/build/utils/BitcoinUtils.js +7 -0
- package/cjs/_version.d.ts +1 -0
- package/cjs/_version.js +4 -0
- package/cjs/abi/BaseContractProperty.d.ts +3 -0
- package/cjs/abi/BaseContractProperty.js +2 -0
- package/cjs/abi/BitcoinAbiTypes.d.ts +4 -0
- package/cjs/abi/BitcoinAbiTypes.js +8 -0
- package/cjs/abi/BitcoinInterface.d.ts +9 -0
- package/cjs/abi/BitcoinInterface.js +49 -0
- package/cjs/abi/interfaces/BaseContractProperties.d.ts +4 -0
- package/cjs/abi/interfaces/BaseContractProperties.js +2 -0
- package/cjs/abi/interfaces/BitcoinAbiValue.d.ts +5 -0
- package/cjs/abi/interfaces/BitcoinAbiValue.js +2 -0
- package/cjs/abi/interfaces/BitcoinInterfaceAbi.d.ts +11 -0
- package/cjs/abi/interfaces/BitcoinInterfaceAbi.js +2 -0
- package/cjs/bitcoin/BitcoinAddress.d.ts +20 -0
- package/cjs/bitcoin/BitcoinAddress.js +116 -0
- package/cjs/bitcoin/UTXOs.d.ts +15 -0
- package/cjs/bitcoin/UTXOs.js +16 -0
- package/cjs/block/Block.d.ts +2 -3
- package/cjs/block/Block.js +3 -28
- package/cjs/block/interfaces/IBlock.d.ts +28 -0
- package/cjs/block/interfaces/IBlock.js +2 -0
- package/cjs/common/CommonTypes.d.ts +4 -0
- package/cjs/common/CommonTypes.js +2 -0
- package/cjs/contracts/CallResult.d.ts +13 -0
- package/cjs/contracts/CallResult.js +25 -0
- package/cjs/contracts/Contract.d.ts +28 -0
- package/cjs/contracts/Contract.js +212 -0
- package/cjs/contracts/ContractData.d.ts +15 -0
- package/cjs/contracts/ContractData.js +36 -0
- package/cjs/contracts/interfaces/IAccessList.d.ts +6 -0
- package/cjs/contracts/interfaces/IAccessList.js +2 -0
- package/cjs/contracts/interfaces/ICallResult.d.ts +11 -0
- package/cjs/contracts/interfaces/ICallResult.js +2 -0
- package/cjs/contracts/interfaces/IContract.d.ts +4 -0
- package/cjs/contracts/interfaces/IContract.js +2 -0
- package/cjs/contracts/interfaces/IRawContract.d.ts +13 -0
- package/cjs/contracts/interfaces/IRawContract.js +2 -0
- package/cjs/crypto/crypto.d.ts +2 -0
- package/cjs/crypto/crypto.js +8 -0
- package/cjs/index.d.ts +3 -11
- package/cjs/index.js +16 -11
- package/cjs/opnet.d.ts +36 -0
- package/cjs/opnet.js +54 -0
- package/cjs/providers/AbstractRpcProvider.d.ts +34 -0
- package/cjs/providers/AbstractRpcProvider.js +161 -0
- package/cjs/providers/JSONRpcProvider.d.ts +5 -9
- package/cjs/providers/JSONRpcProvider.js +4 -29
- package/cjs/providers/WebsocketRpcProvider.d.ts +8 -0
- package/cjs/providers/WebsocketRpcProvider.js +27 -0
- package/cjs/scripts/testContract.d.ts +1 -0
- package/cjs/scripts/testContract.js +30 -0
- package/cjs/scripts/testMethods.d.ts +1 -0
- package/cjs/scripts/testMethods.js +26 -0
- package/cjs/serialize/BigInt.d.ts +6 -0
- package/cjs/serialize/BigInt.js +5 -0
- package/cjs/storage/StoredValue.d.ts +10 -0
- package/cjs/storage/StoredValue.js +28 -0
- package/cjs/storage/interfaces/IStorageValue.d.ts +9 -0
- package/cjs/storage/interfaces/IStorageValue.js +2 -0
- package/cjs/transactions/DeploymentTransaction.d.ts +10 -1
- package/cjs/transactions/DeploymentTransaction.js +16 -0
- package/cjs/transactions/GenericTransaction.d.ts +1 -1
- package/cjs/transactions/InteractionTransaction.d.ts +1 -1
- package/cjs/transactions/Transaction.d.ts +1 -1
- package/cjs/transactions/Transaction.js +1 -1
- package/cjs/transactions/TransactionParser.d.ts +7 -0
- package/cjs/transactions/TransactionParser.js +32 -0
- package/cjs/transactions/TransactionReceipt.d.ts +10 -0
- package/cjs/transactions/TransactionReceipt.js +16 -0
- package/cjs/transactions/interfaces/ITransaction.d.ts +39 -0
- package/cjs/transactions/interfaces/ITransaction.js +2 -0
- package/cjs/transactions/interfaces/ITransactionReceipt.d.ts +8 -0
- package/cjs/transactions/interfaces/ITransactionReceipt.js +2 -0
- package/cjs/utils/BitcoinUtils.d.ts +4 -0
- package/cjs/utils/BitcoinUtils.js +14 -0
- package/docs/assets/navigation.js +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/classes/AbstractRpcProvider.html +15 -15
- package/docs/classes/BaseContract.html +187 -0
- package/docs/classes/BitcoinAddress.html +5 -2
- package/docs/classes/BitcoinInterface.html +182 -0
- package/docs/classes/BitcoinUtils.html +183 -0
- package/docs/classes/Block.html +5 -3
- package/docs/classes/CallResult.html +6 -2
- package/docs/classes/ContractData.html +4 -2
- package/docs/classes/DeploymentTransaction.html +4 -2
- package/docs/classes/GenericTransaction.html +4 -2
- package/docs/classes/IBaseContract.html +192 -0
- package/docs/classes/InteractionTransaction.html +3 -2
- package/docs/classes/JSONRpcProvider.html +14 -14
- package/docs/classes/StoredValue.html +4 -2
- package/docs/classes/TransactionBase.html +4 -2
- package/docs/classes/TransactionInput.html +3 -2
- package/docs/classes/TransactionOutput.html +3 -2
- package/docs/classes/TransactionParser.html +3 -2
- package/docs/classes/TransactionReceipt.html +3 -2
- package/docs/classes/UTXO.html +4 -2
- package/docs/classes/WebSocketRpcProvider.html +14 -14
- package/docs/enums/ABIDataTypes.html +183 -0
- package/docs/enums/BitcoinAbiTypes.html +178 -0
- package/docs/enums/OPNetTransactionTypes.html +2 -2
- package/docs/functions/getContract.html +180 -0
- package/docs/hierarchy.html +1 -1
- package/docs/index.html +4 -5
- package/docs/interfaces/BaseContractProperties.html +176 -0
- package/docs/interfaces/BitcoinAbiValue.html +180 -0
- package/docs/interfaces/BitcoinInterfaceAbiBase.html +182 -0
- package/docs/interfaces/IAccessList.html +3 -1
- package/docs/interfaces/IAccessListItem.html +3 -1
- package/docs/interfaces/IBlock.html +5 -3
- package/docs/interfaces/IBlockCommon.html +5 -3
- package/docs/interfaces/ICallRequestError.html +4 -2
- package/docs/interfaces/ICallResultData.html +4 -2
- package/docs/interfaces/IContract.html +177 -0
- package/docs/interfaces/IDeploymentTransaction.html +4 -2
- package/docs/interfaces/IGenericTransaction.html +4 -2
- package/docs/interfaces/IInteractionTransaction.html +4 -2
- package/docs/interfaces/IRawContract.html +5 -2
- package/docs/interfaces/IStorageValue.html +4 -2
- package/docs/interfaces/ITransactionBase.html +4 -2
- package/docs/interfaces/ITransactionInput.html +3 -2
- package/docs/interfaces/ITransactionOutput.html +3 -2
- package/docs/interfaces/ITransactionReceipt.html +4 -2
- package/docs/interfaces/IUTXO.html +4 -2
- package/docs/modules.html +38 -24
- package/docs/types/BaseContractProperty.html +176 -0
- package/docs/types/BitcoinAddressLike.html +1 -1
- package/docs/types/BitcoinInterfaceAbi.html +174 -0
- package/docs/types/BlockHeaderChecksumProof.html +1 -1
- package/docs/types/DecodedCallResult.html +174 -0
- package/docs/types/ICallResult.html +2 -1
- package/docs/types/ITransaction.html +2 -1
- package/docs/types/PointerLike.html +1 -1
- package/docs/types/UTXOs.html +3 -1
- package/docs/variables/version.html +1 -1
- package/package.json +6 -4
- package/src/_version.ts +1 -1
- package/src/abi/BaseContractProperty.ts +8 -0
- package/src/abi/BitcoinAbiTypes.ts +9 -0
- package/src/abi/BitcoinInterface.ts +63 -0
- package/src/abi/interfaces/BaseContractProperties.ts +9 -0
- package/src/abi/interfaces/BitcoinAbiValue.ts +18 -0
- package/src/abi/interfaces/BitcoinInterfaceAbi.ts +19 -0
- package/src/bitcoin/BitcoinAddress.ts +5 -0
- package/src/bitcoin/UTXOs.ts +28 -26
- package/src/bitcoin/interfaces/IUTXO.ts +12 -0
- package/src/block/Block.ts +5 -0
- package/src/block/interfaces/IBlock.ts +46 -38
- package/src/common/CommonTypes.ts +16 -4
- package/src/contracts/CallResult.ts +34 -20
- package/src/contracts/Contract.ts +321 -0
- package/src/contracts/ContractData.ts +46 -41
- package/src/contracts/interfaces/IAccessList.ts +17 -7
- package/src/contracts/interfaces/ICallResult.ts +29 -15
- package/src/contracts/interfaces/IContract.ts +10 -0
- package/src/contracts/interfaces/IRawContract.ts +17 -12
- package/src/crypto/crypto-browser.js +71 -60
- package/src/opnet.ts +17 -0
- package/src/providers/AbstractRpcProvider.ts +352 -351
- package/src/scripts/testContract.ts +51 -0
- package/src/scripts/{test.ts → testMethods.ts} +52 -54
- package/src/scripts/test_abi.json +31 -0
- package/src/storage/StoredValue.ts +35 -30
- package/src/storage/interfaces/IStorageValue.ts +15 -10
- package/src/transactions/DeploymentTransaction.ts +41 -36
- package/src/transactions/GenericTransaction.ts +19 -12
- package/src/transactions/InteractionTransaction.ts +44 -40
- package/src/transactions/Transaction.ts +8 -0
- package/src/transactions/TransactionInput.ts +8 -0
- package/src/transactions/TransactionOutput.ts +8 -0
- package/src/transactions/TransactionParser.ts +47 -43
- package/src/transactions/TransactionReceipt.ts +22 -18
- package/src/transactions/interfaces/ITransaction.ts +78 -52
- package/src/transactions/interfaces/ITransactionReceipt.ts +14 -9
- package/src/utils/BitcoinUtils.ts +22 -0
- package/webpack.config.js +71 -75
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Contributing Guidelines
|
|
2
|
+
|
|
3
|
+
Thank you for considering contributing to our project! Please take a moment to
|
|
4
|
+
review the following guidelines before submitting your contribution.
|
|
5
|
+
|
|
6
|
+
## Pull Requests
|
|
7
|
+
|
|
8
|
+
When submitting a pull request, please make sure to follow these guidelines:
|
|
9
|
+
|
|
10
|
+
### Before You Begin
|
|
11
|
+
|
|
12
|
+
1. **Fork the repository**: If you haven't already, fork the repository to your
|
|
13
|
+
GitHub account.
|
|
14
|
+
|
|
15
|
+
2. **Create a new branch**: Create a new branch for your feature or bug fix.
|
|
16
|
+
This helps keep the main branch clean and makes it easier to review your
|
|
17
|
+
changes.
|
|
18
|
+
|
|
19
|
+
3. **Ensure your code is up-to-date**: Before starting work, make sure your
|
|
20
|
+
forked repository is up-to-date with the latest changes from the main
|
|
21
|
+
repository.
|
|
22
|
+
|
|
23
|
+
### Making Changes
|
|
24
|
+
|
|
25
|
+
1. **Follow coding conventions**: Make sure your code follows the existing
|
|
26
|
+
coding style and conventions used in the project.
|
|
27
|
+
|
|
28
|
+
2. **Write descriptive commit messages**: Write clear and descriptive commit
|
|
29
|
+
messages that explain the purpose of your changes.
|
|
30
|
+
|
|
31
|
+
3. **Test your changes**: Before submitting your pull request, make sure to test
|
|
32
|
+
your changes thoroughly to ensure they work as expected.
|
|
33
|
+
|
|
34
|
+
### Submitting the Pull Request
|
|
35
|
+
|
|
36
|
+
1. **Create a descriptive title**: Use a clear and descriptive title for your
|
|
37
|
+
pull request that summarizes the purpose of your changes.
|
|
38
|
+
|
|
39
|
+
2. **Provide a detailed description**: Include a detailed description of the
|
|
40
|
+
changes you've made and any relevant context that reviewers should know.
|
|
41
|
+
|
|
42
|
+
3. **Link related issues**: If your pull request addresses a specific issue,
|
|
43
|
+
make sure to reference it in the description using GitHub's issue linking
|
|
44
|
+
syntax (`#issue_number`).
|
|
45
|
+
|
|
46
|
+
4. **Review and address feedback**: Be responsive to any feedback or comments
|
|
47
|
+
you receive on your pull request and make any necessary changes.
|
|
48
|
+
|
|
49
|
+
## Issues
|
|
50
|
+
|
|
51
|
+
When submitting an issue, please provide as much information as possible to help
|
|
52
|
+
us understand and address the problem. Follow these guidelines when creating an
|
|
53
|
+
issue:
|
|
54
|
+
|
|
55
|
+
1. **Use a descriptive title**: Use a clear and descriptive title that
|
|
56
|
+
summarizes the issue you're experiencing.
|
|
57
|
+
|
|
58
|
+
2. **Provide detailed steps to reproduce**: Include detailed steps to reproduce
|
|
59
|
+
the issue, including any relevant code or configuration.
|
|
60
|
+
|
|
61
|
+
3. **Include relevant information**: Provide any relevant information such as
|
|
62
|
+
error messages, screenshots, or logs that can help diagnose the problem.
|
|
63
|
+
|
|
64
|
+
4. **Specify your environment**: If the issue is related to a specific
|
|
65
|
+
environment (e.g., operating system, browser), please specify it in your
|
|
66
|
+
issue description.
|
|
67
|
+
|
|
68
|
+
5. **Check for existing issues**: Before submitting a new issue, please check if
|
|
69
|
+
a similar issue has already been reported to avoid duplicates.
|
|
70
|
+
|
|
71
|
+
Thank you for your contributions!
|
package/README.md
CHANGED
|
@@ -22,7 +22,7 @@ and other Bitcoin-related technologies.
|
|
|
22
22
|
|
|
23
23
|
### Prerequisites
|
|
24
24
|
|
|
25
|
-
- Node.js version
|
|
25
|
+
- Node.js version 16.x or higher
|
|
26
26
|
- npm (Node Package Manager)
|
|
27
27
|
|
|
28
28
|
### Installation
|
|
@@ -31,6 +31,11 @@ and other Bitcoin-related technologies.
|
|
|
31
31
|
npm i opnet
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
+
### Documentation
|
|
35
|
+
|
|
36
|
+
Documentation available at [https://dev.opnet.org](https://dev.opnet.org) or in
|
|
37
|
+
the `docs/` directory of the repository.
|
|
38
|
+
|
|
34
39
|
#### Development
|
|
35
40
|
|
|
36
41
|
1. Clone the repository:
|
|
@@ -46,12 +51,6 @@ npm i opnet
|
|
|
46
51
|
npm i
|
|
47
52
|
```
|
|
48
53
|
|
|
49
|
-
## Usage
|
|
50
|
-
|
|
51
|
-
Refer to the `docs/` directory for detailed guides on how to use OPNet. Start
|
|
52
|
-
with `getting_started.md` and explore `api_reference.md` for comprehensive
|
|
53
|
-
information about the functions available.
|
|
54
|
-
|
|
55
54
|
## Contribution
|
|
56
55
|
|
|
57
56
|
Contributions are welcome! Please read through the `CONTRIBUTING.md` file for
|
package/browser/_version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "1.0.
|
|
1
|
+
export declare const version = "1.0.15";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { BitcoinInterfaceAbi } from './interfaces/BitcoinInterfaceAbi.js';
|
|
2
|
+
export declare class BitcoinInterface {
|
|
3
|
+
readonly abi: BitcoinInterfaceAbi;
|
|
4
|
+
constructor(abi: BitcoinInterfaceAbi);
|
|
5
|
+
static from(abi: BitcoinInterface | BitcoinInterfaceAbi): BitcoinInterface;
|
|
6
|
+
hasFunction(name: string): boolean;
|
|
7
|
+
private verifyAbi;
|
|
8
|
+
private verifyAbiValues;
|
|
9
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BitcoinAbiTypes } from '../BitcoinAbiTypes.js';
|
|
2
|
+
import { BitcoinAbiValue } from './BitcoinAbiValue.js';
|
|
3
|
+
export interface BitcoinInterfaceAbiBase {
|
|
4
|
+
readonly constant?: boolean;
|
|
5
|
+
readonly name: string;
|
|
6
|
+
readonly inputs?: BitcoinAbiValue[];
|
|
7
|
+
readonly outputs?: BitcoinAbiValue[];
|
|
8
|
+
readonly type: BitcoinAbiTypes;
|
|
9
|
+
readonly payable?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export type BitcoinInterfaceAbi = BitcoinInterfaceAbiBase[];
|
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
import { ScriptPubKey } from '@btc-vision/bsi-bitcoin-rpc';
|
|
2
|
-
|
|
3
|
-
readonly transactionId: string;
|
|
4
|
-
readonly outputIndex: number;
|
|
5
|
-
readonly value: bigint | string;
|
|
6
|
-
readonly scriptPubKey: ScriptPubKey;
|
|
7
|
-
}
|
|
2
|
+
import { IUTXO } from './interfaces/IUTXO.js';
|
|
8
3
|
export declare class UTXO implements IUTXO {
|
|
9
4
|
readonly transactionId: string;
|
|
10
5
|
readonly outputIndex: number;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { BitcoinAddress } from '../bitcoin/BitcoinAddress.js';
|
|
2
2
|
export type BitcoinAddressLike = string | BitcoinAddress;
|
|
3
3
|
export type PointerLike = bigint | string;
|
|
4
|
+
export type DecodedCallResult = bigint | string | boolean | number | Uint8Array | Array<bigint> | Array<string> | Array<boolean> | Array<number> | Array<Uint8Array>;
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { NetEvent } from '@btc-vision/bsi-binary';
|
|
2
|
-
import {
|
|
1
|
+
import { BinaryReader, NetEvent } from '@btc-vision/bsi-binary';
|
|
2
|
+
import { DecodedCallResult } from '../common/CommonTypes.js';
|
|
3
3
|
import { IAccessList } from './interfaces/IAccessList.js';
|
|
4
4
|
import { ICallResultData } from './interfaces/ICallResult.js';
|
|
5
5
|
export declare class CallResult implements ICallResultData {
|
|
6
|
-
readonly result:
|
|
6
|
+
readonly result: BinaryReader;
|
|
7
7
|
readonly events: NetEvent[];
|
|
8
8
|
readonly accessList: IAccessList;
|
|
9
|
+
readonly decoded: Array<DecodedCallResult>;
|
|
9
10
|
constructor(iCallResult: ICallResultData);
|
|
11
|
+
setDecoded(decoded: Array<DecodedCallResult>): void;
|
|
12
|
+
private base64ToUint8Array;
|
|
10
13
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { BaseContractProperty } from '../abi/BaseContractProperty.js';
|
|
2
|
+
import { BitcoinInterface } from '../abi/BitcoinInterface.js';
|
|
3
|
+
import { BaseContractProperties } from '../abi/interfaces/BaseContractProperties.js';
|
|
4
|
+
import { BitcoinInterfaceAbi } from '../abi/interfaces/BitcoinInterfaceAbi.js';
|
|
5
|
+
import { BitcoinAddressLike } from '../common/CommonTypes.js';
|
|
6
|
+
import { AbstractRpcProvider } from '../providers/AbstractRpcProvider.js';
|
|
7
|
+
import { IContract } from './interfaces/IContract.js';
|
|
8
|
+
declare const internal: unique symbol;
|
|
9
|
+
export declare abstract class IBaseContract<T extends BaseContractProperties> implements IContract {
|
|
10
|
+
readonly address: BitcoinAddressLike;
|
|
11
|
+
readonly interface: BitcoinInterface;
|
|
12
|
+
readonly provider: AbstractRpcProvider;
|
|
13
|
+
readonly [internal]: keyof T | undefined;
|
|
14
|
+
private events;
|
|
15
|
+
protected constructor(address: BitcoinAddressLike, abi: BitcoinInterface | BitcoinInterfaceAbi, provider: AbstractRpcProvider);
|
|
16
|
+
protected getFunction(name: symbol): BaseContractProperty | undefined | string | number | symbol;
|
|
17
|
+
private defineInternalFunctions;
|
|
18
|
+
private encodeFunctionData;
|
|
19
|
+
private encodeInput;
|
|
20
|
+
private decodeOutput;
|
|
21
|
+
private callFunction;
|
|
22
|
+
}
|
|
23
|
+
export declare class BaseContract<T extends BaseContractProperties> extends IBaseContract<T> {
|
|
24
|
+
constructor(address: BitcoinAddressLike, abi: BitcoinInterface | BitcoinInterfaceAbi, provider: AbstractRpcProvider);
|
|
25
|
+
private proxify;
|
|
26
|
+
}
|
|
27
|
+
export declare function getContract<T extends BaseContractProperties>(address: BitcoinAddressLike, abi: BitcoinInterface | BitcoinInterfaceAbi, provider: AbstractRpcProvider): BaseContract<T> & Omit<T, keyof BaseContract<T>>;
|
|
28
|
+
export {};
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { NetEvent } from '@btc-vision/bsi-binary';
|
|
2
|
-
import { BufferReader } from 'bitcoinjs-lib/src/bufferutils.js';
|
|
1
|
+
import { BinaryReader, NetEvent } from '@btc-vision/bsi-binary';
|
|
3
2
|
import { IAccessList } from './IAccessList.js';
|
|
4
3
|
export interface ICallRequestError {
|
|
5
4
|
readonly error: string;
|
|
6
5
|
}
|
|
7
6
|
export interface ICallResultData {
|
|
8
|
-
readonly result: string |
|
|
7
|
+
readonly result: string | BinaryReader;
|
|
9
8
|
readonly events: NetEvent[];
|
|
10
9
|
readonly accessList: IAccessList;
|
|
11
10
|
}
|
|
@@ -31,3 +31,10 @@ export function createHash(algo: any): import("@noble/hashes/utils").Hash<{
|
|
|
31
31
|
export function createHmac(_algo: any, key: any): import("@noble/hashes/hmac").HMAC<any>;
|
|
32
32
|
export function pbkdf2Sync(password: any, salt: any, iterations: any, keylen: any, _algo: any): Uint8Array;
|
|
33
33
|
export function randomBytes(length: any): Uint8Array;
|
|
34
|
+
declare namespace _default {
|
|
35
|
+
export { createHash };
|
|
36
|
+
export { createHmac };
|
|
37
|
+
export { pbkdf2Sync };
|
|
38
|
+
export { randomBytes };
|
|
39
|
+
}
|
|
40
|
+
export default _default;
|