import type { WalletProperties } from './types.js';
export declare const ERROR_PASSWORD_MISMATCH = "[DynamicWaasWalletClient]: Password does not match the password used for existing wallets. All wallets must use the same password for encrypted backups.";
export declare const ERROR_PASSWORD_REQUIRED_FOR_ENCRYPTED_WALLET = "[DynamicWaasWalletClient]: Password is required for refresh/reshare of a password-encrypted wallet.";
export declare const ERROR_EXISTING_PASSWORD_REQUIRED = "[DynamicWaasWalletClient]: Existing password is required to update the password for encrypted wallets.";
export declare const ERROR_WALLETS_ALREADY_ENCRYPTED = "[DynamicWaasWalletClient]: Cannot set password: wallets are already password-encrypted. Use updatePassword instead.";
/**
 * Checks if password consistency validation is needed.
 * Returns false if no password provided or password is the environmentId default.
 */
export declare function shouldValidatePassword(password: string | undefined, environmentId: string): boolean;
/**
 * Finds the first password-encrypted wallet in the walletMap.
 * Returns [normalizedAddress, walletProperties] or undefined.
 */
export declare function findPasswordEncryptedWallet(walletMap: Record<string, WalletProperties>): [string, WalletProperties] | undefined;
/**
 * Extracts the first encrypted key share credential from cached encrypted data.
 * Returns the base64-encoded encrypted credential string, or undefined if none found.
 */
export declare function extractFirstEncryptedCredential(encryptedData: string): string | undefined;
/**
 * Checks if a wallet uses password-based encryption for its key share backups.
 */
export declare function isWalletPasswordEncrypted(wallet: WalletProperties | undefined): boolean;
/**
 * Checks if an error indicates a password mismatch (wrong password during decryption).
 */
export declare function isPasswordMismatchError(error: unknown): boolean;
//# sourceMappingURL=passwordValidation.d.ts.map