@airgap/module-kit 0.13.14-beta.0 → 0.13.14-beta.2

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/index.d.ts CHANGED
@@ -35,7 +35,7 @@ import { ProtocolAccountMetadata, ProtocolFeeMetadata, ProtocolMetadata, Protoco
35
35
  import { V3SchemaConfiguration } from './types/serializer';
36
36
  import { Signature } from './types/signature';
37
37
  import { SubProtocolType } from './types/sub-protocol';
38
- import { AirGapTransaction, AirGapTransactionStatus, AirGapTransactionsWithCursor, SignedTransaction, TransactionConfiguration, TransactionCursor, TransactionDetails, TransactionType, UnsignedTransaction } from './types/transaction';
38
+ import { AirGapTransaction, AirGapTransactionStatus, AirGapTransactionsWithCursor, SignedTransaction, TransactionSimpleConfiguration, TransactionCursor, TransactionDetails, TransactionType, UnsignedTransaction, TransactionFullConfiguration } from './types/transaction';
39
39
  import { AirGapUIAction } from './types/ui/action';
40
40
  import { AirGapUIAlert } from './types/ui/alert';
41
41
  import { AirGapUIText } from './types/ui/text';
@@ -44,13 +44,13 @@ import { implementsInterface, Schema } from './utils/interface';
44
44
  import { isAnyKey, isExtendedPublicKey, isExtendedSecretKey, isPublicKey, isSecretKey } from './utils/key';
45
45
  import { createSupportedProtocols } from './utils/module';
46
46
  import { normalizeToUndefined } from './utils/normalize';
47
- import { aesEncryptionSchema, asymmetricEncryptionBaseSchema, asymmetricEncryptionOfflineSchema, baseProtocolSchema, bip32BaseProtocolSchema, bip32OfflineProtocolSchema, bip32OnlineProtocolSchema, canEncryptAES, canEncryptAsymmetric, canFetchDataForAddress, canFetchDataForMultipleAddresses, canSignMessage, configurableContractProtocolSchema, configurableTransactionInjectorSchema, fetchDataForAddressProtocolSchema, fetchDataForMultipleAddressesProtocolSchema, hasConfigurableContract, hasConfigurableTransactionInjector, hasMultiAddressPublicKeys, isBip32Protocol, isMultiTokenSubProtocol, isOfflineProtocol, isOnlineProtocol, isSingleTokenSubProtocol, isSubProtocol, isTransactionStatusChecker, multiAddressPublicKeyProtocolSchema, multiTokenSubProtocolBaseSchema, offlineProtocolSchema, onlineProtocolSchema, protocolNetworkIdentifier, signMessageBaseSchema, signMessageOfflineSchema, singleTokenSubProtocolSchema, subProtocolSchema, transactionStatusCheckerSchema } from './utils/protocol';
47
+ import { aesEncryptionSchema, asymmetricEncryptionBaseSchema, asymmetricEncryptionOfflineSchema, baseProtocolSchema, bip32BaseProtocolSchema, bip32OfflineProtocolSchema, bip32OnlineProtocolSchema, canEncryptAES, canEncryptAsymmetric, canFetchDataForAddress, canFetchDataForMultipleAddresses, canSignMessage, configurableContractProtocolSchema, configurableTransactionInjectorSchema, fetchDataForAddressProtocolSchema, fetchDataForMultipleAddressesProtocolSchema, hasConfigurableContract, hasConfigurableTransactionInjector, hasMultiAddressPublicKeys, isAnyProtocol, isBip32Protocol, isMultiTokenSubProtocol, isOfflineProtocol, isOnlineProtocol, isSingleTokenSubProtocol, isSubProtocol, isTransactionStatusChecker, multiAddressPublicKeyProtocolSchema, multiTokenSubProtocolBaseSchema, offlineProtocolSchema, onlineProtocolSchema, protocolNetworkIdentifier, signMessageBaseSchema, signMessageOfflineSchema, singleTokenSubProtocolSchema, subProtocolSchema, transactionStatusCheckerSchema } from './utils/protocol';
48
48
  export { AirGapBlockExplorer, BlockExplorerMetadata };
49
49
  export { newSuccessUIAlert, newInfoUIAlert, newWarningUIAlert, newErrorUIAlert, newPlainUIText, newAmount, newSecretKey, newExtendedSecretKey, newPublicKey, newExtendedPublicKey, newSignature, newUnsignedTransaction, newSignedTransaction };
50
50
  export { AirGapModule, ModuleNetworkRegistry, ProtocolConfiguration, OfflineProtocolConfiguration, OnlineProtocolConfiguration, FullProtocolConfiguration };
51
51
  export { AirGapOfflineProtocol, AirGapOnlineProtocol, AirGapProtocol, AirGapAnyProtocol, FetchDataForMultipleAddressesExtension, FetchDataForMultipleAddressesProtocol, MultiAddressPublicKeyExtension, MultiAddressPublicKeyProtocol, Bip32Extension, OfflineBip32Protocol, OnlineBip32Protocol, SubProtocolExtension, SubProtocol, SingleTokenSubProtocolExtension, SingleTokenSubProtocol, MultiTokenSubProtocolExtension, BaseMultiTokenSubProtocol, OnlineMultiTokenSubProtocol, CryptoExtension, AESExtension, AsymmetricEncryptionExtension, SignMessageExtension, TransactionStatusCheckerExtension, ProtocolMetadata, ProtocolUnitsMetadata, ProtocolSymbol, ProtocolFeeMetadata, ProtocolAccountMetadata, ProtocolTransactionMetadata, ProtocolNetworkType, ProtocolNetwork, SubProtocolType };
52
52
  export { AirGapV3SerializerCompanion, V3SchemaConfiguration };
53
53
  export { AirGapInterface };
54
- export { AirGapUIAction, AirGapUIAlert, AirGapUIText, Address, AddressCursor, AddressWithCursor, Amount, Balance, MultiTokenBalanceConfiguration, BytesStringFormat, BytesString, HexString, CryptoAlgorithm, CryptoSecretType, Ed25519CryptoConfiguration, Sr25519CryptoConfiguration, Secp256K1CryptoConfiguration, SaplingCryptoConfiguration, CryptoConfiguration, CryptoDerivative, FeeDefaults, FeeEstimation, KeyType, SecretKey, ExtendedSecretKey, PublicKey, ExtendedPublicKey, KeyPair, ExtendedKeyPair, Signature, TransactionType, UnsignedTransaction, SignedTransaction, AirGapTransaction, TransactionCursor, AirGapTransactionsWithCursor, TransactionDetails, TransactionConfiguration, AirGapTransactionStatus, RecursivePartial };
55
- export { isAmount, Schema, implementsInterface, isAnyKey, isSecretKey, isExtendedSecretKey, isPublicKey, isExtendedPublicKey, createSupportedProtocols, isOfflineProtocol, isOnlineProtocol, isBip32Protocol, isSubProtocol, isSingleTokenSubProtocol, isMultiTokenSubProtocol, canFetchDataForAddress, canFetchDataForMultipleAddresses, hasMultiAddressPublicKeys, hasConfigurableContract, canEncryptAES, canEncryptAsymmetric, canSignMessage, hasConfigurableTransactionInjector, isTransactionStatusChecker, protocolNetworkIdentifier, normalizeToUndefined };
54
+ export { AirGapUIAction, AirGapUIAlert, AirGapUIText, Address, AddressCursor, AddressWithCursor, Amount, Balance, MultiTokenBalanceConfiguration, BytesStringFormat, BytesString, HexString, CryptoAlgorithm, CryptoSecretType, Ed25519CryptoConfiguration, Sr25519CryptoConfiguration, Secp256K1CryptoConfiguration, SaplingCryptoConfiguration, CryptoConfiguration, CryptoDerivative, FeeDefaults, FeeEstimation, KeyType, SecretKey, ExtendedSecretKey, PublicKey, ExtendedPublicKey, KeyPair, ExtendedKeyPair, Signature, TransactionType, UnsignedTransaction, SignedTransaction, AirGapTransaction, TransactionCursor, AirGapTransactionsWithCursor, TransactionDetails, TransactionSimpleConfiguration, TransactionFullConfiguration, AirGapTransactionStatus, RecursivePartial };
55
+ export { isAmount, Schema, implementsInterface, isAnyKey, isSecretKey, isExtendedSecretKey, isPublicKey, isExtendedPublicKey, createSupportedProtocols, isAnyProtocol, isOfflineProtocol, isOnlineProtocol, isBip32Protocol, isSubProtocol, isSingleTokenSubProtocol, isMultiTokenSubProtocol, canFetchDataForAddress, canFetchDataForMultipleAddresses, hasMultiAddressPublicKeys, hasConfigurableContract, canEncryptAES, canEncryptAsymmetric, canSignMessage, hasConfigurableTransactionInjector, isTransactionStatusChecker, protocolNetworkIdentifier, normalizeToUndefined };
56
56
  export { baseProtocolSchema, offlineProtocolSchema, onlineProtocolSchema, bip32BaseProtocolSchema, bip32OfflineProtocolSchema, bip32OnlineProtocolSchema, subProtocolSchema, singleTokenSubProtocolSchema, multiTokenSubProtocolBaseSchema, fetchDataForAddressProtocolSchema, fetchDataForMultipleAddressesProtocolSchema, multiAddressPublicKeyProtocolSchema, configurableContractProtocolSchema, aesEncryptionSchema, asymmetricEncryptionBaseSchema, asymmetricEncryptionOfflineSchema, signMessageBaseSchema, signMessageOfflineSchema, configurableTransactionInjectorSchema, transactionStatusCheckerSchema };
package/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fetchDataForMultipleAddressesProtocolSchema = exports.fetchDataForAddressProtocolSchema = exports.multiTokenSubProtocolBaseSchema = exports.singleTokenSubProtocolSchema = exports.subProtocolSchema = exports.bip32OnlineProtocolSchema = exports.bip32OfflineProtocolSchema = exports.bip32BaseProtocolSchema = exports.onlineProtocolSchema = exports.offlineProtocolSchema = exports.baseProtocolSchema = exports.normalizeToUndefined = exports.protocolNetworkIdentifier = exports.isTransactionStatusChecker = exports.hasConfigurableTransactionInjector = exports.canSignMessage = exports.canEncryptAsymmetric = exports.canEncryptAES = exports.hasConfigurableContract = exports.hasMultiAddressPublicKeys = exports.canFetchDataForMultipleAddresses = exports.canFetchDataForAddress = exports.isMultiTokenSubProtocol = exports.isSingleTokenSubProtocol = exports.isSubProtocol = exports.isBip32Protocol = exports.isOnlineProtocol = exports.isOfflineProtocol = exports.createSupportedProtocols = exports.isExtendedPublicKey = exports.isPublicKey = exports.isExtendedSecretKey = exports.isSecretKey = exports.isAnyKey = exports.implementsInterface = exports.isAmount = exports.ModuleNetworkRegistry = exports.newSignedTransaction = exports.newUnsignedTransaction = exports.newSignature = exports.newExtendedPublicKey = exports.newPublicKey = exports.newExtendedSecretKey = exports.newSecretKey = exports.newAmount = exports.newPlainUIText = exports.newErrorUIAlert = exports.newWarningUIAlert = exports.newInfoUIAlert = exports.newSuccessUIAlert = void 0;
4
- exports.transactionStatusCheckerSchema = exports.configurableTransactionInjectorSchema = exports.signMessageOfflineSchema = exports.signMessageBaseSchema = exports.asymmetricEncryptionOfflineSchema = exports.asymmetricEncryptionBaseSchema = exports.aesEncryptionSchema = exports.configurableContractProtocolSchema = exports.multiAddressPublicKeyProtocolSchema = void 0;
3
+ exports.fetchDataForAddressProtocolSchema = exports.multiTokenSubProtocolBaseSchema = exports.singleTokenSubProtocolSchema = exports.subProtocolSchema = exports.bip32OnlineProtocolSchema = exports.bip32OfflineProtocolSchema = exports.bip32BaseProtocolSchema = exports.onlineProtocolSchema = exports.offlineProtocolSchema = exports.baseProtocolSchema = exports.normalizeToUndefined = exports.protocolNetworkIdentifier = exports.isTransactionStatusChecker = exports.hasConfigurableTransactionInjector = exports.canSignMessage = exports.canEncryptAsymmetric = exports.canEncryptAES = exports.hasConfigurableContract = exports.hasMultiAddressPublicKeys = exports.canFetchDataForMultipleAddresses = exports.canFetchDataForAddress = exports.isMultiTokenSubProtocol = exports.isSingleTokenSubProtocol = exports.isSubProtocol = exports.isBip32Protocol = exports.isOnlineProtocol = exports.isOfflineProtocol = exports.isAnyProtocol = exports.createSupportedProtocols = exports.isExtendedPublicKey = exports.isPublicKey = exports.isExtendedSecretKey = exports.isSecretKey = exports.isAnyKey = exports.implementsInterface = exports.isAmount = exports.ModuleNetworkRegistry = exports.newSignedTransaction = exports.newUnsignedTransaction = exports.newSignature = exports.newExtendedPublicKey = exports.newPublicKey = exports.newExtendedSecretKey = exports.newSecretKey = exports.newAmount = exports.newPlainUIText = exports.newErrorUIAlert = exports.newWarningUIAlert = exports.newInfoUIAlert = exports.newSuccessUIAlert = void 0;
4
+ exports.transactionStatusCheckerSchema = exports.configurableTransactionInjectorSchema = exports.signMessageOfflineSchema = exports.signMessageBaseSchema = exports.asymmetricEncryptionOfflineSchema = exports.asymmetricEncryptionBaseSchema = exports.aesEncryptionSchema = exports.configurableContractProtocolSchema = exports.multiAddressPublicKeyProtocolSchema = exports.fetchDataForMultipleAddressesProtocolSchema = void 0;
5
5
  var amount_1 = require("./factories/amount");
6
6
  Object.defineProperty(exports, "newAmount", { enumerable: true, get: function () { return amount_1.newAmount; } });
7
7
  var key_1 = require("./factories/key");
@@ -57,6 +57,7 @@ Object.defineProperty(exports, "fetchDataForMultipleAddressesProtocolSchema", {
57
57
  Object.defineProperty(exports, "hasConfigurableContract", { enumerable: true, get: function () { return protocol_1.hasConfigurableContract; } });
58
58
  Object.defineProperty(exports, "hasConfigurableTransactionInjector", { enumerable: true, get: function () { return protocol_1.hasConfigurableTransactionInjector; } });
59
59
  Object.defineProperty(exports, "hasMultiAddressPublicKeys", { enumerable: true, get: function () { return protocol_1.hasMultiAddressPublicKeys; } });
60
+ Object.defineProperty(exports, "isAnyProtocol", { enumerable: true, get: function () { return protocol_1.isAnyProtocol; } });
60
61
  Object.defineProperty(exports, "isBip32Protocol", { enumerable: true, get: function () { return protocol_1.isBip32Protocol; } });
61
62
  Object.defineProperty(exports, "isMultiTokenSubProtocol", { enumerable: true, get: function () { return protocol_1.isMultiTokenSubProtocol; } });
62
63
  Object.defineProperty(exports, "isOfflineProtocol", { enumerable: true, get: function () { return protocol_1.isOfflineProtocol; } });
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AACA,6CAA8C;AAoI5C,0FApIO,kBAAS,OAoIP;AAnIX,uCAAwG;AAuItG,qGAvIO,0BAAoB,OAuIP;AAFpB,qGArI6B,0BAAoB,OAqI7B;AACpB,6FAtImD,kBAAY,OAsInD;AAFZ,6FApIiE,kBAAY,OAoIjE;AAnId,mDAAoD;AAuIlD,6FAvIO,wBAAY,OAuIP;AAtId,uDAAsF;AAwIpF,qGAxIO,kCAAoB,OAwIP;AADpB,uGAvI6B,oCAAsB,OAuI7B;AAtIxB,8CAA4G;AA8H1G,gGA9HO,uBAAe,OA8HP;AAFf,+FA5HwB,sBAAc,OA4HxB;AADd,kGA3HwC,yBAAiB,OA2HxC;AAEjB,kGA7H2D,yBAAiB,OA6H3D;AA5HnB,4CAAoD;AA8HlD,+FA9HO,qBAAc,OA8HP;AA5HhB,4EAAwE;AA2ItE,sGA3IO,+CAAqB,OA2IP;AAtEvB,yCAAyC;AA0KvC,yFA1KO,iBAAQ,OA0KP;AAzKV,+CAA+D;AA2K7D,oGA3KO,+BAAmB,OA2KP;AA1KrB,mCAA0G;AA2KxG,yFA3KO,cAAQ,OA2KP;AAIR,oGA/KiB,yBAAmB,OA+KjB;AAFnB,oGA7KsC,yBAAmB,OA6KtC;AACnB,4FA9K2D,iBAAW,OA8K3D;AAFX,4FA5KwE,iBAAW,OA4KxE;AA3Kb,yCAAyD;AA+KvD,yGA/KO,iCAAwB,OA+KP;AA9K1B,+CAAwD;AA+LtD,qGA/LO,gCAAoB,OA+LP;AA9LtB,6CAqCyB;AA4KvB,oGAhNA,8BAAmB,OAgNA;AACnB,+GAhNA,yCAA8B,OAgNA;AAC9B,kHAhNA,4CAAiC,OAgNA;AAfjC,mGAhMA,6BAAkB,OAgMA;AAGlB,wGAlMA,kCAAuB,OAkMA;AACvB,2GAlMA,qCAA0B,OAkMA;AAC1B,0GAlMA,oCAAyB,OAkMA;AAjBzB,8FAhLA,wBAAa,OAgLA;AACb,qGAhLA,+BAAoB,OAgLA;AALpB,uGA1KA,iCAAsB,OA0KA;AACtB,iHA1KA,2CAAgC,OA0KA;AAKhC,+FA9KA,yBAAc,OA8KA;AAsBd,mHAnMA,6CAAkC,OAmMA;AAMlC,sHAxMA,gDAAqC,OAwMA;AATrC,kHA9LA,4CAAiC,OA8LA;AACjC,4HA9LA,sDAA2C,OA8LA;AAvB3C,wGAtKA,kCAAuB,OAsKA;AAIvB,mHAzKA,6CAAkC,OAyKA;AALlC,0GAnKA,oCAAyB,OAmKA;AANzB,gGA5JA,0BAAe,OA4JA;AAGf,wGA9JA,kCAAuB,OA8JA;AALvB,kGAxJA,4BAAiB,OAwJA;AACjB,iGAxJA,2BAAgB,OAwJA;AAGhB,yGA1JA,mCAAwB,OA0JA;AADxB,8FAxJA,wBAAa,OAwJA;AAWb,2GAlKA,qCAA0B,OAkKA;AAmB1B,oHApLA,8CAAmC,OAoLA;AAHnC,gHAhLA,0CAA+B,OAgLA;AAP/B,sGAxKA,gCAAqB,OAwKA;AACrB,qGAxKA,+BAAoB,OAwKA;AATpB,0GA9JA,oCAAyB,OA8JA;AAuBzB,sGApLA,gCAAqB,OAoLA;AACrB,yGApLA,mCAAwB,OAoLA;AAVxB,6GAzKA,uCAA4B,OAyKA;AAD5B,kGAvKA,4BAAiB,OAuKA;AAajB,+GAnLA,yCAA8B,OAmLA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AACA,6CAA8C;AAsI5C,0FAtIO,kBAAS,OAsIP;AArIX,uCAAwG;AAyItG,qGAzIO,0BAAoB,OAyIP;AAFpB,qGAvI6B,0BAAoB,OAuI7B;AACpB,6FAxImD,kBAAY,OAwInD;AAFZ,6FAtIiE,kBAAY,OAsIjE;AArId,mDAAoD;AAyIlD,6FAzIO,wBAAY,OAyIP;AAxId,uDAAsF;AA0IpF,qGA1IO,kCAAoB,OA0IP;AADpB,uGAzI6B,oCAAsB,OAyI7B;AAxIxB,8CAA4G;AAgI1G,gGAhIO,uBAAe,OAgIP;AAFf,+FA9HwB,sBAAc,OA8HxB;AADd,kGA7HwC,yBAAiB,OA6HxC;AAEjB,kGA/H2D,yBAAiB,OA+H3D;AA9HnB,4CAAoD;AAgIlD,+FAhIO,qBAAc,OAgIP;AA9HhB,4EAAwE;AA6ItE,sGA7IO,+CAAqB,OA6IP;AAvEvB,yCAAyC;AA4KvC,yFA5KO,iBAAQ,OA4KP;AA3KV,+CAA+D;AA6K7D,oGA7KO,+BAAmB,OA6KP;AA5KrB,mCAA0G;AA6KxG,yFA7KO,cAAQ,OA6KP;AAIR,oGAjLiB,yBAAmB,OAiLjB;AAFnB,oGA/KsC,yBAAmB,OA+KtC;AACnB,4FAhL2D,iBAAW,OAgL3D;AAFX,4FA9KwE,iBAAW,OA8KxE;AA7Kb,yCAAyD;AAiLvD,yGAjLO,iCAAwB,OAiLP;AAhL1B,+CAAwD;AAkMtD,qGAlMO,gCAAoB,OAkMP;AAjMtB,6CAsCyB;AA8KvB,oGAnNA,8BAAmB,OAmNA;AACnB,+GAnNA,yCAA8B,OAmNA;AAC9B,kHAnNA,4CAAiC,OAmNA;AAfjC,mGAnMA,6BAAkB,OAmMA;AAGlB,wGArMA,kCAAuB,OAqMA;AACvB,2GArMA,qCAA0B,OAqMA;AAC1B,0GArMA,oCAAyB,OAqMA;AAjBzB,8FAnLA,wBAAa,OAmLA;AACb,qGAnLA,+BAAoB,OAmLA;AALpB,uGA7KA,iCAAsB,OA6KA;AACtB,iHA7KA,2CAAgC,OA6KA;AAKhC,+FAjLA,yBAAc,OAiLA;AAsBd,mHAtMA,6CAAkC,OAsMA;AAMlC,sHA3MA,gDAAqC,OA2MA;AATrC,kHAjMA,4CAAiC,OAiMA;AACjC,4HAjMA,sDAA2C,OAiMA;AAvB3C,wGAzKA,kCAAuB,OAyKA;AAIvB,mHA5KA,6CAAkC,OA4KA;AALlC,0GAtKA,oCAAyB,OAsKA;AATzB,8FA5JA,wBAAa,OA4JA;AAGb,gGA9JA,0BAAe,OA8JA;AAGf,wGAhKA,kCAAuB,OAgKA;AALvB,kGA1JA,4BAAiB,OA0JA;AACjB,iGA1JA,2BAAgB,OA0JA;AAGhB,yGA5JA,mCAAwB,OA4JA;AADxB,8FA1JA,wBAAa,OA0JA;AAWb,2GApKA,qCAA0B,OAoKA;AAmB1B,oHAtLA,8CAAmC,OAsLA;AAHnC,gHAlLA,0CAA+B,OAkLA;AAP/B,sGA1KA,gCAAqB,OA0KA;AACrB,qGA1KA,+BAAoB,OA0KA;AATpB,0GAhKA,oCAAyB,OAgKA;AAuBzB,sGAtLA,gCAAqB,OAsLA;AACrB,yGAtLA,mCAAwB,OAsLA;AAVxB,6GA3KA,uCAA4B,OA2KA;AAD5B,kGAzKA,4BAAiB,OAyKA;AAajB,+GArLA,yCAA8B,OAqLA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@airgap/module-kit",
3
- "version": "0.13.14-beta.0",
3
+ "version": "0.13.14-beta.2",
4
4
  "description": "The @airgap/module-kit package provides the common interfaces and functionalities to implement AirGap modules.",
5
5
  "keywords": [
6
6
  "airgap",
@@ -29,8 +29,8 @@
29
29
  },
30
30
  "author": "Papers AG <contact@papers.ch> (https://papers.ch)",
31
31
  "dependencies": {
32
- "@airgap/coinlib-core": "^0.13.14-beta.0",
33
- "@airgap/serializer": "^0.13.14-beta.0"
32
+ "@airgap/coinlib-core": "*",
33
+ "@airgap/serializer": "*"
34
34
  },
35
35
  "nyc": {
36
36
  "include": [
@@ -7,7 +7,7 @@ import { FeeEstimation } from '../types/fee';
7
7
  import { ExtendedKeyPair, ExtendedPublicKey, ExtendedSecretKey, KeyPair, PublicKey, SecretKey } from '../types/key';
8
8
  import { Complement } from '../types/meta/utility-types';
9
9
  import { ProtocolMetadata, ProtocolNetwork } from '../types/protocol';
10
- import { AirGapTransaction, AirGapTransactionsWithCursor, SignedTransaction, TransactionConfiguration, TransactionCursor, TransactionDetails, UnsignedTransaction } from '../types/transaction';
10
+ import { AirGapTransaction, AirGapTransactionsWithCursor, SignedTransaction, TransactionSimpleConfiguration, TransactionCursor, TransactionDetails, UnsignedTransaction, TransactionFullConfiguration } from '../types/transaction';
11
11
  export interface BaseGeneric<_AddressCursor extends AddressCursor = AddressCursor, _AddressResult extends Address | AddressWithCursor<_AddressCursor> = Address | AddressWithCursor<_AddressCursor>, _Units extends string = string, _FeeUnits extends string = _Units, _SignedTransaction extends SignedTransaction = SignedTransaction, _UnsignedTransaction extends UnsignedTransaction = UnsignedTransaction> {
12
12
  AddressCursor: _AddressCursor;
13
13
  AddressResult: _AddressResult;
@@ -50,9 +50,9 @@ export interface _OnlineProtocol<_AddressCursor extends OnlineGeneric['AddressCu
50
50
  getNetwork(): Promise<_ProtocolNetwork>;
51
51
  getTransactionsForPublicKey(publicKey: _PublicKey, limit: number, cursor?: _TransactionCursor): Promise<AirGapTransactionsWithCursor<_TransactionCursor, _Units, _FeeUnits>>;
52
52
  getBalanceOfPublicKey(publicKey: _PublicKey, configuration?: _BalanceConfiguration): Promise<Balance<_Units>>;
53
- getTransactionMaxAmountWithPublicKey(publicKey: _PublicKey, to: Address[], configuration?: TransactionConfiguration<_FeeUnits>): Promise<Amount<_Units>>;
54
- getTransactionFeeWithPublicKey(publicKey: _PublicKey, details: TransactionDetails<_Units>[]): Promise<_FeeEstimation>;
55
- prepareTransactionWithPublicKey(publicKey: _PublicKey, details: TransactionDetails<_Units>[], configuration?: TransactionConfiguration<_FeeUnits>): Promise<_UnsignedTransaction>;
53
+ getTransactionMaxAmountWithPublicKey(publicKey: _PublicKey, to: Address[], configuration?: TransactionFullConfiguration<_FeeUnits>): Promise<Amount<_Units>>;
54
+ getTransactionFeeWithPublicKey(publicKey: _PublicKey, details: TransactionDetails<_Units>[], configuration?: TransactionSimpleConfiguration): Promise<_FeeEstimation>;
55
+ prepareTransactionWithPublicKey(publicKey: _PublicKey, details: TransactionDetails<_Units>[], configuration?: TransactionFullConfiguration<_FeeUnits>): Promise<_UnsignedTransaction>;
56
56
  broadcastTransaction(transaction: _SignedTransaction): Promise<string>;
57
57
  }
58
58
  export declare type OnlineProtocol<G extends Partial<OnlineGeneric> = {}> = _OnlineProtocol<TypedAddressCursor<G>, TypedAddressResult<G>, TypedProtocolNetwork<G>, TypedUnits<G>, TypedFeeUnits<G>, TypedFeeEstimation<G>, TypedSignedTransaction<G>, TypedUnsignedTransaction<G>, TypedTransactionCursor<G>, PublicKey, undefined>;
@@ -5,3 +5,4 @@ export declare type RecursivePartial<T> = {
5
5
  export declare type Override<T, U> = Omit<T, keyof U> & U;
6
6
  export declare type ExtractTyped<T, K extends T> = Extract<T, K>;
7
7
  export declare type ExcludeTyped<T, K extends T> = Exclude<T, K>;
8
+ export declare type OmitTyped<T, K extends keyof T> = Omit<T, K>;
@@ -41,12 +41,14 @@ export interface TransactionDetails<_Units extends string = string> {
41
41
  amount: Amount<_Units>;
42
42
  arbitraryData?: string;
43
43
  }
44
- export interface TransactionConfiguration<_FeeUnits extends string = string> {
45
- fee?: Amount<_FeeUnits>;
44
+ export interface TransactionSimpleConfiguration {
46
45
  arbitraryData?: string;
47
46
  keepMinBalance?: boolean;
48
47
  assetId?: number;
49
48
  }
49
+ export interface TransactionFullConfiguration<_FeeUnits extends string = string> extends TransactionSimpleConfiguration {
50
+ fee?: Amount<_FeeUnits>;
51
+ }
50
52
  interface BaseTransactionStatus<_Type extends string> extends Sealed<_Type> {
51
53
  hash?: string;
52
54
  block?: string;
@@ -35,8 +35,9 @@ export declare const signMessageBaseSchema: Schema<BaseSignMessage>;
35
35
  export declare const signMessageOfflineSchema: Schema<OfflineSignMessage>;
36
36
  export declare const configurableTransactionInjectorSchema: Schema<ConfigurableTransactionInjectorProtocol>;
37
37
  export declare const transactionStatusCheckerSchema: Schema<TransactionStatusChecker>;
38
- export declare function isOfflineProtocol(object: AnyProtocol): object is OfflineProtocol;
39
- export declare function isOnlineProtocol(object: AnyProtocol): object is OnlineProtocol;
38
+ export declare function isAnyProtocol(object: unknown): object is AnyProtocol;
39
+ export declare function isOfflineProtocol(object: unknown): object is OfflineProtocol;
40
+ export declare function isOnlineProtocol(object: unknown): object is OnlineProtocol;
40
41
  export declare function isBip32Protocol<T extends AnyProtocol>(protocol: T): protocol is T & Bip32Extension<T>;
41
42
  export declare function isSubProtocol<T extends AnyProtocol>(protocol: T): protocol is T & SubProtocol;
42
43
  export declare function isSingleTokenSubProtocol<T extends AnyProtocol>(protocol: T): protocol is T & SingleTokenSubProtocolExtension<T>;
package/utils/protocol.js CHANGED
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.protocolNetworkIdentifier = exports.isTransactionStatusChecker = exports.hasConfigurableTransactionInjector = exports.canSignMessage = exports.canEncryptAsymmetric = exports.canEncryptAES = exports.hasConfigurableContract = exports.hasMultiAddressPublicKeys = exports.canFetchDataForMultipleAddresses = exports.canFetchDataForAddress = exports.isMultiTokenSubProtocol = exports.isSingleTokenSubProtocol = exports.isSubProtocol = exports.isBip32Protocol = exports.isOnlineProtocol = exports.isOfflineProtocol = exports.transactionStatusCheckerSchema = exports.configurableTransactionInjectorSchema = exports.signMessageOfflineSchema = exports.signMessageBaseSchema = exports.asymmetricEncryptionOfflineSchema = exports.asymmetricEncryptionBaseSchema = exports.aesEncryptionSchema = exports.configurableContractProtocolSchema = exports.multiAddressPublicKeyProtocolSchema = exports.fetchDataForMultipleAddressesProtocolSchema = exports.fetchDataForAddressProtocolSchema = exports.multiTokenSubProtocolOnlineSchema = exports.multiTokenSubProtocolBaseSchema = exports.singleTokenSubProtocolSchema = exports.subProtocolSchema = exports.bip32OnlineProtocolSchema = exports.bip32OfflineProtocolSchema = exports.bip32BaseProtocolSchema = exports.onlineProtocolSchema = exports.offlineProtocolSchema = exports.baseProtocolSchema = void 0;
14
+ exports.protocolNetworkIdentifier = exports.isTransactionStatusChecker = exports.hasConfigurableTransactionInjector = exports.canSignMessage = exports.canEncryptAsymmetric = exports.canEncryptAES = exports.hasConfigurableContract = exports.hasMultiAddressPublicKeys = exports.canFetchDataForMultipleAddresses = exports.canFetchDataForAddress = exports.isMultiTokenSubProtocol = exports.isSingleTokenSubProtocol = exports.isSubProtocol = exports.isBip32Protocol = exports.isOnlineProtocol = exports.isOfflineProtocol = exports.isAnyProtocol = exports.transactionStatusCheckerSchema = exports.configurableTransactionInjectorSchema = exports.signMessageOfflineSchema = exports.signMessageBaseSchema = exports.asymmetricEncryptionOfflineSchema = exports.asymmetricEncryptionBaseSchema = exports.aesEncryptionSchema = exports.configurableContractProtocolSchema = exports.multiAddressPublicKeyProtocolSchema = exports.fetchDataForMultipleAddressesProtocolSchema = exports.fetchDataForAddressProtocolSchema = exports.multiTokenSubProtocolOnlineSchema = exports.multiTokenSubProtocolBaseSchema = exports.singleTokenSubProtocolSchema = exports.subProtocolSchema = exports.bip32OnlineProtocolSchema = exports.bip32OfflineProtocolSchema = exports.bip32BaseProtocolSchema = exports.onlineProtocolSchema = exports.offlineProtocolSchema = exports.baseProtocolSchema = void 0;
15
15
  // @ts-ignore
16
16
  var createHash = require("@airgap/coinlib-core/dependencies/src/create-hash-1.2.0/index");
17
17
  var interface_1 = require("./interface");
@@ -70,6 +70,10 @@ exports.transactionStatusCheckerSchema = {
70
70
  getTransactionStatus: 'required'
71
71
  };
72
72
  // Implementation Checks
73
+ function isAnyProtocol(object) {
74
+ return isOfflineProtocol(object) || isOnlineProtocol(object);
75
+ }
76
+ exports.isAnyProtocol = isAnyProtocol;
73
77
  function isOfflineProtocol(object) {
74
78
  return (0, interface_1.implementsInterface)(object, exports.offlineProtocolSchema);
75
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/utils/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/utils/protocol.ts"],"names":[],"mappings":"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"}