/** ISO 7812 / Luhn. Used by payment cards, IMEIs and a few national ids. */ export declare function isValidLuhn(digits: string): boolean; /** * The published length of an IBAN per country. This is not decoration: the * checksum alone accepts a truncated IBAN often enough to matter, and the * length is what stops the scanner from swallowing the next number on the line. */ export declare const IBAN_LENGTHS: Readonly>; /** * ISO 13616 check: move the first four characters to the end, replace every * letter by its position in the alphabet plus 9, and the result must be * congruent to 1 mod 97. * * The remainder is taken nine digits at a time. The whole number would overflow * a double long before a 34-character IBAN is finished, and doing it in BigInt * would cost an allocation per candidate for arithmetic that fits in an int. */ export declare function isValidIban(candidate: string): boolean; /** * ISO 7064 MOD 11,10 — the check digit of the German Steuerliche * Identifikationsnummer (IdNr). */ export declare function iso7064Mod1110(digits: string): number; /** * German tax id: eleven digits, and two rules that are easy to miss. * * The check digit is only half of it. The Bundeszentralamt für Steuern also * guarantees a *repetition* rule over the first ten digits — exactly one digit * occurs twice or three times and the rest at most once — which is what makes * a plain counter or a padded phone number fail here even when its check digit * happens to land right. */ export declare function isValidGermanTaxId(digits: string): boolean; //# sourceMappingURL=checksums.d.ts.map