@btc-vision/transaction 1.0.85 → 1.0.86
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/.gitattributes +2 -2
- package/browser/_version.d.ts +1 -1
- package/browser/index.js +1 -1
- package/browser/keypair/Wallet.d.ts +3 -0
- package/browser/transaction/builders/TapUnwarpTransaction.d.ts +40 -40
- package/browser/transaction/builders/UnwarpTransaction.d.ts +34 -34
- package/browser/utxo/UTXOManager.d.ts +7 -7
- package/build/Utils.d.ts +0 -0
- package/build/Utils.js +1 -0
- package/build/_version.d.ts +1 -1
- package/build/_version.js +1 -1
- package/build/consensus/metadata/RoswsellConsensus.d.ts +2 -0
- package/build/consensus/metadata/RoswsellConsensus.js +4 -0
- package/build/contracts/ContractMetadataManager.d.ts +0 -0
- package/build/contracts/ContractMetadataManager.js +1 -0
- package/build/generators/OPNetAddressGenerator.d.ts +0 -0
- package/build/generators/OPNetAddressGenerator.js +1 -0
- package/build/generators/builders/UnwrapGenerator.d.ts +8 -0
- package/build/generators/builders/UnwrapGenerator.js +79 -0
- package/build/keypair/Wallet.d.ts +3 -0
- package/build/keypair/Wallet.js +8 -0
- package/build/keypair/interfaces/GeneratedWallet.d.ts +5 -0
- package/build/keypair/interfaces/GeneratedWallet.js +1 -0
- package/build/metadata/CommonContracts.d.ts +6 -0
- package/build/metadata/CommonContracts.js +5 -0
- package/build/metadata/ContractMetadataManager.d.ts +1 -0
- package/build/metadata/ContractMetadataManager.js +9 -0
- package/build/metadata/contracts/ContractBase.d.ts +9 -0
- package/build/metadata/contracts/ContractBase.js +13 -0
- package/build/metadata/contracts/ContractBaseMetadata.d.ts +9 -0
- package/build/metadata/contracts/ContractBaseMetadata.js +13 -0
- package/build/metadata/contracts/ContractMetadataManager.d.ts +0 -0
- package/build/metadata/contracts/ContractMetadataManager.js +1 -0
- package/build/network/NetworkConverter.d.ts +0 -0
- package/build/network/NetworkConverter.js +14 -0
- package/build/scripts/Regtest.d.ts +2 -0
- package/build/scripts/Regtest.js +15 -0
- package/build/scripts/test.d.ts +1 -0
- package/build/scripts/test.js +74 -0
- package/build/signer/Regtest.d.ts +2 -0
- package/build/signer/Regtest.js +15 -0
- package/build/tests/Regtest.d.ts +3 -0
- package/build/tests/Regtest.js +29 -0
- package/build/tests/adaptPSBT.d.ts +1 -0
- package/build/tests/adaptPSBT.js +44 -0
- package/build/tests/btc/send.d.ts +1 -0
- package/build/tests/btc/send.js +35 -0
- package/build/tests/btc/transfer.d.ts +1 -0
- package/build/tests/btc/transfer.js +35 -0
- package/build/tests/createPairReg.d.ts +1 -0
- package/build/tests/createPairReg.js +73 -0
- package/build/tests/deploy/deployMoto.d.ts +4 -0
- package/build/tests/deploy/deployMoto.js +89 -0
- package/build/tests/deploy/deployPool.d.ts +1 -0
- package/build/tests/deploy/deployPool.js +5 -0
- package/build/tests/deploy/deployStep1.d.ts +1 -0
- package/build/tests/deploy/deployStep1.js +5 -0
- package/build/tests/deploy/deployStep2.d.ts +1 -0
- package/build/tests/deploy/deployStep2.js +5 -0
- package/build/tests/deploy/deployStep3.d.ts +1 -0
- package/build/tests/deploy/deployStep3.js +5 -0
- package/build/tests/deploy.d.ts +1 -0
- package/build/tests/deploy.js +41 -0
- package/build/tests/deployMotoRegStep1.d.ts +1 -0
- package/build/tests/deployMotoRegStep1.js +85 -0
- package/build/tests/deployReg.d.ts +1 -0
- package/build/tests/deployReg.js +85 -0
- package/build/tests/factory/createPairReg.d.ts +1 -0
- package/build/tests/factory/createPairReg.js +13 -0
- package/build/tests/gen.d.ts +1 -0
- package/build/tests/gen.js +19 -0
- package/build/tests/interaction.d.ts +5 -0
- package/build/tests/interaction.js +62 -0
- package/build/tests/massWrapReg.d.ts +1 -0
- package/build/tests/massWrapReg.js +105 -0
- package/build/tests/mineReg.d.ts +1 -0
- package/build/tests/mineReg.js +19 -0
- package/build/tests/moto/airdropToken.d.ts +1 -0
- package/build/tests/moto/airdropToken.js +21 -0
- package/build/tests/moto/airdropTokens.d.ts +1 -0
- package/build/tests/moto/airdropTokens.js +60 -0
- package/build/tests/moto/allowance.d.ts +1 -0
- package/build/tests/moto/allowance.js +6 -0
- package/build/tests/moto/approve.d.ts +1 -0
- package/build/tests/moto/approve.js +10 -0
- package/build/tests/moto/approveWBTC.d.ts +1 -0
- package/build/tests/moto/approveWBTC.js +12 -0
- package/build/tests/moto/balanceOf.d.ts +1 -0
- package/build/tests/moto/balanceOf.js +12 -0
- package/build/tests/moto/transfer.d.ts +1 -0
- package/build/tests/moto/transfer.js +16 -0
- package/build/tests/motoswap/airdropToken.d.ts +11 -0
- package/build/tests/motoswap/airdropToken.js +36 -0
- package/build/tests/motoswap/deployMoto.d.ts +4 -0
- package/build/tests/motoswap/deployMoto.js +89 -0
- package/build/tests/motoswap/deployMotoRegStep1.d.ts +1 -0
- package/build/tests/motoswap/deployMotoRegStep1.js +91 -0
- package/build/tests/motoswap/deployMotoRegStep2.d.ts +1 -0
- package/build/tests/motoswap/deployMotoRegStep2.js +91 -0
- package/build/tests/motoswap/deployPool.d.ts +1 -0
- package/build/tests/motoswap/deployPool.js +5 -0
- package/build/tests/motoswap/deployStep1.d.ts +1 -0
- package/build/tests/motoswap/deployStep1.js +5 -0
- package/build/tests/motoswap/deployStep2.d.ts +1 -0
- package/build/tests/motoswap/deployStep2.js +5 -0
- package/build/tests/motoswap/deployStep3.d.ts +1 -0
- package/build/tests/motoswap/deployStep3.js +5 -0
- package/build/tests/motoswap/interaction.d.ts +3 -0
- package/build/tests/motoswap/interaction.js +63 -0
- package/build/tests/motoswap/routerAddLiquidity.d.ts +11 -0
- package/build/tests/motoswap/routerAddLiquidity.js +35 -0
- package/build/tests/motoswap-router/addLiquidity.d.ts +11 -0
- package/build/tests/motoswap-router/addLiquidity.js +36 -0
- package/build/tests/motoswap-router/deployMoto.d.ts +4 -0
- package/build/tests/motoswap-router/deployMoto.js +89 -0
- package/build/tests/motoswap-router/deployPool.d.ts +1 -0
- package/build/tests/motoswap-router/deployPool.js +5 -0
- package/build/tests/motoswap-router/deployStep1.d.ts +1 -0
- package/build/tests/motoswap-router/deployStep1.js +5 -0
- package/build/tests/motoswap-router/deployStep2.d.ts +1 -0
- package/build/tests/motoswap-router/deployStep2.js +5 -0
- package/build/tests/motoswap-router/deployStep3.d.ts +1 -0
- package/build/tests/motoswap-router/deployStep3.js +5 -0
- package/build/tests/motoswap-router/getAmountsOut.d.ts +5 -0
- package/build/tests/motoswap-router/getAmountsOut.js +34 -0
- package/build/tests/motoswap-router/routerAddLiquidity.d.ts +11 -0
- package/build/tests/motoswap-router/routerAddLiquidity.js +35 -0
- package/build/tests/motoswap-router/swap.d.ts +8 -0
- package/build/tests/motoswap-router/swap.js +24 -0
- package/build/tests/multisign.d.ts +1 -0
- package/build/tests/multisign.js +47 -0
- package/build/tests/multisign2.d.ts +1 -0
- package/build/tests/multisign2.js +27 -0
- package/build/tests/pool/DecodePoolAddress.d.ts +6 -0
- package/build/tests/pool/DecodePoolAddress.js +12 -0
- package/build/tests/pool/decodeReserves.d.ts +5 -0
- package/build/tests/pool/decodeReserves.js +13 -0
- package/build/tests/pool/reserves.d.ts +1 -0
- package/build/tests/pool/reserves.js +18 -0
- package/build/tests/shared/Utils.d.ts +2 -0
- package/build/tests/shared/Utils.js +14 -0
- package/build/tests/shared/interaction.d.ts +7 -0
- package/build/tests/shared/interaction.js +85 -0
- package/build/tests/shared/tokens.d.ts +6 -0
- package/build/tests/shared/tokens.js +5 -0
- package/build/tests/stakeReg.d.ts +1 -0
- package/build/tests/stakeReg.js +73 -0
- package/build/tests/stakedReg.d.ts +1 -0
- package/build/tests/stakedReg.js +28 -0
- package/build/tests/test.d.ts +1 -0
- package/build/tests/test.js +51 -0
- package/build/tests/test2.d.ts +1 -0
- package/build/tests/test2.js +73 -0
- package/build/tests/testReg.d.ts +1 -0
- package/build/tests/testReg.js +91 -0
- package/build/tests/tokens.d.ts +6 -0
- package/build/tests/tokens.js +5 -0
- package/build/tests/totalRewardReg.d.ts +1 -0
- package/build/tests/totalRewardReg.js +28 -0
- package/build/tests/transfer.d.ts +1 -0
- package/build/tests/transfer.js +74 -0
- package/build/tests/transferReg.d.ts +1 -0
- package/build/tests/transferReg.js +74 -0
- package/build/tests/unStakeReg.d.ts +1 -0
- package/build/tests/unStakeReg.js +72 -0
- package/build/tests/unwrapReg.d.ts +1 -0
- package/build/tests/unwrapReg.js +61 -0
- package/build/tests/unwrapReg2.d.ts +1 -0
- package/build/tests/unwrapReg2.js +56 -0
- package/build/tests/unwrapRegSegwit.d.ts +1 -0
- package/build/tests/unwrapRegSegwit.js +83 -0
- package/build/tests/wbtc/approve.d.ts +1 -0
- package/build/tests/wbtc/approve.js +6 -0
- package/build/tests/wbtc/approveWBTC.d.ts +1 -0
- package/build/tests/wbtc/approveWBTC.js +12 -0
- package/build/tests/wbtc/massWrapReg.d.ts +1 -0
- package/build/tests/wbtc/massWrapReg.js +105 -0
- package/build/tests/wbtc/transfer.d.ts +1 -0
- package/build/tests/wbtc/transfer.js +16 -0
- package/build/tests/wbtc/transferReg.d.ts +1 -0
- package/build/tests/wbtc/transferReg.js +16 -0
- package/build/tests/wbtc/unStakeReg.d.ts +1 -0
- package/build/tests/wbtc/unStakeReg.js +72 -0
- package/build/tests/wbtc/unwrapReg.d.ts +1 -0
- package/build/tests/wbtc/unwrapReg.js +60 -0
- package/build/tests/wbtc/unwrapRegSegwit.d.ts +1 -0
- package/build/tests/wbtc/unwrapRegSegwit.js +83 -0
- package/build/tests/wbtc/withdrawalRequestReg.d.ts +1 -0
- package/build/tests/wbtc/withdrawalRequestReg.js +71 -0
- package/build/tests/wbtc/wrapReg.d.ts +1 -0
- package/build/tests/wbtc/wrapReg.js +65 -0
- package/build/tests/wbtc/wrapTest.d.ts +1 -0
- package/build/tests/wbtc/wrapTest.js +66 -0
- package/build/tests/withdrawalRequestReg.d.ts +1 -0
- package/build/tests/withdrawalRequestReg.js +71 -0
- package/build/tests/wrap.d.ts +1 -0
- package/build/tests/wrap.js +65 -0
- package/build/tests/wrapReg.d.ts +1 -0
- package/build/tests/wrapReg.js +68 -0
- package/build/tests/wrapTest.d.ts +1 -0
- package/build/tests/wrapTest.js +66 -0
- package/build/tests/wrapTestg.d.ts +1 -0
- package/build/tests/wrapTestg.js +66 -0
- package/build/tests/writers/allowance.d.ts +3 -0
- package/build/tests/writers/allowance.js +10 -0
- package/build/tests/writers/approve.d.ts +4 -0
- package/build/tests/writers/approve.js +11 -0
- package/build/transaction/TransactionBuilder.d.ts +60 -0
- package/build/transaction/TransactionBuilder.js +244 -0
- package/build/transaction/browser/BrowserSigner.d.ts +11 -0
- package/build/transaction/browser/BrowserSigner.js +10 -0
- package/build/transaction/browser/extensions/Unisat.d.ts +54 -0
- package/build/transaction/browser/extensions/Unisat.js +11 -0
- package/build/transaction/builders/GenericTransaction.d.ts +11 -0
- package/build/transaction/builders/GenericTransaction.js +23 -0
- package/build/transaction/builders/TapUnwarpTransaction.d.ts +37 -0
- package/build/transaction/builders/TapUnwarpTransaction.js +201 -0
- package/build/transaction/builders/UnwarpSegwitTransaction.d.ts +34 -0
- package/build/transaction/builders/UnwarpSegwitTransaction.js +184 -0
- package/build/transaction/builders/UnwarpTransaction.d.ts +35 -0
- package/build/transaction/builders/UnwarpTransaction.js +199 -0
- package/build/transaction/interfaces/ITransactions.d.ts +32 -0
- package/build/transaction/interfaces/ITransactions.js +1 -0
- package/build/utxo/IUTXO.d.ts +0 -0
- package/build/utxo/IUTXO.js +1 -0
- package/build/utxo/OPNetUtils.d.ts +7 -0
- package/build/utxo/OPNetUtils.js +47 -0
- package/build/utxo/UTXOManager.d.ts +7 -0
- package/build/utxo/UTXOManager.js +47 -0
- package/build/wbtc/BroadcastResponse.d.ts +0 -0
- package/build/wbtc/BroadcastResponse.js +1 -0
- package/gulpfile.js +152 -152
- package/package.json +109 -109
- package/src/_version.ts +1 -1
- package/src/consensus/Consensus.ts +36 -36
- package/src/consensus/ConsensusConfig.ts +39 -39
- package/src/crypto/crypto-browser.js +75 -75
- package/src/generators/AddressGenerator.ts +24 -24
- package/src/generators/Features.ts +5 -5
- package/src/generators/Generator.ts +75 -75
- package/src/generators/builders/CalldataGenerator.ts +148 -148
- package/src/generators/builders/DeploymentGenerator.ts +66 -66
- package/src/index.ts +4 -4
- package/src/keypair/AddressVerificator.ts +40 -40
- package/src/keypair/EcKeyPair.ts +282 -282
- package/src/keypair/Wallet.ts +120 -97
- package/src/keypair/interfaces/IWallet.ts +19 -19
- package/src/metadata/ContractBaseMetadata.ts +23 -23
- package/src/metadata/contracts/wBTC.ts +60 -60
- package/src/metadata/tokens.ts +135 -135
- package/src/network/NetworkInformation.ts +7 -7
- package/src/transaction/TransactionFactory.ts +496 -496
- package/src/transaction/browser/BrowserSignerBase.ts +37 -37
- package/src/transaction/browser/Web3Provider.ts +46 -46
- package/src/transaction/browser/extensions/UnisatSigner.ts +218 -218
- package/src/transaction/browser/types/Unisat.ts +97 -97
- package/src/transaction/builders/FundingTransaction.ts +40 -40
- package/src/transaction/builders/InteractionTransaction.ts +38 -38
- package/src/transaction/builders/SharedInteractionTransaction.ts +368 -368
- package/src/transaction/builders/TransactionBuilder.ts +665 -665
- package/src/transaction/builders/UnwrapSegwitTransaction.ts +365 -365
- package/src/transaction/builders/UnwrapTransaction.ts +507 -507
- package/src/transaction/builders/WrapTransaction.ts +346 -346
- package/src/transaction/interfaces/ITransactionParameters.ts +59 -59
- package/src/transaction/interfaces/Tap.ts +26 -26
- package/src/transaction/psbt/PSBTTypes.ts +3 -3
- package/src/transaction/shared/TweakedTransaction.ts +539 -539
- package/src/utxo/OPNetLimitedProvider.ts +244 -244
- package/src/utxo/interfaces/BroadcastResponse.ts +10 -10
- package/src/utxo/interfaces/IUTXO.ts +29 -29
- package/src/verification/TapscriptVerificator.ts +89 -89
- package/src/wbtc/Generate.ts +40 -40
- package/src/wbtc/UnwrapGeneration.ts +13 -13
- package/src/wbtc/WrappedGenerationParameters.ts +33 -33
- package/webpack.config.js +78 -78
- /package/build/generators/builders/{MultiSignGenerator.d.ts → MultisignGenerator.d.ts} +0 -0
- /package/build/generators/builders/{MultiSignGenerator.js → MultisignGenerator.js} +0 -0
- /package/build/generators/{Features.d.ts → features.d.ts} +0 -0
- /package/build/generators/{Features.js → features.js} +0 -0
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
import { Address } from '@btc-vision/bsi-binary';
|
|
2
|
-
import { Web3Provider } from '../Web3Provider.js';
|
|
3
|
-
|
|
4
|
-
export enum UnisatNetwork {
|
|
5
|
-
testnet = 'testnet',
|
|
6
|
-
mainnet = 'livenet',
|
|
7
|
-
regtest = 'regtest',
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export enum UnisatChainType {
|
|
11
|
-
BITCOIN_MAINNET = 'BITCOIN_MAINNET',
|
|
12
|
-
BITCOIN_TESTNET = 'BITCOIN_TESTNET',
|
|
13
|
-
FRACTAL_BITCOIN_MAINNET = 'FRACTAL_BITCOIN_MAINNET',
|
|
14
|
-
BITCOIN_REGTEST = 'BITCOIN_REGTEST',
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export interface UnisatChainInfo {
|
|
18
|
-
readonly enum: UnisatChainType;
|
|
19
|
-
readonly name: string;
|
|
20
|
-
readonly network: UnisatNetwork;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export interface Balance {
|
|
24
|
-
readonly confirmed: number;
|
|
25
|
-
readonly unconfirmed: number;
|
|
26
|
-
readonly total: number;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export enum MessageType {
|
|
30
|
-
ecdsa = 'ecdsa',
|
|
31
|
-
bip322 = 'bip322-simple',
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
interface ToSignInputBase {
|
|
35
|
-
readonly index: number;
|
|
36
|
-
readonly sighashTypes?: number[];
|
|
37
|
-
readonly disableTweakSigner?: boolean;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export interface ToSignInputPublicKey extends ToSignInputBase {
|
|
41
|
-
readonly publicKey: string;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export interface ToSignInputAddress extends ToSignInputBase {
|
|
45
|
-
readonly address: Address;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
export type ToSignInput = ToSignInputPublicKey | ToSignInputAddress;
|
|
49
|
-
|
|
50
|
-
export interface PsbtSignatureOptions {
|
|
51
|
-
readonly autoFinalized?: boolean;
|
|
52
|
-
readonly toSignInputs?: ToSignInput[];
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export interface Unisat {
|
|
56
|
-
web3?: Web3Provider;
|
|
57
|
-
|
|
58
|
-
sendBitcoin(
|
|
59
|
-
toAddress: Address,
|
|
60
|
-
satoshis: number,
|
|
61
|
-
options: { feeRate: number; memo?: string; memos?: string[] },
|
|
62
|
-
): Promise<string>;
|
|
63
|
-
|
|
64
|
-
requestAccounts(): Promise<string[]>;
|
|
65
|
-
|
|
66
|
-
getNetwork(): Promise<UnisatNetwork>;
|
|
67
|
-
|
|
68
|
-
getChain(): Promise<UnisatChainType>;
|
|
69
|
-
|
|
70
|
-
getAccounts(): Promise<string[]>;
|
|
71
|
-
|
|
72
|
-
switchNetwork(network: UnisatNetwork): Promise<void>;
|
|
73
|
-
|
|
74
|
-
getPublicKey(): Promise<string>;
|
|
75
|
-
|
|
76
|
-
getBalance(): Promise<Balance>;
|
|
77
|
-
|
|
78
|
-
signMessage(message: string, type?: MessageType): Promise<string>;
|
|
79
|
-
|
|
80
|
-
pushTx(options: { rawtx: string }): Promise<string>;
|
|
81
|
-
|
|
82
|
-
signPsbt(psbtHex: string, psbtOptions: PsbtSignatureOptions): Promise<string>;
|
|
83
|
-
|
|
84
|
-
signPsbts(psbtHex: string[], psbtOptions: PsbtSignatureOptions): Promise<string[]>;
|
|
85
|
-
|
|
86
|
-
pushPsbt(psbtHex: string): Promise<string>;
|
|
87
|
-
|
|
88
|
-
on(event: 'accountsChanged', listener: (accounts: string[]) => void): void;
|
|
89
|
-
|
|
90
|
-
on(event: 'networkChanged', listener: (network: UnisatNetwork) => void): void;
|
|
91
|
-
|
|
92
|
-
on(event: 'chainChanged', listener: (network: UnisatNetwork) => void): void;
|
|
93
|
-
|
|
94
|
-
removeListener(event: 'accountsChanged', listener: (accounts: string[]) => void): void;
|
|
95
|
-
|
|
96
|
-
removeListener(event: 'networkChanged', listener: (network: UnisatNetwork) => void): void;
|
|
97
|
-
}
|
|
1
|
+
import { Address } from '@btc-vision/bsi-binary';
|
|
2
|
+
import { Web3Provider } from '../Web3Provider.js';
|
|
3
|
+
|
|
4
|
+
export enum UnisatNetwork {
|
|
5
|
+
testnet = 'testnet',
|
|
6
|
+
mainnet = 'livenet',
|
|
7
|
+
regtest = 'regtest',
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export enum UnisatChainType {
|
|
11
|
+
BITCOIN_MAINNET = 'BITCOIN_MAINNET',
|
|
12
|
+
BITCOIN_TESTNET = 'BITCOIN_TESTNET',
|
|
13
|
+
FRACTAL_BITCOIN_MAINNET = 'FRACTAL_BITCOIN_MAINNET',
|
|
14
|
+
BITCOIN_REGTEST = 'BITCOIN_REGTEST',
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export interface UnisatChainInfo {
|
|
18
|
+
readonly enum: UnisatChainType;
|
|
19
|
+
readonly name: string;
|
|
20
|
+
readonly network: UnisatNetwork;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface Balance {
|
|
24
|
+
readonly confirmed: number;
|
|
25
|
+
readonly unconfirmed: number;
|
|
26
|
+
readonly total: number;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export enum MessageType {
|
|
30
|
+
ecdsa = 'ecdsa',
|
|
31
|
+
bip322 = 'bip322-simple',
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
interface ToSignInputBase {
|
|
35
|
+
readonly index: number;
|
|
36
|
+
readonly sighashTypes?: number[];
|
|
37
|
+
readonly disableTweakSigner?: boolean;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface ToSignInputPublicKey extends ToSignInputBase {
|
|
41
|
+
readonly publicKey: string;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export interface ToSignInputAddress extends ToSignInputBase {
|
|
45
|
+
readonly address: Address;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export type ToSignInput = ToSignInputPublicKey | ToSignInputAddress;
|
|
49
|
+
|
|
50
|
+
export interface PsbtSignatureOptions {
|
|
51
|
+
readonly autoFinalized?: boolean;
|
|
52
|
+
readonly toSignInputs?: ToSignInput[];
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export interface Unisat {
|
|
56
|
+
web3?: Web3Provider;
|
|
57
|
+
|
|
58
|
+
sendBitcoin(
|
|
59
|
+
toAddress: Address,
|
|
60
|
+
satoshis: number,
|
|
61
|
+
options: { feeRate: number; memo?: string; memos?: string[] },
|
|
62
|
+
): Promise<string>;
|
|
63
|
+
|
|
64
|
+
requestAccounts(): Promise<string[]>;
|
|
65
|
+
|
|
66
|
+
getNetwork(): Promise<UnisatNetwork>;
|
|
67
|
+
|
|
68
|
+
getChain(): Promise<UnisatChainType>;
|
|
69
|
+
|
|
70
|
+
getAccounts(): Promise<string[]>;
|
|
71
|
+
|
|
72
|
+
switchNetwork(network: UnisatNetwork): Promise<void>;
|
|
73
|
+
|
|
74
|
+
getPublicKey(): Promise<string>;
|
|
75
|
+
|
|
76
|
+
getBalance(): Promise<Balance>;
|
|
77
|
+
|
|
78
|
+
signMessage(message: string, type?: MessageType): Promise<string>;
|
|
79
|
+
|
|
80
|
+
pushTx(options: { rawtx: string }): Promise<string>;
|
|
81
|
+
|
|
82
|
+
signPsbt(psbtHex: string, psbtOptions: PsbtSignatureOptions): Promise<string>;
|
|
83
|
+
|
|
84
|
+
signPsbts(psbtHex: string[], psbtOptions: PsbtSignatureOptions): Promise<string[]>;
|
|
85
|
+
|
|
86
|
+
pushPsbt(psbtHex: string): Promise<string>;
|
|
87
|
+
|
|
88
|
+
on(event: 'accountsChanged', listener: (accounts: string[]) => void): void;
|
|
89
|
+
|
|
90
|
+
on(event: 'networkChanged', listener: (network: UnisatNetwork) => void): void;
|
|
91
|
+
|
|
92
|
+
on(event: 'chainChanged', listener: (network: UnisatNetwork) => void): void;
|
|
93
|
+
|
|
94
|
+
removeListener(event: 'accountsChanged', listener: (accounts: string[]) => void): void;
|
|
95
|
+
|
|
96
|
+
removeListener(event: 'networkChanged', listener: (network: UnisatNetwork) => void): void;
|
|
97
|
+
}
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
import { TransactionType } from '../enums/TransactionType.js';
|
|
2
|
-
import { IFundingTransactionParameters } from '../interfaces/ITransactionParameters.js';
|
|
3
|
-
import { Signer } from 'bitcoinjs-lib';
|
|
4
|
-
import { TransactionBuilder } from './TransactionBuilder.js';
|
|
5
|
-
|
|
6
|
-
export class FundingTransaction extends TransactionBuilder<TransactionType.FUNDING> {
|
|
7
|
-
public readonly type: TransactionType.FUNDING = TransactionType.FUNDING;
|
|
8
|
-
|
|
9
|
-
protected childTransactionRequiredFees: bigint;
|
|
10
|
-
|
|
11
|
-
constructor(parameters: IFundingTransactionParameters) {
|
|
12
|
-
super(parameters);
|
|
13
|
-
|
|
14
|
-
this.childTransactionRequiredFees = parameters.amount;
|
|
15
|
-
|
|
16
|
-
this.internalInit();
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
protected override async buildTransaction(): Promise<void> {
|
|
20
|
-
if (!this.to) {
|
|
21
|
-
throw new Error('Recipient address is required');
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
this.addInputsFromUTXO();
|
|
25
|
-
|
|
26
|
-
const amountSpent: bigint =
|
|
27
|
-
this.getTransactionOPNetFee() + this.childTransactionRequiredFees;
|
|
28
|
-
|
|
29
|
-
this.addOutput({
|
|
30
|
-
value: Number(amountSpent),
|
|
31
|
-
address: this.to,
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
await this.addRefundOutput(amountSpent);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
protected override getSignerKey(): Signer {
|
|
38
|
-
return this.signer;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
1
|
+
import { TransactionType } from '../enums/TransactionType.js';
|
|
2
|
+
import { IFundingTransactionParameters } from '../interfaces/ITransactionParameters.js';
|
|
3
|
+
import { Signer } from 'bitcoinjs-lib';
|
|
4
|
+
import { TransactionBuilder } from './TransactionBuilder.js';
|
|
5
|
+
|
|
6
|
+
export class FundingTransaction extends TransactionBuilder<TransactionType.FUNDING> {
|
|
7
|
+
public readonly type: TransactionType.FUNDING = TransactionType.FUNDING;
|
|
8
|
+
|
|
9
|
+
protected childTransactionRequiredFees: bigint;
|
|
10
|
+
|
|
11
|
+
constructor(parameters: IFundingTransactionParameters) {
|
|
12
|
+
super(parameters);
|
|
13
|
+
|
|
14
|
+
this.childTransactionRequiredFees = parameters.amount;
|
|
15
|
+
|
|
16
|
+
this.internalInit();
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
protected override async buildTransaction(): Promise<void> {
|
|
20
|
+
if (!this.to) {
|
|
21
|
+
throw new Error('Recipient address is required');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
this.addInputsFromUTXO();
|
|
25
|
+
|
|
26
|
+
const amountSpent: bigint =
|
|
27
|
+
this.getTransactionOPNetFee() + this.childTransactionRequiredFees;
|
|
28
|
+
|
|
29
|
+
this.addOutput({
|
|
30
|
+
value: Number(amountSpent),
|
|
31
|
+
address: this.to,
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
await this.addRefundOutput(amountSpent);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
protected override getSignerKey(): Signer {
|
|
38
|
+
return this.signer;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
import { Taptree } from 'bitcoinjs-lib/src/types.js';
|
|
2
|
-
import { TransactionType } from '../enums/TransactionType.js';
|
|
3
|
-
import { TapLeafScript } from '../interfaces/Tap.js';
|
|
4
|
-
import { IInteractionParameters } from '../interfaces/ITransactionParameters.js';
|
|
5
|
-
import { SharedInteractionTransaction } from './SharedInteractionTransaction.js';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Class for interaction transactions
|
|
9
|
-
* @class InteractionTransaction
|
|
10
|
-
*/
|
|
11
|
-
export class InteractionTransaction extends SharedInteractionTransaction<TransactionType.INTERACTION> {
|
|
12
|
-
public type: TransactionType.INTERACTION = TransactionType.INTERACTION;
|
|
13
|
-
|
|
14
|
-
protected readonly compiledTargetScript: Buffer;
|
|
15
|
-
protected readonly scriptTree: Taptree;
|
|
16
|
-
|
|
17
|
-
protected tapLeafScript: TapLeafScript | null = null;
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Contract secret for the interaction
|
|
21
|
-
* @protected
|
|
22
|
-
*/
|
|
23
|
-
protected readonly contractSecret: Buffer;
|
|
24
|
-
|
|
25
|
-
public constructor(parameters: IInteractionParameters) {
|
|
26
|
-
super(parameters);
|
|
27
|
-
|
|
28
|
-
this.contractSecret = this.generateSecret();
|
|
29
|
-
|
|
30
|
-
this.compiledTargetScript = this.calldataGenerator.compile(
|
|
31
|
-
this.calldata,
|
|
32
|
-
this.contractSecret,
|
|
33
|
-
);
|
|
34
|
-
|
|
35
|
-
this.scriptTree = this.getScriptTree();
|
|
36
|
-
this.internalInit();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
1
|
+
import { Taptree } from 'bitcoinjs-lib/src/types.js';
|
|
2
|
+
import { TransactionType } from '../enums/TransactionType.js';
|
|
3
|
+
import { TapLeafScript } from '../interfaces/Tap.js';
|
|
4
|
+
import { IInteractionParameters } from '../interfaces/ITransactionParameters.js';
|
|
5
|
+
import { SharedInteractionTransaction } from './SharedInteractionTransaction.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Class for interaction transactions
|
|
9
|
+
* @class InteractionTransaction
|
|
10
|
+
*/
|
|
11
|
+
export class InteractionTransaction extends SharedInteractionTransaction<TransactionType.INTERACTION> {
|
|
12
|
+
public type: TransactionType.INTERACTION = TransactionType.INTERACTION;
|
|
13
|
+
|
|
14
|
+
protected readonly compiledTargetScript: Buffer;
|
|
15
|
+
protected readonly scriptTree: Taptree;
|
|
16
|
+
|
|
17
|
+
protected tapLeafScript: TapLeafScript | null = null;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Contract secret for the interaction
|
|
21
|
+
* @protected
|
|
22
|
+
*/
|
|
23
|
+
protected readonly contractSecret: Buffer;
|
|
24
|
+
|
|
25
|
+
public constructor(parameters: IInteractionParameters) {
|
|
26
|
+
super(parameters);
|
|
27
|
+
|
|
28
|
+
this.contractSecret = this.generateSecret();
|
|
29
|
+
|
|
30
|
+
this.compiledTargetScript = this.calldataGenerator.compile(
|
|
31
|
+
this.calldata,
|
|
32
|
+
this.contractSecret,
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
this.scriptTree = this.getScriptTree();
|
|
36
|
+
this.internalInit();
|
|
37
|
+
}
|
|
38
|
+
}
|