cpf-cnpj-validator
Version:
Valida, formata e gera strings de CPF ou CNPJ, com suporte ao novo formato alfanumérico da RFB e adapters para joi, yup e zod.
31 lines (28 loc) • 979 B
TypeScript
import { Root, Extension } from 'joi';
/**
* Cria uma extensão joi que adiciona o tipo `document` com os métodos
* `.cpf(message?)` e `.cnpj(message?)`. Ambos aceitam uma mensagem
* customizada opcional que sobrescreve a padrão ('CPF inválido' /
* 'CNPJ inválido') no ValidationError.
*
* @param joi - Instância do joi (versão 17+).
* @returns Extension pronta para passar em `joi.extend`.
*
* @example
* ```ts
* import Joi from 'joi'
* import { joiValidator } from 'cpf-cnpj-validator/joi'
*
* const joi = Joi.extend(joiValidator)
*
* // Mensagem padrão
* const schema = joi.document().cnpj().required()
* await schema.validateAsync('12ABC34501DE35') // '12ABC34501DE35'
*
* // Mensagem customizada (issue #32)
* const custom = joi.document().cpf('CPF precisa ser válido!')
* await custom.validateAsync('01283191283') // throws 'CPF precisa ser válido!'
* ```
*/
declare const joiValidator: (joi: Root) => Extension;
export { joiValidator };