nigerian-mobile-validator
Version:
The most rigorous, up-to-date library for validating Nigerian mobile numbers. Fully NCC-compliant, and security-focused, with enterprise-grade features to prevent the business risks of validation failures in regulated industries.
78 lines (77 loc) • 2.13 kB
TypeScript
import { ILogger } from './i-logger';
/**
* Factory for creating loggers
*/
export declare class LoggerFactory {
/**
* Create a logger instance
*
* @param options Logger options
* @returns Logger instance
*/
static createLogger(options?: {
type?: 'console' | 'winston' | 'pino' | 'silent';
instance?: any;
prefix?: string;
}): ILogger;
/**
* Default logger implementation that logs to console
*/
private static readonly ConsoleLogger;
/**
* Silent logger that doesn't log anything
*/
private static readonly SilentLogger;
/**
* Winston adapter for the Nigerian Mobile Validator
*
* This class adapts a Winston logger to the ILogger interface.
*
* Example usage:
* ```
* import winston from 'winston';
* import { WinstonAdapter } from 'nigerian-mobile-validator';
*
* const winstonLogger = winston.createLogger({
* level: 'info',
* format: winston.format.json(),
* transports: [new winston.transports.Console()]
* });
*
* const validator = new NigerianMobileNumberValidator({
* logger: new WinstonAdapter(winstonLogger)
* });
* ```
*/
private static readonly WinstonAdapter;
/**
* Pino adapter for the Nigerian Mobile Validator
*
* This class adapts a Pino logger to the ILogger interface.
*
* Example usage:
* ```
* import pino from 'pino';
* import { PinoAdapter } from 'nigerian-mobile-validator';
*
* const pinoLogger = pino();
*
* const validator = new NigerianMobileNumberValidator({
* logger: new PinoAdapter(pinoLogger)
* });
* ```
*/
private static readonly PinoAdapter;
}
/**
* Set the default logger for the library.
*
* @param logger Logger instance
*/
export declare function setDefaultLogger(logger: ILogger): void;
/**
* Get the default logger for the library. Unless explicitly set, this is the silent logger.
*
* @returns Default logger instance
*/
export declare function getDefaultLogger(): ILogger;