import { Context } from '@signalk/server-api';
import { ZonedDateTime } from '@js-joda/core';
import { SpatialFilter } from './spatial-queries';
/**
 * Get available SignalK contexts that have data within a specific time range.
 * Reads context=* dirs under tier=raw/, then filters by checking if any
 * year=YYYY/day=DDD subdirectories fall within the from/to range.
 */
export declare function getAvailableContextsForTimeRange(dataDir: string, from: ZonedDateTime, to: ZonedDateTime): Promise<Context[]>;
/**
 * Find all vessel contexts with position data inside a spatial filter and time range.
 * Accepts bbox ("west,south,east,north") or radius ("lon,lat,meters") via SpatialFilter.
 * Uses a single DuckDB query with hive_partitioning on navigation__position files only.
 */
export declare function getContextsInSpatialFilter(dataDir: string, from: ZonedDateTime, to: ZonedDateTime, filter: SpatialFilter): Promise<Context[]>;
/**
 * Clear the context list cache (useful for testing or when data structure changes)
 */
export declare function clearFileListCache(): void;
//# sourceMappingURL=context-discovery.d.ts.map