import { BusinessLogic, BusinessLogicPrivate, QueryParams } from '@dfns/cloud-library';
import { BlockchainIntegrationsCallContractViewRequest, BlockchainIntegrationsCallContractViewResponse, BlockchainIntegrationsGetAddressRequest, BlockchainIntegrationsGetAddressResponse, BlockchainIntegrationsGetAssetBalanceRequest, BlockchainIntegrationsGetAssetBalanceResponse, BlockchainIntegrationsGetBalanceRequest, BlockchainIntegrationsGetBalanceResponse, BlockchainIntegrationsGetContractRequest, BlockchainIntegrationsGetContractResponse, BlockchainIntegrationsGetNativeBalanceRequest, BlockchainIntegrationsGetNativeBalanceResponse, BlockchainIntegrationsGetNftBalanceRequest, BlockchainIntegrationsGetNftBalanceResponse, BlockchainIntegrationsGetNftRequest, BlockchainIntegrationsGetNftResponse, BlockchainIntegrationsListTransactionsRequest, BlockchainIntegrationsListTransactionsResponse, BlockchainIntegrationsSubmitGenericTransactionRequest, BlockchainIntegrationsSubmitGenericTransactionResponse, BlockchainIntegrationsSubmitPaymentTransactionRequest, BlockchainIntegrationsSubmitPaymentTransactionResponse } from '@dfns/private-api-client';
import { SigningGroup } from './signing-group';
import { BlockchainInterface, WalletInterface } from './types';
export declare const getAddress: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsGetAddressRequest, QueryParams, BlockchainIntegrationsGetAddressResponse>;
export declare const getBalance: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsGetBalanceRequest, QueryParams, BlockchainIntegrationsGetBalanceResponse>;
export declare const getNativeBalance: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsGetNativeBalanceRequest, QueryParams, BlockchainIntegrationsGetNativeBalanceResponse>;
export declare const getAssetBalance: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsGetAssetBalanceRequest, QueryParams, BlockchainIntegrationsGetAssetBalanceResponse>;
export declare const listTransactions: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsListTransactionsRequest, QueryParams, BlockchainIntegrationsListTransactionsResponse>;
export declare const submitPaymentTransaction: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsSubmitPaymentTransactionRequest, QueryParams, BlockchainIntegrationsSubmitPaymentTransactionResponse>;
export declare const submitGenericTransaction: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsSubmitGenericTransactionRequest, QueryParams, BlockchainIntegrationsSubmitGenericTransactionResponse>;
export declare const getNftBalance: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsGetNftBalanceRequest, QueryParams, BlockchainIntegrationsGetNftBalanceResponse>;
export declare const getNft: (walletImplementation: new (signingGroup: SigningGroup) => WalletInterface) => BusinessLogicPrivate<BlockchainIntegrationsGetNftRequest, QueryParams, BlockchainIntegrationsGetNftResponse>;
export declare const getContract: (blockchainImplementation?: {
    new (): BlockchainInterface;
}) => BusinessLogic<BlockchainIntegrationsGetContractRequest, QueryParams, BlockchainIntegrationsGetContractResponse>;
export declare const callContractView: (blockchainImplementation?: {
    new (): BlockchainInterface;
}) => BusinessLogic<BlockchainIntegrationsCallContractViewRequest, QueryParams, BlockchainIntegrationsCallContractViewResponse>;
