import { VaultService, PlainObject, Vault } from "../vault"; import { Buffer } from "buffer/"; import { Buffer as NodeBuffer } from "buffer"; import { PrivKeySecp256k1, PubKeyBitcoinCompatible, PubKeySecp256k1 } from "@keplr-wallet/crypto"; import { Psbt, Network as BitcoinNetwork } from "bitcoinjs-lib"; import { SignPsbtOptions, ModularChainInfo } from "@keplr-wallet/types"; export declare class KeyRingMnemonicService { protected readonly vaultService: VaultService; constructor(vaultService: VaultService); init(): Promise; supportedKeyRingType(): string; createKeyRingVault(mnemonic: string, bip44Path: { account: number; change: number; addressIndex: number; }): Promise<{ insensitive: PlainObject; sensitive: PlainObject; }>; getPubKey(vault: Vault, purpose: number, coinType: number): PubKeySecp256k1; getPubKeyBitcoin(vault: Vault, purpose: number, coinType: number, network: BitcoinNetwork): PubKeyBitcoinCompatible; sign(vault: Vault, purpose: number, coinType: number, data: Uint8Array, digestMethod: "sha256" | "keccak256" | "hash256" | "noop"): { readonly r: Uint8Array; readonly s: Uint8Array; readonly v: number | null; }; signPsbt(vault: Vault, purpose: number, coinType: number, psbt: Psbt, inputsToSign: { index: number; address: string; hdPath?: string; tapLeafHashesToSign?: NodeBuffer[]; sighashTypes?: number[]; disableTweakSigner?: boolean; useTweakedSigner?: boolean; }[], network: BitcoinNetwork, _modularChainInfo: ModularChainInfo, options?: SignPsbtOptions): Promise; private isTaprootInput; private validateHdPath; protected getPrivKey(vault: Vault, purpose: number, coinType: number): PrivKeySecp256k1; protected getBIP44PathFromVault(vault: Vault): { account: number; change: number; addressIndex: number; }; protected getMasterSeedFromVault(vault: Vault): Buffer; }