/** * @fileoverview openchargemap_find_stations — find EV charging stations from the global Open * Charge Map registry near a point or within a bounding box, with connector/power/network/usage/ * status filters. Coordinate-native; place names geocode via openstreetmap_geocode first. * @module mcp-server/tools/definitions/find-stations.tool */ import { z } from '@cyanheads/mcp-ts-core'; import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors'; export declare const findStations: import("@cyanheads/mcp-ts-core").ToolDefinition; longitude: z.ZodOptional; distance: z.ZodDefault; distanceUnit: z.ZodDefault>; boundingbox: z.ZodOptional>; countrycode: z.ZodOptional; connectiontypeid: z.ZodOptional]>>; minpowerkw: z.ZodOptional; operatorid: z.ZodOptional]>>; usagetypeid: z.ZodOptional]>>; levelid: z.ZodOptional]>>; statustypeid: z.ZodOptional]>>; minchargepoints: z.ZodOptional; maxresults: z.ZodDefault; offset: z.ZodDefault; }, z.core.$strip>, z.ZodObject<{ stations: z.ZodArray; town: z.ZodOptional; stateOrProvince: z.ZodOptional; postcode: z.ZodOptional; country: z.ZodOptional; countryCode: z.ZodOptional; latitude: z.ZodNumber; longitude: z.ZodNumber; accessComments: z.ZodOptional; }, z.core.$strip>; distance: z.ZodOptional; distanceUnit: z.ZodOptional>; operator: z.ZodOptional; operatorId: z.ZodOptional; usageType: z.ZodOptional; isPayAtLocation: z.ZodOptional; isMembershipRequired: z.ZodOptional; isAccessKeyRequired: z.ZodOptional; numberOfPoints: z.ZodOptional; status: z.ZodOptional; statusTypeId: z.ZodOptional; isOperational: z.ZodOptional; dateLastVerified: z.ZodOptional>; isRecentlyVerified: z.ZodOptional; connections: z.ZodArray; connectionType: z.ZodOptional; level: z.ZodOptional; levelId: z.ZodOptional; powerKW: z.ZodOptional>; currentType: z.ZodOptional; amps: z.ZodOptional>; voltage: z.ZodOptional>; quantity: z.ZodOptional>; }, z.core.$strip>>; dataProvider: z.ZodOptional; }, z.core.$strip>>; searchSummary: z.ZodString; attribution: z.ZodString; }, z.core.$strip>, readonly [{ readonly reason: "invalid_location"; readonly code: JsonRpcErrorCode.InvalidParams; readonly when: "No search area was provided; or only one half of a center arrived; or a boundingbox arrived alongside a latitude or a longitude."; readonly recovery: "Provide either latitude + longitude (+ optional distance), or a boundingbox — exactly one, with no leftover coordinate beside the box. Geocode a place name with openstreetmap_geocode to obtain coordinates."; }, { readonly reason: "no_stations"; readonly code: JsonRpcErrorCode.NotFound; readonly when: "Open Charge Map holds no station for the search area and filters — either it returned nothing at all, or every station it returned was ruled out and there were no further candidates."; readonly recovery: "Widen the distance/bounding box, relax filters (drop minpowerkw, minchargepoints, or connectiontypeid), or remove countrycode. Verify the coordinates are on land in a covered region."; }, { readonly reason: "upstream_unavailable"; readonly code: JsonRpcErrorCode.ServiceUnavailable; readonly retryable: true; readonly when: "OCM returned a non-2xx response or timed out."; readonly recovery: "Retry after a short delay. If it persists, OCM may be rate-limiting or down — reduce call frequency."; readonly thrownBy: "service"; }, { readonly reason: "auth_failed"; readonly code: JsonRpcErrorCode.Unauthorized; readonly when: "OCM returned HTTP 401 or 403 — the API key is missing or invalid."; readonly recovery: "Set a valid OPENCHARGEMAP_API_KEY (free signup at openchargemap.org). This is a server configuration issue, not an input error."; readonly thrownBy: "service"; }], { readonly totalCount: z.ZodNumber; readonly truncated: z.ZodOptional; readonly shown: z.ZodOptional; readonly cap: z.ZodOptional; readonly nextOffset: z.ZodOptional; readonly notice: z.ZodOptional; }>; //# sourceMappingURL=find-stations.tool.d.ts.map