import { ChainsService } from "../chains"; import { VaultService } from "../vault"; import { KeyRingService } from "../keyring"; import { InteractionService } from "../interaction"; import { PermissionService } from "../permission"; import { BitcoinSignMessageType, Network, SupportedPaymentType, ChainType, SignPsbtOptions } from "@keplr-wallet/types"; import { Env } from "@keplr-wallet/router"; import { BackgroundTxService } from "../tx"; import { AnalyticsService } from "../analytics"; import { KVStore } from "@keplr-wallet/common"; export declare class KeyRingBitcoinService { protected readonly kvStore: KVStore; protected readonly chainsService: ChainsService; protected readonly vaultService: VaultService; protected readonly keyRingService: KeyRingService; protected readonly interactionService: InteractionService; protected readonly permissionService: PermissionService; protected readonly txService: BackgroundTxService; protected readonly analyticsService: AnalyticsService; protected preferredBitcoinPaymentType: SupportedPaymentType | undefined; constructor(kvStore: KVStore, chainsService: ChainsService, vaultService: VaultService, keyRingService: KeyRingService, interactionService: InteractionService, permissionService: PermissionService, txService: BackgroundTxService, analyticsService: AnalyticsService); init(): Promise; getBitcoinKey(vaultId: string, chainId: string): Promise<{ name: string; pubKey: Uint8Array; address: string; paymentType: SupportedPaymentType; isNanoLedger: boolean; masterFingerprintHex?: string; derivationPath?: string; }>; getBitcoinKeySelected(chainId: string): Promise<{ name: string; pubKey: Uint8Array; address: string; paymentType: SupportedPaymentType; isNanoLedger: boolean; masterFingerprintHex?: string; derivationPath?: string; }>; getBitcoinKeyParams(vaultId: string, chainId: string): Promise<{ pubKey: Uint8Array; address: string; paymentType: SupportedPaymentType; masterFingerprintHex?: string; derivationPath?: string; }>; signPsbtSelected(env: Env, origin: string, chainId: string, psbtHex: string, options?: SignPsbtOptions): Promise; signPsbtsSelected(env: Env, origin: string, chainId: string, psbtsHexes: string[], options?: SignPsbtOptions): Promise; signPsbts(env: Env, origin: string, vaultId: string, chainId: string, psbtsHexes: string[], options?: SignPsbtOptions): Promise; signPsbt(env: Env, origin: string, vaultId: string, chainId: string, psbtHex: string, options?: SignPsbtOptions): Promise; signMessageSelected(env: Env, origin: string, chainId: string, message: string, signType?: BitcoinSignMessageType): Promise; signMessage(env: Env, origin: string, vaultId: string, chainId: string, message: string, signType?: BitcoinSignMessageType): Promise; getSupportedPaymentTypes(): SupportedPaymentType[]; private getNetworkConfig; private parseChainId; getCurrentChainId(origin: string, chainId?: string): string | undefined; forceGetCurrentChainId(origin: string, chainId?: string): string; getNewCurrentChainIdFromNetwork(network: Network): string; getNewCurrentChainIdFromChainType(chainType: ChainType): string; getPreferredBitcoinPaymentType(): SupportedPaymentType; setPreferredBitcoinPaymentType(paymentType: SupportedPaymentType): void; getAccounts(origin: string): Promise; requestAccounts(origin: string): Promise; disconnect(origin: string): Promise; getNetwork(origin: string): Network; switchNetwork(env: Env, origin: string, network: Network): Promise; getChain(origin: string): { enum: ChainType; name: string; network: Network; }; switchChain(env: Env, origin: string, chainType: ChainType): Promise; getPublicKey(origin: string): Promise; getBalance(origin: string): Promise<{ confirmed: number; unconfirmed: number; total: number; }>; getInscriptions(origin: string, offset?: number, limit?: number): Promise<{ total: number; list: import("@keplr-wallet/types").Inscription[]; }>; sendBitcoin(env: Env, origin: string, toAddress: string, amount: number): Promise; pushTx(origin: string, rawTxHex: string): Promise; pushPsbt(origin: string, psbtHex: string): Promise; }