declare function zip(a: A[], b: B[]): [A, B][]; declare function or(...sets: Set[]): Set; declare function and(...sets: Set[]): Set; declare function product(...sets: Set[]): Set; declare const DATE: Record; declare function formatDuration(dur: number): string; export declare const alphabet: Record>; export declare const utils: { zip: typeof zip; or: typeof or; and: typeof and; product: typeof product; cardinalityBits: typeof cardinalityBits; formatDuration: typeof formatDuration; DATE: typeof DATE; }; /** * Check if password is correct for rules in design rationale. */ export declare function checkPassword(pwd: string): boolean; declare function cardinalityBits(cardinality: bigint): number; export type PassEstimate = { score: string; guesses: { online_throttling: string; online: string; slow: string; fast: string; }; costs: { luks: number; filevault2: number; macos: number; pbkdf2: number; }; }; type ApplyResult = { password: string; entropyLeft: bigint; }; declare class Mask { private chars; private sets; private lengths; readonly cardinality: bigint; readonly entropy: number; readonly length: number; constructor(mask: string); apply(entropy: Uint8Array): ApplyResult; inverse({ password, entropyLeft }: ApplyResult): Uint8Array; estimate(): PassEstimate; } export declare const mask: (mask: string) => Mask; export type MaskType = { [K in keyof Mask]: Mask[K]; }; export declare const secureMask: MaskType; export {}; //# sourceMappingURL=password.d.ts.map