@airgap/bitcoin 0.13.7-beta.22 → 0.13.7-beta.26
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/airgap-coinlib-bitcoin.min.js +16559 -4042
- package/index.d.ts +1 -14
- package/index.js +15 -19
- package/index.js.map +1 -1
- package/package.json +4 -2
- package/v0/index.d.ts +14 -0
- package/v0/index.js +34 -0
- package/v0/index.js.map +1 -0
- package/{protocol → v0/protocol}/BitcoinAddress.d.ts +0 -0
- package/{protocol → v0/protocol}/BitcoinAddress.js +0 -0
- package/v0/protocol/BitcoinAddress.js.map +1 -0
- package/{protocol → v0/protocol}/BitcoinCryptoClient.d.ts +0 -0
- package/{protocol → v0/protocol}/BitcoinCryptoClient.js +2 -0
- package/v0/protocol/BitcoinCryptoClient.js.map +1 -0
- package/{protocol → v0/protocol}/BitcoinProtocol.d.ts +0 -0
- package/{protocol → v0/protocol}/BitcoinProtocol.js +29 -21
- package/v0/protocol/BitcoinProtocol.js.map +1 -0
- package/{protocol → v0/protocol}/BitcoinProtocolOptions.d.ts +0 -0
- package/{protocol → v0/protocol}/BitcoinProtocolOptions.js +9 -3
- package/v0/protocol/BitcoinProtocolOptions.js.map +1 -0
- package/{protocol → v0/protocol}/BitcoinSegwitAddress.d.ts +0 -0
- package/{protocol → v0/protocol}/BitcoinSegwitAddress.js +2 -0
- package/v0/protocol/BitcoinSegwitAddress.js.map +1 -0
- package/{protocol → v0/protocol}/BitcoinSegwitProtocol.d.ts +0 -0
- package/{protocol → v0/protocol}/BitcoinSegwitProtocol.js +32 -21
- package/v0/protocol/BitcoinSegwitProtocol.js.map +1 -0
- package/{protocol → v0/protocol}/BitcoinTestnetProtocol.d.ts +0 -0
- package/{protocol → v0/protocol}/BitcoinTestnetProtocol.js +7 -1
- package/v0/protocol/BitcoinTestnetProtocol.js.map +1 -0
- package/{protocol → v0/protocol}/BitcoinTypes.d.ts +0 -0
- package/{protocol → v0/protocol}/BitcoinTypes.js +0 -0
- package/v0/protocol/BitcoinTypes.js.map +1 -0
- package/v0/serializer/schemas/v2/transaction-sign-request-bitcoin-segwit.json +0 -0
- package/v0/serializer/schemas/v2/transaction-sign-request-bitcoin.json +73 -0
- package/v0/serializer/schemas/v2/transaction-sign-response-bitcoin-segwit.json +0 -0
- package/v0/serializer/schemas/v2/transaction-sign-response-bitcoin.json +37 -0
- package/v0/serializer/schemas/v3/transaction-sign-request-bitcoin-segwit.json +32 -0
- package/v0/serializer/schemas/v3/transaction-sign-request-bitcoin.json +73 -0
- package/v0/serializer/schemas/v3/transaction-sign-response-bitcoin-segwit.json +19 -0
- package/v0/serializer/schemas/v3/transaction-sign-response-bitcoin.json +37 -0
- package/v0/serializer/validators/transaction-validator.d.ts +15 -0
- package/v0/serializer/validators/transaction-validator.js +81 -0
- package/v0/serializer/validators/transaction-validator.js.map +1 -0
- package/v0/serializer/validators/validators.d.ts +1 -0
- package/v0/serializer/validators/validators.js +151 -0
- package/v0/serializer/validators/validators.js.map +1 -0
- package/v0/types/signed-transaction-bitcoin-segwit.d.ts +5 -0
- package/{types → v0/types}/signed-transaction-bitcoin-segwit.js +0 -0
- package/v0/types/signed-transaction-bitcoin-segwit.js.map +1 -0
- package/v0/types/signed-transaction-bitcoin.d.ts +9 -0
- package/{types → v0/types}/signed-transaction-bitcoin.js +0 -0
- package/v0/types/signed-transaction-bitcoin.js.map +1 -0
- package/{types → v0/types}/transaction-bitcoin.d.ts +0 -0
- package/{types → v0/types}/transaction-bitcoin.js +0 -0
- package/v0/types/transaction-bitcoin.js.map +1 -0
- package/v0/types/unsigned-transaction-bitcoin-segwit.d.ts +7 -0
- package/{types → v0/types}/unsigned-transaction-bitcoin-segwit.js +0 -0
- package/v0/types/unsigned-transaction-bitcoin-segwit.js.map +1 -0
- package/{types → v0/types}/unsigned-transaction-bitcoin.d.ts +2 -2
- package/{types → v0/types}/unsigned-transaction-bitcoin.js +0 -0
- package/v0/types/unsigned-transaction-bitcoin.js.map +1 -0
- package/v1/block-explorer/BlockCypherBlockExplorer.d.ts +9 -0
- package/v1/block-explorer/BlockCypherBlockExplorer.js +74 -0
- package/v1/block-explorer/BlockCypherBlockExplorer.js.map +1 -0
- package/v1/data/BitcoinAddress.d.ts +7 -0
- package/v1/data/BitcoinAddress.js +21 -0
- package/v1/data/BitcoinAddress.js.map +1 -0
- package/v1/data/BitcoinSegwitAddress.d.ts +8 -0
- package/v1/data/BitcoinSegwitAddress.js +26 -0
- package/v1/data/BitcoinSegwitAddress.js.map +1 -0
- package/v1/index.d.ts +20 -0
- package/v1/index.js +26 -0
- package/v1/index.js.map +1 -0
- package/v1/module/BitcoinModule.d.ts +8 -0
- package/v1/module/BitcoinModule.js +86 -0
- package/v1/module/BitcoinModule.js.map +1 -0
- package/v1/module/BitcoinSegwitModule.d.ts +8 -0
- package/v1/module/BitcoinSegwitModule.js +87 -0
- package/v1/module/BitcoinSegwitModule.js.map +1 -0
- package/v1/protocol/BitcoinCryptoClient.d.ts +12 -0
- package/v1/protocol/BitcoinCryptoClient.js +96 -0
- package/v1/protocol/BitcoinCryptoClient.js.map +1 -0
- package/v1/protocol/BitcoinProtocol.d.ts +68 -0
- package/v1/protocol/BitcoinProtocol.js +1198 -0
- package/v1/protocol/BitcoinProtocol.js.map +1 -0
- package/v1/protocol/BitcoinSegwitProtocol.d.ts +51 -0
- package/v1/protocol/BitcoinSegwitProtocol.js +734 -0
- package/v1/protocol/BitcoinSegwitProtocol.js.map +1 -0
- package/v1/protocol/BitcoinTestnetProtocol.d.ts +11 -0
- package/v1/protocol/BitcoinTestnetProtocol.js +67 -0
- package/v1/protocol/BitcoinTestnetProtocol.js.map +1 -0
- package/v1/serializer/v3/schemas/converter/transaction-converter.d.ts +13 -0
- package/v1/serializer/v3/schemas/converter/transaction-converter.js +54 -0
- package/v1/serializer/v3/schemas/converter/transaction-converter.js.map +1 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-request-bitcoin-segwit.d.ts +4 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-request-bitcoin-segwit.js +3 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-request-bitcoin-segwit.js.map +1 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-request-bitcoin.d.ts +4 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-request-bitcoin.js +3 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-request-bitcoin.js.map +1 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-response-bitcoin-segwit.d.ts +3 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-response-bitcoin-segwit.js +3 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-response-bitcoin-segwit.js.map +1 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-response-bitcoin.d.ts +7 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-response-bitcoin.js +3 -0
- package/v1/serializer/v3/schemas/definitions/transaction-sign-response-bitcoin.js.map +1 -0
- package/v1/serializer/v3/schemas/generated/transaction-sign-request-bitcoin-segwit.json +36 -0
- package/v1/serializer/v3/schemas/generated/transaction-sign-request-bitcoin.json +86 -0
- package/v1/serializer/v3/schemas/generated/transaction-sign-response-bitcoin-segwit.json +19 -0
- package/v1/serializer/v3/schemas/generated/transaction-sign-response-bitcoin.json +37 -0
- package/v1/serializer/v3/validators/transaction-validators.d.ts +10 -0
- package/v1/serializer/v3/validators/transaction-validators.js +65 -0
- package/v1/serializer/v3/validators/transaction-validators.js.map +1 -0
- package/v1/serializer/v3/validators/validators.d.ts +7 -0
- package/v1/serializer/v3/validators/validators.js +254 -0
- package/v1/serializer/v3/validators/validators.js.map +1 -0
- package/v1/types/bitcoinjs.d.ts +14 -0
- package/v1/types/bitcoinjs.js +3 -0
- package/v1/types/bitcoinjs.js.map +1 -0
- package/v1/types/indexer.d.ts +81 -0
- package/v1/types/indexer.js +3 -0
- package/v1/types/indexer.js.map +1 -0
- package/v1/types/key.d.ts +6 -0
- package/v1/types/key.js +3 -0
- package/v1/types/key.js.map +1 -0
- package/v1/types/protocol.d.ts +17 -0
- package/v1/types/protocol.js +3 -0
- package/v1/types/protocol.js.map +1 -0
- package/v1/types/transaction.d.ts +39 -0
- package/v1/types/transaction.js +3 -0
- package/v1/types/transaction.js.map +1 -0
- package/v1/utils/common.d.ts +2 -0
- package/v1/utils/common.js +28 -0
- package/v1/utils/common.js.map +1 -0
- package/v1/utils/key.d.ts +12 -0
- package/v1/utils/key.js +157 -0
- package/v1/utils/key.js.map +1 -0
- package/v1/utils/network.d.ts +2 -0
- package/v1/utils/network.js +22 -0
- package/v1/utils/network.js.map +1 -0
- package/v1/utils/signature.d.ts +2 -0
- package/v1/utils/signature.js +34 -0
- package/v1/utils/signature.js.map +1 -0
- package/protocol/BitcoinAddress.js.map +0 -1
- package/protocol/BitcoinCryptoClient.js.map +0 -1
- package/protocol/BitcoinProtocol.js.map +0 -1
- package/protocol/BitcoinProtocolOptions.js.map +0 -1
- package/protocol/BitcoinSegwitAddress.js.map +0 -1
- package/protocol/BitcoinSegwitProtocol.js.map +0 -1
- package/protocol/BitcoinTestnetProtocol.js.map +0 -1
- package/protocol/BitcoinTypes.js.map +0 -1
- package/types/signed-transaction-bitcoin-segwit.d.ts +0 -5
- package/types/signed-transaction-bitcoin-segwit.js.map +0 -1
- package/types/signed-transaction-bitcoin.d.ts +0 -9
- package/types/signed-transaction-bitcoin.js.map +0 -1
- package/types/transaction-bitcoin.js.map +0 -1
- package/types/unsigned-transaction-bitcoin-segwit.d.ts +0 -7
- package/types/unsigned-transaction-bitcoin-segwit.js.map +0 -1
- package/types/unsigned-transaction-bitcoin.js.map +0 -1
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Address, AirGapProtocol, AirGapTransaction, AirGapTransactionsWithCursor, Amount, Balance, ExtendedKeyPair, ExtendedPublicKey, ExtendedSecretKey, FeeDefaults, KeyPair, ProtocolMetadata, ProtocolUnitsMetadata, PublicKey, RecursivePartial, Secret, SecretKey, Signature, SignedTransaction, TransactionConfiguration, TransactionDetails, UnsignedTransaction } from '@airgap/module-kit';
|
|
2
|
+
import { BitcoinJS } from '../types/bitcoinjs';
|
|
3
|
+
import { BitcoinProtocolNetwork, BitcoinProtocolOptions, BitcoinStandardProtocolNetwork, BitcoinUnits } from '../types/protocol';
|
|
4
|
+
import { BitcoinSignedTransaction, BitcoinTransactionCursor, BitcoinUnsignedTransaction } from '../types/transaction';
|
|
5
|
+
export interface BitcoinProtocol<_SignedTransaction extends SignedTransaction = BitcoinSignedTransaction, _UnsignedTransaction extends UnsignedTransaction = BitcoinUnsignedTransaction> extends AirGapProtocol<{
|
|
6
|
+
AddressResult: Address;
|
|
7
|
+
ProtocolNetwork: BitcoinProtocolNetwork;
|
|
8
|
+
SignedTransaction: _SignedTransaction;
|
|
9
|
+
TransactionCursor: BitcoinTransactionCursor;
|
|
10
|
+
Units: BitcoinUnits;
|
|
11
|
+
FeeEstimation: FeeDefaults<BitcoinUnits>;
|
|
12
|
+
UnsignedTransaction: _UnsignedTransaction;
|
|
13
|
+
}, 'Bip32', 'Crypto', 'FetchDataForAddress', 'FetchDataForMultipleAddresses'> {
|
|
14
|
+
}
|
|
15
|
+
export declare class BitcoinProtocolImpl implements BitcoinProtocol {
|
|
16
|
+
private readonly options;
|
|
17
|
+
private readonly cryptoClient;
|
|
18
|
+
readonly bitcoinJS: BitcoinJS;
|
|
19
|
+
constructor(options?: RecursivePartial<BitcoinProtocolOptions>, bitcoinJS?: any, bitcoinJSMessage?: any);
|
|
20
|
+
readonly units: ProtocolUnitsMetadata<BitcoinUnits>;
|
|
21
|
+
readonly feeDefaults: FeeDefaults<BitcoinUnits>;
|
|
22
|
+
readonly metadata: ProtocolMetadata<BitcoinUnits>;
|
|
23
|
+
getMetadata(): Promise<ProtocolMetadata<BitcoinUnits>>;
|
|
24
|
+
getAddressFromPublicKey(publicKey: PublicKey | ExtendedPublicKey): Promise<string>;
|
|
25
|
+
private getAddressFromNonExtendedPublicKey;
|
|
26
|
+
private getAddressFromExtendedPublicKey;
|
|
27
|
+
deriveFromExtendedPublicKey(extendedPublicKey: ExtendedPublicKey, visibilityIndex: number, addressIndex: number): Promise<PublicKey>;
|
|
28
|
+
getDetailsFromTransaction(transaction: BitcoinSignedTransaction | BitcoinUnsignedTransaction, _publicKey: PublicKey | ExtendedPublicKey): Promise<AirGapTransaction<BitcoinUnits>[]>;
|
|
29
|
+
private getDetailsFromSignedTransaction;
|
|
30
|
+
private getDetailsFromUnsignedTransaction;
|
|
31
|
+
verifyMessageWithPublicKey(message: string, signature: Signature, publicKey: ExtendedPublicKey | PublicKey): Promise<boolean>;
|
|
32
|
+
encryptAsymmetricWithPublicKey(payload: string, publicKey: ExtendedPublicKey | PublicKey): Promise<string>;
|
|
33
|
+
getKeyPairFromSecret(secret: Secret, derivationPath?: string): Promise<KeyPair>;
|
|
34
|
+
private getKeyPairFromHexSecret;
|
|
35
|
+
private getKeyPairFromMnemonic;
|
|
36
|
+
getExtendedKeyPairFromSecret(secret: Secret, derivationPath?: string): Promise<ExtendedKeyPair>;
|
|
37
|
+
private getExtendedKeyPairFromHexSecret;
|
|
38
|
+
private getExtendedKeyPairFromMnemonic;
|
|
39
|
+
signTransactionWithSecretKey(transaction: BitcoinUnsignedTransaction, secretKey: SecretKey | ExtendedSecretKey): Promise<BitcoinSignedTransaction>;
|
|
40
|
+
private signTransactionWithNonExtendedSecretKey;
|
|
41
|
+
private signTransactionWithExtendedSecretKey;
|
|
42
|
+
private createSignedTransaction;
|
|
43
|
+
signMessageWithKeyPair(message: string, keyPair: ExtendedKeyPair | KeyPair): Promise<Signature>;
|
|
44
|
+
decryptAsymmetricWithKeyPair(payload: string, keyPair: ExtendedKeyPair | KeyPair): Promise<string>;
|
|
45
|
+
encryptAESWithSecretKey(payload: string, secretKey: SecretKey | ExtendedSecretKey): Promise<string>;
|
|
46
|
+
decryptAESWithSecretKey(payload: string, secretKey: SecretKey | ExtendedSecretKey): Promise<string>;
|
|
47
|
+
getNetwork(): Promise<BitcoinProtocolNetwork>;
|
|
48
|
+
getTransactionsForPublicKey(publicKey: ExtendedPublicKey | PublicKey, limit: number, cursor?: BitcoinTransactionCursor): Promise<AirGapTransactionsWithCursor<BitcoinTransactionCursor, BitcoinUnits>>;
|
|
49
|
+
private getTransactionsForNonExtendedPublicKey;
|
|
50
|
+
private getTransactionsForExtendedPublicKey;
|
|
51
|
+
getTransactionsForAddress(address: string, limit: number, cursor?: BitcoinTransactionCursor): Promise<AirGapTransactionsWithCursor<BitcoinTransactionCursor, BitcoinUnits>>;
|
|
52
|
+
getTransactionsForAddresses(addresses: string[], limit: number, cursor?: BitcoinTransactionCursor): Promise<AirGapTransactionsWithCursor<BitcoinTransactionCursor, BitcoinUnits>>;
|
|
53
|
+
getBalanceOfPublicKey(publicKey: ExtendedPublicKey | PublicKey): Promise<Balance<BitcoinUnits>>;
|
|
54
|
+
private getBalanceOfNonExtendedPublicKey;
|
|
55
|
+
private getBalanceOfExtendedPublicKey;
|
|
56
|
+
getBalanceOfAddress(address: string): Promise<Balance<BitcoinUnits>>;
|
|
57
|
+
getBalanceOfAddresses(addresses: string[]): Promise<Balance<BitcoinUnits>>;
|
|
58
|
+
getTransactionMaxAmountWithPublicKey(publicKey: ExtendedPublicKey | PublicKey, to: string[], configuration?: TransactionConfiguration<BitcoinUnits>): Promise<Amount<BitcoinUnits>>;
|
|
59
|
+
getTransactionFeeWithPublicKey(publicKey: ExtendedPublicKey | PublicKey, details: TransactionDetails<BitcoinUnits>[]): Promise<FeeDefaults<BitcoinUnits>>;
|
|
60
|
+
prepareTransactionWithPublicKey(publicKey: ExtendedPublicKey | PublicKey, details: TransactionDetails<BitcoinUnits>[], configuration?: TransactionConfiguration<BitcoinUnits>): Promise<BitcoinUnsignedTransaction>;
|
|
61
|
+
private prepareTransactionWithNonExtendedPublicKey;
|
|
62
|
+
private prepareTransactionWithExtendedPublicKey;
|
|
63
|
+
broadcastTransaction(transaction: BitcoinSignedTransaction): Promise<string>;
|
|
64
|
+
protected convertExtendedPublicKey(extendedPublicKey: ExtendedPublicKey, targetFormat: ExtendedPublicKey['format']): ExtendedPublicKey;
|
|
65
|
+
}
|
|
66
|
+
export declare function createBitcoinProtocol(options?: RecursivePartial<BitcoinProtocolOptions>): BitcoinProtocol;
|
|
67
|
+
export declare const BITCOIN_MAINNET_PROTOCOL_NETWORK: BitcoinStandardProtocolNetwork;
|
|
68
|
+
export declare function createBitcoinProtocolOptions(network?: Partial<BitcoinProtocolNetwork>): BitcoinProtocolOptions;
|