import { Secret, EncryptedState } from '../../../Secret'; import { Seed } from '../SeedWallet/Seed'; /** Supported mnemonic languages. */ export type PhraseLanguage = 'czech' | 'english' | 'french' | 'italian' | 'japanese' | 'korean' | 'portuguese' | 'simplifiedChinese' | 'spanish' | 'traditionalChinese'; /** Valid mnemonic word counts. More words = stronger security. */ export type PhraseNumOfWords = 12 | 15 | 18 | 21 | 24; /** * A mnemonic phrase (e.g. 12 or 24 words). Supports encryption and multi-language mnemonics. * * @example * ```ts * const phrase = Phrase.new('english', 12); * const phrase = new Phrase('abandon abandon ... about'); * ``` */ export declare class Phrase extends Secret { /** * @param phrase - A mnemonic string or {@link EncryptedState}. * @throws {@link InvalidPhraseError} if the mnemonic is invalid. */ constructor(phrase: string | EncryptedState); private get phrase(); /** The mnemonic as raw bytes. */ get raw(): Uint8Array; /** The mnemonic as hex. */ get hex(): string; /** The individual words of the mnemonic phrase. */ get words(): string[]; /** Converts this mnemonic to a {@link Seed}. */ getSeed(): Seed; /** * Generates a new random mnemonic phrase. * * @param language - Wordlist language. Defaults to `'english'`. * @param numberOfWords - Number of words. Defaults to `12`. */ static new(language?: PhraseLanguage, numberOfWords?: PhraseNumOfWords): Phrase; /** * Checks whether a string is a valid mnemonic phrase (any supported language). * * @param phrase - The string to validate. */ static isValid(phrase: string): boolean; private static validate; }