import { type RequestOptions } from '../lib/api.client.js'; export type GiovanniVariable = { dataFieldId: string; dataProductShortName: string; dataProductVersion: string; dataFieldShortName: string; dataFieldAccessName: string; dataFieldLongName: string; dataProductLongName: string; dataProductTimeInterval: string; dataProductWest: number; dataProductSouth: number; dataProductEast: number; dataProductNorth: number; dataProductSpatialResolution: string; dataProductBeginDateTime: string; dataProductEndDateTime: string; dataFieldKeywords: string[]; dataFieldUnits: string; dataProductDescriptionUrl: string; dataFieldDescriptionUrl: string; dataProductInstrumentShortName: string; }; export type GiovanniFacetValue = { name: string; count: number; }; export type GiovanniFacet = { category: string; values: GiovanniFacetValue[]; }; declare class GiovanniApi { #private; /** * Fetches the list of configured variables from the Giovanni API. * Giovanni does not support all variables, so this endpoint provides a list of variables that are supported for subsetting. */ getConfiguredVariables(options?: RequestOptions): Promise; getShapeFiles(options?: RequestOptions): Promise<{ shapefileID: string; title: string; sourceName: string; sourceURL: string; shapes: { name: string | number | null | undefined; shapeID: string; shapefileID: string; }[]; }[]>; getGeoJson(shapeFileId: string, options?: RequestOptions): Promise; /** * Searches the Giovanni variable catalog via the on-prem Solr endpoint. */ searchVariables(params?: { q?: string; filter?: Record; variableEntryIds?: string[]; rows?: string; }, options?: RequestOptions): Promise<{ count: number; total: number; variables: GiovanniVariable[]; facets: GiovanniFacet[]; }>; /** * Fetches a single variable by its entry ID from the Giovanni Solr catalog. * Returns null if not found. */ getVariable(variableEntryId: string, options?: RequestOptions): Promise; /** * Fetches all active keyword terms from the Giovanni Solr catalog. * Returns each keyword as { id: string }, matching the SearchKeywordsResponse * shape expected by the variable-keyword-search component. */ getSearchKeywords(options?: RequestOptions): Promise>; } declare const giovanniApi: GiovanniApi; export default giovanniApi;