import { AbstractControl, ValidationErrors, Validator } from '@angular/forms'; import * as i0 from "@angular/core"; export declare type CoordinateType = 'latitude' | 'longitude' | 'both'; /** * Coordinate validator directive * * Usage: * * * */ export declare class CoordinateValidatorDirective implements Validator { coordinateType: CoordinateType; validate(control: AbstractControl): ValidationErrors | null; /** * Validate latitude value */ private validateLatitude; /** * Validate longitude value */ private validateLongitude; /** * Validate coordinate pair (lat,lng format) */ private validateCoordinatePair; /** * Parse number from string or return null if invalid */ private parseNumber; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * Standalone validator functions for use in reactive forms */ export declare class CoordinateValidators { /** * Latitude validator */ static latitude(control: AbstractControl): ValidationErrors | null; /** * Longitude validator */ static longitude(control: AbstractControl): ValidationErrors | null; /** * Coordinate pair validator */ static coordinates(control: AbstractControl): ValidationErrors | null; /** * Create custom coordinate range validator */ static range(minLat: number, maxLat: number, minLng: number, maxLng: number): (control: AbstractControl) => ValidationErrors | null; /** * Precision validator (number of decimal places) */ static precision(maxDecimalPlaces: number): (control: AbstractControl) => ValidationErrors | null; }