@montarist/nestpay-api-v2
Version:
Unofficial comprehensive TypeScript API client for Nestpay payment gateway with 3D Secure support
84 lines • 2.65 kB
TypeScript
import { BankProvider, Currency, InstallmentType } from '../types/enums';
import { CreditCard, NestpayConfig, ProviderEndpoints } from '../types/interfaces';
/**
* Validation result interface
*/
interface ValidationResult {
isValid: boolean;
errors: string[];
}
/**
* Static utility class for input validation
*/
export declare class Validators {
/**
* Validate credit card information using Luhn algorithm
* @param card Credit card information
* @returns Validation result
*/
static validateCreditCard(card: CreditCard): ValidationResult;
/**
* Validate transaction amount
* @param amount Transaction amount
* @param currency Currency code
* @returns Validation result
*/
static validateAmount(amount: number, currency: Currency): ValidationResult;
/**
* Validate order ID
* @param orderId Order ID
* @returns Validation result
*/
static validateOrderId(orderId: string): ValidationResult;
/**
* Validate URL
* @param url URL to validate
* @param fieldName Field name for error messages
* @returns Validation result
*/
static validateUrl(url: string, fieldName: string): ValidationResult;
/**
* Validate email address
* @param email Email address
* @returns Validation result
*/
static validateEmail(email: string): ValidationResult;
/**
* Validate phone number
* @param phone Phone number
* @returns Validation result
*/
static validatePhone(phone: string): ValidationResult;
/**
* Validate installment
* @param installment Installment type
* @returns Validation result
*/
static validateInstallment(installment?: InstallmentType): ValidationResult;
/**
* Validate bank provider
* @param provider Bank provider
* @returns Validation result
*/
static validateProvider(provider: BankProvider): ValidationResult;
/**
* Validate provider endpoints
* @param endpoints Provider endpoints
* @returns Validation result
*/
static validateProviderEndpoints(endpoints: ProviderEndpoints): ValidationResult;
/**
* Validate complete Nestpay configuration
* @param config Nestpay configuration
* @returns Validation result
*/
static validateConfig(config: NestpayConfig): ValidationResult;
/**
* Luhn algorithm implementation for credit card validation
* @param cardNumber Credit card number
* @returns True if valid according to Luhn algorithm
*/
private static luhnCheck;
}
export {};
//# sourceMappingURL=validators.d.ts.map