import { LtpValidation } from './ltp'; export interface IValidation { validateAddress(network: string, address: string): boolean; validateUri(addressUri: string): boolean; } const validation: { [chain: string]: IValidation } = { LTP: new LtpValidation() }; export class ValidationProxy { get(chain) { const normalizedChain = chain.toUpperCase(); return validation[normalizedChain]; } validateAddress(chain, network, address) { return this.get(chain).validateAddress(network, address); } validateUri(chain, addressUri) { return this.get(chain).validateUri(addressUri); } } export default new ValidationProxy();