interface GnssStatusCheckerType {
    getGNSSStatus(): Promise<GnssStatusResult>;
    startListening(): Promise<void>;
    stopListening(): Promise<void>;
    getConstantExample(): number;
}
export interface SatelliteInfo {
    svid: number;
    constellationType: number;
    constellationName: string;
    cn0DbHz?: number;
    elevation?: number;
    azimuth?: number;
    hasEphemeris: boolean;
    hasAlmanac: boolean;
    usedInFix: boolean;
    carrierFrequencyHz?: number;
}
export interface GnssStatusResult {
    isGNSSSupported: boolean;
    isDualFrequencySupported: boolean;
    isNavICSupported: boolean;
    satellitesVisible: number;
    satellitesUsedInFix: number;
    averageSignalToNoiseRatio: number;
    supportedConstellations: string[];
    carrierFrequencies: number[];
    frequencyBands: FrequencyBandInfo[];
    satellites: SatelliteInfo[];
    apiLevel?: number;
    supportsCn0?: boolean;
    supportsCarrierFreq?: boolean;
}
export declare const GnssConstellations: {
    readonly UNKNOWN: 0;
    readonly GPS: 1;
    readonly SBAS: 2;
    readonly GLONASS: 3;
    readonly QZSS: 4;
    readonly BEIDOU: 5;
    readonly GALILEO: 6;
    readonly IRNSS: 7;
};
export declare const CarrierFrequencies: {
    readonly GPS_L1: 1575.42;
    readonly GPS_L2: 1227.6;
    readonly GPS_L3: 1381.05;
    readonly GPS_L4: 1379.913;
    readonly GPS_L5: 1176.45;
    readonly GLONASS_L1_MIN: 1598.0625;
    readonly GLONASS_L1_MAX: 1605.375;
    readonly GLONASS_L1_CENTER: 1602;
    readonly GLONASS_L2_MIN: 1242.9375;
    readonly GLONASS_L2_MAX: 1248.625;
    readonly GLONASS_L2_CENTER: 1246;
    readonly GLONASS_L3: 1202.025;
    readonly GLONASS_L5: 1176.45;
    readonly QZSS_L1: 1575.42;
    readonly QZSS_L2: 1227.6;
    readonly QZSS_L5: 1176.45;
    readonly QZSS_LEX: 1278.75;
    readonly GALILEO_E1: 1575.42;
    readonly GALILEO_E5: 1191.795;
    readonly GALILEO_E5a: 1176.45;
    readonly GALILEO_E5b: 1207.14;
    readonly GALILEO_E6: 1278.75;
    readonly BEIDOU_B1: 1561.098;
    readonly BEIDOU_B1_2: 1589.742;
    readonly BEIDOU_B2: 1207.14;
    readonly BEIDOU_B2a: 1176.45;
    readonly BEIDOU_B3: 1268.52;
    readonly NAVIC_L5: 1176.45;
    readonly NAVIC_S: 2492.028;
    readonly SBAS_L1: 1575.42;
    readonly SBAS_L5: 1176.45;
};
export interface FrequencyBandInfo {
    frequency: number;
    constellation: string;
    band: string;
    isDualFrequency: boolean;
}
declare const GnssStatusChecker: any;
/**
 * Get current GNSS status including dual-frequency and NavIC support
 * @returns Promise<GnssStatusResult> Current GNSS status information
 */
export declare function getGNSSStatus(): Promise<GnssStatusResult>;
/**
 * Start listening for GNSS status updates
 * This will begin monitoring satellite visibility and measurements
 * @returns Promise<void>
 */
export declare function startListening(): Promise<void>;
/**
 * Stop listening for GNSS status updates
 * @returns Promise<void>
 */
export declare function stopListening(): Promise<void>;
/**
 * Helper function to check if NavIC is supported based on constellation data
 * @param supportedConstellations Array of supported constellation names
 * @returns boolean True if NavIC (IRNSS) is supported
 */
export declare function isNavICSupported(supportedConstellations: string[]): boolean;
/**
 * Identify the frequency band for a given frequency in MHz
 * @param frequencyMHz Frequency in MHz
 * @param tolerance Tolerance in MHz (default: 1.0)
 * @returns FrequencyBandInfo object with band identification
 */
export declare function identifyFrequencyBand(frequencyMHz: number, tolerance?: number): FrequencyBandInfo;
/**
 * Enhanced dual-frequency detection based on comprehensive frequency mapping
 * @param carrierFrequencies Array of detected carrier frequencies
 * @returns boolean True if any dual-frequency bands are detected
 */
export declare function isDualFrequencySupported(carrierFrequencies: number[]): boolean;
/**
 * Get frequency band information for all detected frequencies
 * @param carrierFrequencies Array of detected carrier frequencies
 * @returns Array of FrequencyBandInfo objects
 */
export declare function getFrequencyBandInfo(carrierFrequencies: number[]): FrequencyBandInfo[];
/**
 * Helper function to get satellites by constellation
 * @param satellites Array of satellite information
 * @param constellationType Constellation type to filter by
 * @returns SatelliteInfo[] Array of satellites for the specified constellation
 */
export declare function getSatellitesByConstellation(satellites: SatelliteInfo[], constellationType: number): SatelliteInfo[];
/**
 * Helper function to get satellites used in fix
 * @param satellites Array of satellite information
 * @returns SatelliteInfo[] Array of satellites used in position fix
 */
export declare function getSatellitesUsedInFix(satellites: SatelliteInfo[]): SatelliteInfo[];
/**
 * Helper function to get satellites with good signal strength
 * @param satellites Array of satellite information
 * @param minCn0 Minimum C/N0 threshold in dB-Hz (default: 20)
 * @returns SatelliteInfo[] Array of satellites with good signal strength
 */
export declare function getSatellitesWithGoodSignal(satellites: SatelliteInfo[], minCn0?: number): SatelliteInfo[];
/**
 * Helper function to get satellite statistics
 * @param satellites Array of satellite information
 * @returns Object with satellite statistics
 */
export declare function getSatelliteStatistics(satellites: SatelliteInfo[]): {
    total: number;
    usedInFix: number;
    withEphemeris: number;
    withAlmanac: number;
    withGoodSignal: number;
    byConstellation: Record<string, number>;
    averageSignalStrength: number;
    strongestSignal: number;
    weakestSignal: number;
};
export default GnssStatusChecker;
export type { GnssStatusCheckerType };
//# sourceMappingURL=index.d.ts.map