clabe-validator
Version:
Analyze or create a CLABE number for a Mexican bank account (written in functional TypeScript)
43 lines (41 loc) • 1.47 kB
TypeScript
//! clabe-validator v3.0.5 ~~ https://github.com/center-key/clabe-validator ~~ MIT License
export type ClabeBank = {
tag?: string;
name?: string;
};
export type ClabeBanksMap = {
[bankCode: number]: ClabeBank;
};
export type ClabeCityInfo = [code: number, name: string, state?: ClabeMxState];
export type ClabeCitiesMap = {
[cityCode: number]: ClabeCityInfo[];
};
export type ClabeCheck = {
ok: boolean;
formatOk: boolean;
error: string | null;
message: string;
clabe: string | null;
tag: string | null;
bank: string | null;
city: string | null;
multiple: boolean;
total: number;
account: string;
code: {
bank: string;
city: string;
};
checksum: number | null;
};
export type ClabeMxState = 'MX-AGU' | 'MX-BCN' | 'MX-BCS' | 'MX-CAM' | 'MX-CHH' | 'MX-CHP' | 'MX-CMX' | 'MX-COA' | 'MX-COL' | 'MX-DUR' | 'MX-GRO' | 'MX-GUA' | 'MX-HID' | 'MX-JAL' | 'MX-MEX' | 'MX-MIC' | 'MX-MOR' | 'MX-NAY' | 'MX-NLE' | 'MX-OAX' | 'MX-PUE' | 'MX-QUE' | 'MX-ROO' | 'MX-SIN' | 'MX-SLP' | 'MX-SON' | 'MX-TAB' | 'MX-TAM' | 'MX-TLA' | 'MX-VER' | 'MX-YUC' | 'MX-ZAC';
declare const clabe: {
version: string;
computeChecksum(clabeNum17: string): number | null;
validate(clabeNum: string): ClabeCheck;
calculate(bankCode: number, cityCode: number, accountNumber: number): string;
banksMap: ClabeBanksMap;
cities: ClabeCityInfo[];
citiesMap: ClabeCitiesMap;
};
export { clabe };