import { IRouter } from 'express';
import { WithSecurityStrategy } from '../../security';
import { SignalKMessageHub } from '../../app';
import { radar } from '@signalk/server-api';
interface RadarApplication extends WithSecurityStrategy, SignalKMessageHub, IRouter {
}
export declare class RadarApi {
    private app;
    private radarProviders;
    private defaultProviderId?;
    constructor(app: RadarApplication);
    start(): Promise<void>;
    /**
     * Register plugin as radar provider.
     */
    register(pluginId: string, provider: radar.RadarProvider): void;
    /**
     * Unregister plugin as radar provider.
     */
    unRegister(pluginId: string): void;
    /**
     * Get list of all radars from all providers.
     */
    getRadars(): Promise<radar.RadarInfo[]>;
    /**
     * Get info for a specific radar by ID.
     */
    getRadarInfo(radarId: string): Promise<radar.RadarInfo | null>;
    private updateAllowed;
    /**
     * Find the provider that owns a specific radar.
     */
    private findProviderForRadar;
    private initApiEndpoints;
}
export {};
//# sourceMappingURL=index.d.ts.map