import { providers } from 'ethers'; import { HDNode } from 'ethers/lib/utils'; import { ISmartWalletFactory__factory } from '@rsksmart/rif-relay-contracts'; declare type Account = { eoaAccount: string; swAccounts: string[]; }; declare const wordlists: { readonly cz: { getWord(index: number): string; getWordIndex(word: string): number; readonly locale: string; split(mnemonic: string): string[]; join(words: string[]): string; }; readonly en: { getWord(index: number): string; getWordIndex(word: string): number; readonly locale: string; split(mnemonic: string): string[]; join(words: string[]): string; }; readonly es: { getWord(index: number): string; getWordIndex(word: string): number; readonly locale: string; split(mnemonic: string): string[]; join(words: string[]): string; }; readonly fr: { getWord(index: number): string; getWordIndex(word: string): number; readonly locale: string; split(mnemonic: string): string[]; join(words: string[]): string; }; readonly it: { getWord(index: number): string; getWordIndex(word: string): number; readonly locale: string; split(mnemonic: string): string[]; join(words: string[]): string; }; readonly ja: { getWord(index: number): string; getWordIndex(word: string): number; split(mnemonic: string): string[]; join(words: string[]): string; readonly locale: string; }; readonly ko: { getWord(index: number): string; getWordIndex(word: string): number; readonly locale: string; split(mnemonic: string): string[]; join(words: string[]): string; }; readonly zh: { getWord(index: number): string; getWordIndex(word: string): number; split(mnemonic: string): string[]; readonly locale: string; join(words: string[]): string; }; readonly zh_cn: { getWord(index: number): string; getWordIndex(word: string): number; split(mnemonic: string): string[]; readonly locale: string; join(words: string[]): string; }; readonly zh_tw: { getWord(index: number): string; getWordIndex(word: string): number; split(mnemonic: string): string[]; readonly locale: string; join(words: string[]): string; }; }; declare type Locale = keyof typeof wordlists; declare type OptionalConfig = Partial<{ eoaGap: number; sWalletGap: number; searchBalance: boolean; searchNonce: boolean; searchTokenBalance: boolean; searchDeployEvents: boolean; network: string; mnemonicLanguage: Locale; reconnectionAttempts: number; tokens: string[]; logic: string; logicParamsHash: string; recoverer: string; }>; declare type RequiredConfig = { factory: string; }; declare type Config = RequiredConfig & Required; declare const DEFAULT_DISCOVERY_CONFIG: Required; declare const DEFAULT_DERIVATION_PATH_PURPOSE = 44; declare const RSK_COIN_TYPE = 137; declare const RSK_TESTNET_COIN_TYPE = 37310; declare const DEFAULT_DERIVATION_PATH_CHANGE = 0; declare type Setup = { config: Config; rootNode?: HDNode; bytecodeHash: string; smartWalletFactory: ISmartWalletFactory__factory; provider: providers.Provider; }; declare const setupDiscovery: (configOverride: RequiredConfig & OptionalConfig, mnemonic?: string, password?: string) => Promise; declare const constructDerivationPath: (addressIdx: number, hardenedIdx: number, coinType?: number, isTestNet?: boolean, purpose?: number, change?: 0 | 1) => `m/${string}`; declare const getSWAddress: (config: Config, ownerEOA: string, walletIndex: number, bytecodeHash: string) => string; declare const checkHasActivity: (accountAddr: string, config: Config, provider: providers.Provider) => Promise; declare const findHardenedNodeActivity: ({ config, rootNode, provider, bytecodeHash }: Required, hardenedAccIdx: number) => Promise; declare const findSWActivity: (eoaAddr: string, config: Config, bytecodeHash: string, provider: providers.Provider) => Promise; export type { Config, Account, Setup, OptionalConfig }; export { getSWAddress, findSWActivity, findHardenedNodeActivity, constructDerivationPath, setupDiscovery, checkHasActivity, }; export { DEFAULT_DISCOVERY_CONFIG, DEFAULT_DERIVATION_PATH_PURPOSE, RSK_COIN_TYPE, RSK_TESTNET_COIN_TYPE, DEFAULT_DERIVATION_PATH_CHANGE, };