export declare function generateTOTPSecret(): string;
export declare function generateTOTPUri(secret: string, email: string, issuer?: string): string;
export declare function verifyTOTP(token: string, secret: string, window?: number): boolean;
/**
 * Normalize a user-entered backup code: strip whitespace/dashes and lowercase
 * so "ABCD-1234" and "abcd 1234" both match the stored "abcd1234".
 */
export declare function normalizeBackupCode(input: string): string;
/**
 * Find the index of the stored backup code matching the submitted value, or -1.
 * Compares against every stored code in constant time so timing can't reveal
 * which/whether a code matched. Callers must treat a match as single-use and
 * remove the code from storage.
 */
export declare function findBackupCodeMatch(codes: string[], submitted: string): number;
export declare function generateBackupCodes(count?: number): string[];
//# sourceMappingURL=totp.d.ts.map