/**
 * GPS Health Check for marine navigation systems
 */
import { BaseHealthCheck, HealthCheckResult, HealthCheckConfig, OperationalContextType, MarineEnvironmentStatus } from '../index';
/**
 * GPS data interface for health checking
 */
export interface GPSData {
    latitude: number;
    longitude: number;
    altitude: number;
    satelliteCount: number;
    hdop: number;
    vdop: number;
    speed: number;
    course: number;
    timestamp: Date;
    fix: 'none' | '2d' | '3d';
}
/**
 * GPS Health Check implementation
 */
export declare class GPSHealthCheck extends BaseHealthCheck {
    private gpsDataProvider;
    private lastKnownPosition?;
    constructor(config: HealthCheckConfig, gpsDataProvider: () => Promise<GPSData>);
    protected performCheck(operationalContext: OperationalContextType, marineEnvironment?: MarineEnvironmentStatus): Promise<HealthCheckResult>;
    /**
     * Calculate distance between two GPS coordinates using Haversine formula
     */
    private calculateDistance;
    private toRadians;
}
/**
 * Factory function to create GPS health check with standard marine configuration
 */
export declare function createGPSHealthCheck(gpsDataProvider: () => Promise<GPSData>, customConfig?: Partial<HealthCheckConfig>): GPSHealthCheck;
//# sourceMappingURL=GPSHealthCheck.d.ts.map