import { Dataset, DataArray, type CoordinateValue } from "@dclimate/jaxray"; import { DatasetMetadata, DatasetObject, GeoSelectionOptions, PointQueryOptions } from "./types.js"; type TimeRangeInput = { start: CoordinateValue; end: CoordinateValue; }; export declare class GeoTemporalDataset { private readonly dataset; private readonly metadata; constructor(dataset: Dataset, metadata: DatasetMetadata); get info(): DatasetMetadata; get data(): Dataset; get variables(): string[]; get coords(): Record; toObject(): DatasetObject; toJSON(): string; toRecords(varName: string, options?: { precision?: number; }): Promise>>; getVariable(name: string): DataArray; isEmpty(): boolean; ensureHasData(): void; select(options: GeoSelectionOptions): Promise; point(latitude: number, longitude: number, options?: PointQueryOptions): Promise; timeRange(range: TimeRangeInput, dimension?: string): Promise; private inferCoordinateKey; private buildSelectionOptions; private wrapDataset; /** * Select data at specific point coordinates * * @param pointLats - Array of latitude coordinates * @param pointLons - Array of longitude coordinates * @param options - Configuration options (epsgCrs, snapToGrid, tolerance, latitudeKey, longitudeKey) * @returns A new Dataset with data at the specified points */ points(pointLats: number[], pointLons: number[], options?: { epsgCrs?: number; snapToGrid?: boolean; tolerance?: number; latitudeKey?: string; longitudeKey?: string; }): Promise; /** * Select data within a circular region * * @param centerLat - Latitude of circle center * @param centerLon - Longitude of circle center * @param radiusKm - Radius in kilometers * @param options - Configuration options (latitudeKey, longitudeKey) * @returns A new Dataset with data within the circular region */ circle(centerLat: number, centerLon: number, radiusKm: number, options?: { latitudeKey?: string; longitudeKey?: string; }): Promise; /** * Select data within a rectangular region * * @param minLat - Southern latitude boundary * @param minLon - Western longitude boundary * @param maxLat - Northern latitude boundary * @param maxLon - Eastern longitude boundary * @param options - Configuration options (latitudeKey, longitudeKey) * @returns A new Dataset with data within the rectangular region */ rectangle(minLat: number, minLon: number, maxLat: number, maxLon: number, options?: { latitudeKey?: string; longitudeKey?: string; }): Promise; } export {}; //# sourceMappingURL=geotemporal-dataset.d.ts.map