UNPKG

@airgap/etherlink

Version:

The @airgap/etherlink package is an implementation of the ICoinProtocol interface from @airgap/coinlib-core.

61 lines (60 loc) 6.37 kB
import { FetchDataForAddressExtension, FetchDataForAddressProtocol } from '../protocol/extensions/address/FetchDataForAddressExtension'; import { FetchDataForMultipleAddressesExtension, FetchDataForMultipleAddressesProtocol } from '../protocol/extensions/address/FetchDataForMultipleAddressesExtension'; import { MultiAddressPublicKeyExtension, MultiAddressPublicKeyProtocol } from '../protocol/extensions/address/MultiAddressPublicKeyExtension'; import { BaseBip32Protocol, Bip32Extension, OfflineBip32Protocol, OnlineBip32Protocol } from '../protocol/extensions/bip/Bip32Extension'; import { ConfigurableContractProtocol } from '../protocol/extensions/contract/ConfigurableContractExtension'; import { AES, AESExtension } from '../protocol/extensions/crypto/AESExtension'; import { AsymmetricEncryptionExtension, BaseAsymmetricEncryption, OfflineAsymmetricEncryption } from '../protocol/extensions/crypto/AsymmetricEncryptionExtension'; import { BaseSignMessage, OfflineSignMessage, SignMessageExtension } from '../protocol/extensions/crypto/SignMessageExtension'; import { WalletConnectExtension, WalletConnectProtocol } from '../protocol/extensions/dapp/WalletConnectProtocol'; import { GetTokenBalances, GetTokenBalancesExtension } from '../protocol/extensions/sub-protocol/GetTokenBalancesExtension'; import { BaseMultiTokenSubProtocol, MultiTokenSubProtocolExtension, OnlineMultiTokenSubProtocol } from '../protocol/extensions/sub-protocol/MultiTokenSubProtocolExtension'; import { SingleTokenSubProtocol, SingleTokenSubProtocolExtension } from '../protocol/extensions/sub-protocol/SingleTokenSubProtocolExtension'; import { SubProtocol } from '../protocol/extensions/sub-protocol/SubProtocolExtension'; import { ConfigurableTransactionInjectorProtocol } from '../protocol/extensions/transaction/ConfigurableTransactionInjectorExtension'; import { TransactionStatusChecker, TransactionStatusCheckerExtension } from '../protocol/extensions/transaction/TransactionStatusCheckerExtension'; import { AnyProtocol, BaseProtocol, OfflineProtocol, OnlineProtocol } from '../protocol/protocol'; import { ProtocolNetwork } from '../types/protocol'; import { Schema } from './interface'; export declare const baseProtocolSchema: Schema<BaseProtocol>; export declare const offlineProtocolSchema: Schema<OfflineProtocol>; export declare const onlineProtocolSchema: Schema<OnlineProtocol>; export declare const bip32BaseProtocolSchema: Schema<BaseBip32Protocol>; export declare const bip32OfflineProtocolSchema: Schema<OfflineBip32Protocol>; export declare const bip32OnlineProtocolSchema: Schema<OnlineBip32Protocol>; export declare const subProtocolSchema: Schema<SubProtocol>; export declare const singleTokenSubProtocolSchema: Schema<SingleTokenSubProtocol>; export declare const multiTokenSubProtocolBaseSchema: Schema<BaseMultiTokenSubProtocol>; export declare const multiTokenSubProtocolOnlineSchema: Schema<OnlineMultiTokenSubProtocol>; export declare const getTokenBalancesSchema: Schema<GetTokenBalances>; export declare const fetchDataForAddressProtocolSchema: Schema<FetchDataForAddressProtocol>; export declare const fetchDataForMultipleAddressesProtocolSchema: Schema<FetchDataForMultipleAddressesProtocol>; export declare const multiAddressPublicKeyProtocolSchema: Schema<MultiAddressPublicKeyProtocol>; export declare const configurableContractProtocolSchema: Schema<ConfigurableContractProtocol>; export declare const aesEncryptionSchema: Schema<AES>; export declare const asymmetricEncryptionBaseSchema: Schema<BaseAsymmetricEncryption>; export declare const asymmetricEncryptionOfflineSchema: Schema<OfflineAsymmetricEncryption>; export declare const signMessageBaseSchema: Schema<BaseSignMessage>; export declare const signMessageOfflineSchema: Schema<OfflineSignMessage>; export declare const configurableTransactionInjectorSchema: Schema<ConfigurableTransactionInjectorProtocol>; export declare const transactionStatusCheckerSchema: Schema<TransactionStatusChecker>; export declare const walletConnectProtocolSchema: Schema<WalletConnectProtocol>; export declare function isAnyProtocol(object: unknown): object is AnyProtocol; export declare function isOfflineProtocol(object: unknown): object is OfflineProtocol; export declare function isOnlineProtocol(object: unknown): object is OnlineProtocol; export declare function isBip32Protocol<T extends AnyProtocol>(protocol: T): protocol is T & Bip32Extension<T>; export declare function isSubProtocol<T extends AnyProtocol>(protocol: T): protocol is T & SubProtocol; export declare function isSingleTokenSubProtocol<T extends AnyProtocol>(protocol: T): protocol is T & SingleTokenSubProtocolExtension<T>; export declare function isMultiTokenSubProtocol<T extends AnyProtocol>(protocol: T): protocol is T & MultiTokenSubProtocolExtension<T>; export declare function canGetTokenBalances<T extends OnlineProtocol>(protocol: T): protocol is T & GetTokenBalancesExtension<T>; export declare function canFetchDataForAddress<T extends OnlineProtocol>(protocol: T): protocol is T & FetchDataForAddressExtension<T>; export declare function canFetchDataForMultipleAddresses<T extends OnlineProtocol>(protocol: T): protocol is T & FetchDataForMultipleAddressesExtension<T>; export declare function hasMultiAddressPublicKeys<T extends AnyProtocol>(protocol: T): protocol is T & MultiAddressPublicKeyExtension<T>; export declare function hasConfigurableContract<T extends AnyProtocol>(protocol: T): protocol is T & ConfigurableContractProtocol; export declare function canEncryptAES<T extends OfflineProtocol>(protocol: T): protocol is T & AESExtension<T>; export declare function canEncryptAsymmetric<T extends AnyProtocol>(protocol: T): protocol is T & AsymmetricEncryptionExtension<T>; export declare function canSignMessage<T extends AnyProtocol>(protocol: T): protocol is T & SignMessageExtension<T>; export declare function hasConfigurableTransactionInjector<T extends OnlineProtocol>(protocol: T): protocol is T & ConfigurableTransactionInjectorProtocol; export declare function isTransactionStatusChecker<T extends OnlineProtocol>(protocol: T): protocol is T & TransactionStatusCheckerExtension<T>; export declare function supportsWalletConnect<T extends OnlineProtocol>(protocol: T): protocol is T & WalletConnectExtension<T>; export declare function protocolNetworkIdentifier(network: ProtocolNetwork): string;