import { ServerAPI } from '@signalk/server-api';
import { VesselContext, VesselInfo, VesselContextExtraction } from './types';
/**
 * Vessel Context Manager - Extracts vessel information from SignalK data
 * and manages vessel context document for Claude AI analysis
 */
export declare class VesselContextManager {
    private app?;
    private contextFilePath;
    private vesselContext?;
    private static readonly VESSEL_DATA_PATHS;
    constructor(app?: ServerAPI, dataDirectory?: string);
    /**
     * Extract vessel information from SignalK data
     */
    extractVesselInfo(): Promise<VesselInfo>;
    /**
     * Extract additional vessel data from other SignalK paths
     */
    private extractAdditionalVesselData;
    /**
     * Convert AIS ship type number to readable string
     */
    private convertAISShipType;
    /**
     * Load vessel context from file
     */
    private loadVesselContext;
    /**
     * Save vessel context to file
     */
    saveVesselContext(): Promise<void>;
    /**
     * Get current vessel context - ensure it's loaded first
     */
    getVesselContext(): Promise<VesselContext | undefined>;
    /**
     * Update vessel context with new information
     */
    updateVesselContext(vesselInfo?: Partial<VesselInfo>, customContext?: string, autoExtracted?: boolean): Promise<VesselContext>;
    /**
     * Refresh vessel information from SignalK
     */
    refreshVesselInfo(): Promise<VesselContext>;
    /**
     * Generate context string for Claude AI
     */
    generateClaudeContext(): string;
    /**
     * Get available vessel data paths for UI
     */
    static getVesselDataPaths(): VesselContextExtraction[];
}
//# sourceMappingURL=vessel-context.d.ts.map