@abcpros/bitcore-wallet-service
Version:
A service for Mutisig HD Bitcoin Wallets
404 lines • 18.6 kB
TypeScript
/// <reference types="node" />
import 'source-map-support/register';
import { BlockChainExplorer } from './blockchainexplorer';
import { V8 } from './blockchainexplorers/v8';
import { IWallet, TxProposal, Wallet } from './model';
import { Storage } from './storage';
import { CoinConfig, ConfigSwap } from './model/config-swap';
import { ConversionOrder, Output } from './model/conversionOrder';
import { MerchantInfo } from './model/merchantinfo';
import { IMerchantOrder, MerchantOrder, PaymentType } from './model/merchantorder';
import { Order } from './model/order';
import { RaipayFee } from './model/raipayfee';
import { TokenInfo } from './model/tokenInfo';
export interface IWalletService {
lock: any;
storage: Storage;
blockchainExplorer: any;
blockchainExplorerOpts: any;
messageBroker: any;
fiatRateService: any;
notifyTicker: number;
userAgent: string;
walletId: string;
copayerId: string;
appName: string;
appVersion: string;
parsedClientVersion: {
agent: number;
major: number;
minor: number;
};
clientVersion: string;
copayerIsSupportStaff: boolean;
copayerIsMarketingStaff: boolean;
}
export interface ICoinConfigFilter {
fromDate?: Date;
toDate?: Date;
fromCoinCode?: string;
toCoinCode?: string;
status?: string;
fromNetwork?: string;
toNetwork?: string;
orderId?: string;
isInQueue?: boolean;
}
export declare class WalletService {
lock: any;
storage: Storage;
blockchainExplorer: V8;
blockchainExplorerOpts: any;
messageBroker: any;
fiatRateService: any;
notifyTicker: number;
userAgent: string;
walletId: string;
copayerId: string;
appName: string;
appVersion: string;
parsedClientVersion: {
agent: string;
major: number;
minor: number;
};
clientVersion: string;
copayerIsSupportStaff: boolean;
copayerIsMarketingStaff: boolean;
request: any;
constructor();
_checkingValidAddress(address: any): boolean;
static getServiceVersion(): any;
static initialize(opts: any, cb: any): void;
static handleIncomingNotifications(notification: any, cb: any): any;
static shutDown(cb: any): any;
static getInstance(opts: any): WalletService;
static getInstanceWithAuth(opts: any, cb: any): any;
_runLocked(cb: any, task: any, waitTime?: number): void;
logi(message: any, ...args: any[]): import("winston").Logger;
logw(message: any, ...args: any[]): import("winston").Logger;
logd(message: any, ...args: any[]): import("winston").Logger;
login(opts: any, cb: any): void;
logout(opts: any, cb: any): void;
createWallet(opts: any, cb: any): any;
getWallet(opts: any, cb: any): void;
getWalletFromId(walletId: any, cb: any): void;
getWalletFromIdentifier(opts: any, cb: any): any;
getStatus(opts: any, cb: any): void;
_verifySignature(text: any, signature: any, pubkey: any): any;
_verifyRequestPubKey(requestPubKey: any, signature: any, xPubKey: any): any;
_getSigningKey(text: any, signature: any, pubKeys: any): any;
_notify(type: any, data: any, opts: any, cb?: (err?: any, data?: any) => void): void;
_notifyTxProposalAction(type: any, txp: any, extraArgs: any, cb?: (err?: any, data?: any) => void): void;
_addCopayerToWallet(wallet: any, opts: any, cb: any): void;
_addKeyToCopayer(wallet: any, copayer: any, opts: any, cb: any): void;
addAccess(opts: any, cb: any): void;
updateKeysPassword(opts: any, cb: any): any;
updateKeysPasswordConversion(opts: any, cb: any): any;
verifyPassword(opts: any, cb: any): any;
verifyConversionPassword(opts: any, cb: any): any;
encrypt(sharedKey: any, plainText: any): any;
decrypt(sharedKey: Buffer, cipherText: string): Uint8Array;
importSeed(opts: any, cb: any): any;
importSeedConversion(opts: any, cb: any): any;
checkingSeedExist(cb: any): void;
checkingSeedConversionExist(cb: any): void;
renewPassword(opts: any, cb: any): any;
renewPasswordConversion(opts: any, cb: any): any;
_setClientVersion(version: any): void;
_setAppVersion(userAgent: any): void;
_parseClientVersion(): {
agent: string;
major: number;
minor: number;
};
_clientSupportsPayProRefund(): boolean;
static _getCopayerHash(name: any, xPubKey: any, requestPubKey: any): string;
joinWallet(opts: any, cb: any): any;
savePreferences(opts: any, cb: any): any;
getPreferences(opts: any, cb: any): void;
_canCreateAddress(ignoreMaxGap: any, cb: any): any;
_store(wallet: any, address: any, cb: any, checkSync?: boolean): void;
createAddress(opts: any, cb: any): void;
getMainAddresses(opts: any, cb: any): void;
verifyMessageSignature(opts: any, cb: any): void;
_getBlockchainExplorer(coin: any, network: any): ReturnType<typeof BlockChainExplorer>;
getUtxosForCurrentWallet(opts: any, cb: any): void;
_filterOutSlpUtxo(utxoNonSlpChronik: any, allUtxos: any): any[];
_isSupportToken(wallet: any): boolean;
getUtxos(opts: any, cb: any): any;
getUtxosForSelectedAddressAndWallet(opts: any, cb: any): any;
getCoinsForTx(opts: any, cb: any): void;
getTxDetail(txId: any, cb: any): void;
getTxDetailForXecWallet(txId: any, cb: any): Promise<any>;
getTxDetailForXecWalletWithPromise(txId: any): Promise<any>;
getTxDetailForWallet(txId: any, coin: any, cb: any): Promise<any>;
getTxDetailForWalletWithPromise(txId: any, coin: any): Promise<any>;
getBalance(opts: any, cb: any): any;
getBalanceWithPromise(opts: any): Promise<unknown>;
getBalanceDonation(opts: any, cb: any): any;
getRemainingAmount(receiveAmountLotus: any, cb: any): void;
_getUxtosByChronik(coin: any, addressInfo: any): any;
_getUxtosByChronikOnlyByAddress(coin: any, address: any): any;
getUtxosToken(opts: any, cb: any): void;
_getAndStoreTokenInfo(coin: any, tokenId: any): Promise<TokenInfo>;
getTokensWithPromise(opts: any): Promise<unknown>;
getTokens(opts: any, cb: any): void;
getAllTokenInfo(cb: any): void;
getRemainingInfo(opts: any, cb: any): void;
getWalletFundRemaining(opts: any, cb: any): void;
getSendMaxInfo(opts: any, cb: any): void;
_sampleFeeLevels(coin: any, network: any, points: any, cb: any): any;
getFeeLevels(opts: any, cb: any): Promise<any>;
_canCreateTx(cb: any): void;
_validateOutputs(opts: any, wallet: any, cb: any): any;
_validateAndSanitizeTxOpts(wallet: any, opts: any, cb: any): void;
_getFeePerKb(wallet: any, opts: any, cb: any): any;
getFee(coinInfo: any, opts: any): Promise<any>;
_getTransactionCount(wallet: any, address: any, cb: any): any;
getNonce(opts: any): Promise<unknown>;
estimateGas(opts: any): Promise<unknown>;
getMultisigContractInstantiationInfo(opts: any): Promise<unknown>;
getMultisigContractInfo(opts: any): Promise<unknown>;
getTokenContractInfo(opts: any): Promise<unknown>;
getMultisigTxpsInfo(opts: any): Promise<unknown>;
createTx(opts: any, cb: any): void;
publishTx(opts: any, cb: any): void;
getTx(opts: any, cb: any): void;
editTxNote(opts: any, cb: any): void;
getTxNote(opts: any, cb: any): void;
getTxNotes(opts: any, cb: any): void;
removeWallet(opts: any, cb: any): void;
getRemainingDeleteLockTime(txp: any): number;
removePendingTx(opts: any, cb: any): void;
_broadcastRawTx(coin: any, network: any, raw: any, cb: any): any;
_broadcastRawTxByChronik(chronikClient: any, hex: any, cb: any): any;
broadcastRawTx(opts: any, cb: any): Promise<any>;
_checkTxInBlockchain(txp: any, cb: any): any;
signTx(opts: any, cb: any): void;
_processBroadcast(txp: any, opts: any, cb: any): void;
checkIsDonation(txp: any): boolean;
_sendLotusDonation(client: any, key: any, txDonation: any, cb: any): void;
_createOtpTxSwap(coinCode: any, network: any, addressUserReceive: any, amountTo: any): {
coin: any;
dryRun: boolean;
excludeUnconfirmedUtxos: boolean;
feeLevel: string;
isTokenSwap: any;
message: any;
network: any;
outputs: {
amount: number;
message: any;
toAddress: any;
}[];
payProUrl: any;
txpVersion: number;
};
_sendSwap(client: any, key: any, txSwap: any, cb: any): void;
_sendSwapWithToken(coin: any, wallet: any, mnemonic: any, tokenId: any, token: any, TOKENQTY: any, etokenAddress: any, cb: any): Promise<any>;
_burnToken(coin: any, wallet: any, mnemonic: any, tokenId: any, TOKENQTY: any, splitTxId: any, cb: any): Promise<any>;
_getKeyLotus(client: any, cb: any): any;
_getKeyFundWithMnemonic(client: any, cb: any): any;
_getKeyFundConversionWithMnemonic(client: any, cb: any): any;
importWithPromise(opts: any, client: any, isFund: any, isConversion?: boolean): Promise<unknown>;
initializeCoinConfig(cb: any): void;
storeListConfigWithPromie(listNewCoinConfigToStoreInDb: any): Promise<any>;
updateConfigWithPromie(coinConfig: any): Promise<any>;
rescanWalletsInKeys(cb: any): Promise<void>;
filterCoinconfig(opts: any, cb: any): void;
mappingWalletClientsToCoinConfig(walletClients: any, isSwap: boolean, listCoinConfig: CoinConfig[]): Promise<CoinConfig[]>;
_getKeyReceive(client: any, cb: any): any;
getWalletLotusDonation(cb: any): void;
getKeyFundAndReceiveWithFundMnemonic(cb: any): void;
getKeyConversionWithFundMnemonic(cb: any): void;
_createOtpTxDonation(addressDonation: any, receiveLotusAddress: any, receiveAmountLotus: any): {
coin: string;
dryRun: boolean;
excludeUnconfirmedUtxos: boolean;
feeLevel: string;
from: any;
isTokenSwap: any;
message: any;
outputs: {
amount: any;
message: any;
toAddress: any;
}[];
payProUrl: any;
txpVersion: number;
};
checkQueueHandleSendLotus(client: any, key: any, addressDonation: any, isWalletLotusDonation: any): void;
checkOrderInSwapQueue(): void;
checkQueueHandleSwap(): void;
checkQueueHandleConversion(): void;
checkQueueHandleMerchantOrder(): void;
_handleSendSuccesMerchantOrder(amountCoinUserSentToServer: any, amountElps: any, txId: any, merchantOrder: MerchantOrder, merchantName: any): Promise<void>;
_getPaymentTypeString(paymentType: PaymentType): string;
_calculateRaipayFee(coin: string, amount: number): number;
_sendSwapNotificationSuccess(configSwap: ConfigSwap, orderInfo: Order, txId: string): void;
_storeDailyLimitUsageForCoinConfig(coinConfig: CoinConfig): Promise<boolean>;
_addExplorerLinkIntoTxIdWithCoin(txId: string, coinCode?: string, message?: string): string;
_handleWhenFundIsNotEnough(pendingReason: string, remaining: number, addressTopupEcash: string): void;
_getConversionOrderInfo(opts: any): Promise<ConversionOrder>;
_getMerchantOrder(opts: any): Promise<MerchantOrder>;
stopHandleSwapQueue(): boolean;
restartHandleSwapQueue(cb: any): any;
checkSwapQueue(cb: any): any;
initCheckQueue(): void;
checkMerchantOrderQueueAndNoti(): void;
checkConversionOrderQueueAndNoti(): void;
checkSwapQueueAndNoti(): void;
restartHandleConversionQueue(cb: any): any;
stopHandleConversionQueue(cb: any): boolean;
restartHandleMerchantQueue(cb: any): any;
stopHandleMerchantQueue(cb: any): boolean;
calculateFee(amount: number, order: Order, rateUsd: number, coinConfig: CoinConfig): Promise<number>;
checkRequirementBeforeQueueExcetue(configSwap: ConfigSwap, orderInfo: Order): Promise<boolean>;
confirmationAndBroadcastRawTx(wallet: any, txp: any, sub: any, cb: any): void;
convertCoinToUSD(amount: any, coin: any, cp: any): void;
convertUSDToSatoshiLotus(amountUSD: any, coin: any, cp: any): void;
checkAmoutToSendLostus(txp: any, cb: any): void;
getCurrentRate(orderInfo: Order, cb: any): void;
_getRatesWithCustomFormat(cb: any): void;
_getRatesCustomFormatWithPromise(): Promise<any>;
createOrder(opts: any, cb: any): Promise<any>;
createConversionOrder(opts: any, cb: any): any;
getListMerchantInfo(): MerchantInfo[];
getListRaipayFee(): RaipayFee[];
createMerchantOrder(opts: any, cb: any): Promise<any>;
_handleEmailNotificationForMerchantOrder(merchantOrder: IMerchantOrder): Promise<unknown>;
_checkIfTxIdFromUserDuplicate(txIdFromUser: any): Promise<boolean>;
_fetchAddressByWalletIdWithPromise(walletId: any, accountToAddress: any): Promise<any>;
checkConversion(addressTopupEcash: any, cb: any): Promise<any>;
checkMerchantConversion(addressTopupEcash: any, coin: any, cb: any): Promise<any>;
getQpayInfo(cb: any): any;
_getWalletAddressByWalletId(walletId: any): Promise<string>;
createBot(opts: any, cb: any): any;
initializeBot(): void;
updateOrder(opts: any, cb: any): Promise<any>;
updateOrderById(opts: any, cb: any): Promise<any>;
updateOrderStatus(opts: any, cb: any): Promise<any>;
updateListCoinConfig(listCoinConfig: any, cb: any): any;
_convertAddressToEtoken(address: any): any;
_convertFromEcashWithPrefixToEtoken(address: any): any;
_convertEtokenAddressToEcashAddress(address: any): any;
broadcastTx(opts: any, cb: any): void;
rejectTx(opts: any, cb: any): void;
getPendingTxs(opts: any, cb: any): Promise<any>;
getTxs(opts: any, cb: any): void;
getNotifications(opts: any, cb: any): void;
_convertAddressFormInputScript(script: string, coin: string, isToken?: boolean): string;
_convertOutputTokenScript(output: Output): {
address: string;
amount: number;
};
_convertOutputScript(coin: string, output: Output): {
address: string;
amount: number;
};
_normalizeTxHistory(walletId: any, txs: any[], dustThreshold: any, bcHeight: any, includeImmatureStatus: any, wallet: any, cb: any): any;
_getBlockchainHeight(coin: any, network: any, cb: any): void;
updateWalletV8Keys(wallet: any): void;
registerWalletV8(wallet: Wallet, cb: any): any;
checkWalletSync(bc: any, wallet: any, simpleRun: any, cb: any): any;
syncWallet(wallet: any, cb: any, skipCheck?: any, count?: any): any;
static _getResultTx(wallet: any, indexedAddresses: any, tx: any, opts: any): {
txid: any;
action: any;
amount: any;
fees: any;
time: any;
addressTo: any;
confirmations: any;
foreignCrafted: any;
outputs: any;
feePerKb: any;
inputs: any;
};
static _addProposalInfo(tx: any, indexedProposals: {
[txid: string]: TxProposal;
}, opts: any): void;
static _addNotesInfo(tx: any, indexedNotes: any): void;
createAdvert(opts: any, cb: any): void;
getAdvert(opts: any, cb: any): void;
getAdverts(opts: any, cb: any): void;
getAdvertsByCountry(opts: any, cb: any): void;
getTestingAdverts(opts: any, cb: any): void;
getAllAdverts(opts: any, cb: any): void;
removeAdvert(opts: any, cb: any): void;
activateAdvert(opts: any, cb: any): void;
deactivateAdvert(opts: any, cb: any): void;
tagLowFeeTxs(wallet: IWallet, txs: any[], cb: any): any;
getlastTxsByChronik(wallet: any, address: any, limit: any): Promise<any>;
updateStatusSlpTxs(inTxs: any, lastTxsChronik: any, wallet: any): any[];
_getBurnAmountToken(inputs: any[], type: any): number;
getTxHistoryV8(bc: any, wallet: any, opts: any, skip: any, limit: any, cb: any): void;
getTxHistory(opts: any, cb: any): any;
scan(opts: any, cb: any): void;
_runScan(wallet: Wallet, step: any, opts: any, cb: any): void;
startScan(opts: any, cb: any): void;
getFiatRate(opts: any, cb: any): void;
getFiatRates(opts: any, cb: any): any;
getConfigSwap(cb: any): Promise<any>;
_handleListCoinConfig(listCoinConfig: CoinConfig[], fiatRates: any, listBalanceTokenConverted: any, balances: any, tokenInfoList: any): void;
_handleListCoinConfigWithNobalance(listCoinConfig: CoinConfig[], fiatRates: any, tokenInfoList: any): void;
getConfigSwapWithNoBalance(cb: any): Promise<any>;
_getNetworkFeeForSwapConfig(listFeePerKb: any, swapConfig: any): void;
getListCoinConfig(cb: any): any;
getConfigSwapWithPromise(): Promise<ConfigSwap>;
getConfigSwapWithNoBalancePromise(): Promise<ConfigSwap>;
getOrderInfo(opts: any, cb: any): Promise<any>;
_getOrderInfo(opts: any): Promise<Order>;
getAllOrderInfo(opts: any, cb: any): Promise<void>;
getAllConversionOrderInfo(opts: any, cb: any): Promise<void>;
getFiatRatesByCoin(opts: any, cb: any): any;
getHistoricalRates(opts: any, cb: any): void;
pushNotificationsSubscribe(opts: any, cb: any): void;
pushNotificationsUnsubscribe(opts: any, cb: any): void;
txConfirmationSubscribe(opts: any, cb: any): void;
txConfirmationUnsubscribe(opts: any, cb: any): void;
getServicesData(cb: any): any;
simplexGetKeys(req: any): {
API: any;
API_KEY: any;
APP_PROVIDER_ID: any;
};
simplexGetQuote(req: any): Promise<any>;
simplexPaymentRequest(req: any): Promise<any>;
simplexGetEvents(req: any): Promise<any>;
wyreGetKeys(req: any): {
API: any;
API_KEY: any;
SECRET_API_KEY: any;
ACCOUNT_ID: any;
};
wyreWalletOrderQuotation(req: any): Promise<any>;
wyreWalletOrderReservation(req: any): Promise<any>;
changellyGetKeys(req: any): {
API: any;
API_KEY: any;
SECRET: any;
};
changellySignRequests(message: any, secret: string): string;
changellyGetCurrencies(req: any): Promise<any>;
changellyGetPairsParams(req: any): Promise<any>;
changellyGetFixRateForAmount(req: any): Promise<any>;
changellyCreateFixTransaction(req: any): Promise<any>;
changellyGetStatus(req: any): Promise<any>;
oneInchGetCredentials(): {
API: any;
referrerAddress: any;
referrerFee: any;
};
oneInchGetReferrerFee(req: any): Promise<any>;
oneInchGetSwap(req: any): Promise<any>;
getPayId(url: string): Promise<any>;
discoverPayId(req: any): Promise<any>;
clearWalletCache(): Promise<boolean>;
addAddressToUser(msgId: any, address: any): void;
_storeUserWatchAddress(msgId: any, address: any): void;
handleSubcribeNewAddress(msgId: any, address: any): void;
startBotNotificationForUser(): Promise<void>;
}
//# sourceMappingURL=server.d.ts.map