import { BoundingBox, Coords, LevelOfDetail, PolygonsFilter, Position, Snapping, TransportationNoPtRequestCommons } from './common'; export type DistanceMapRequestSearchBase = Snapping & { id: string; coords: Coords; transportation: TransportationNoPtRequestCommons; travel_distance: number; level_of_detail?: LevelOfDetail; /** * @deprecated Use {@link DistanceMapRequestSearchBase.polygons_filter} instead. */ single_shape?: boolean; polygons_filter?: PolygonsFilter; no_holes?: boolean; /** * Default: `approximate_time_filter` */ render_mode?: 'approximate_time_filter' | 'road_buffering'; buffer_distance?: number; }; export type DistanceMapRequestDepartureSearch = DistanceMapRequestSearchBase & { departure_time: string; }; export type DistanceMapRequestArrivalSearch = DistanceMapRequestSearchBase & { arrival_time: string; }; export type DistanceMapRequestUnionOrIntersection = { id: string; search_ids: Array; }; export type DistanceMapRequest = { departure_searches?: Array; arrival_searches?: Array; unions?: Array; intersections?: Array; }; export type DistanceMapResponseShape = { shell: Array; holes: Array>; }; export type DistanceMapResponseProperties = Record; export type DistanceMapResponseGeoJSONProperties = { search_id: string; }; export type DistanceMapResponseResult = { search_id: string; shapes: Array; properties: DistanceMapResponseProperties; }; export type DistanceMapResponse = { results: Array; }; export type DistanceMapResponseGeoJSONPolygon = { type: 'MultiPolygon'; coordinates: Position[][][]; }; export type DistanceMapResponseGeoJSONFeature = { type: 'Feature'; geometry: DistanceMapResponseGeoJSONPolygon; properties: DistanceMapResponseGeoJSONProperties; }; export type DistanceMapResponseGeoJSON = { type: 'FeatureCollection'; features: Array; }; export type DistanceMapResponseVndWktResult = { search_id: string; shape: string; properties: DistanceMapResponseProperties; }; export type DistanceMapResponseVndWkt = { results: Array; }; export type DistanceMapResponseVndBoundingBoxesBoundingBox = { envelope: BoundingBox; boxes: Array; }; export type DistanceMapResponseVndBoundingBoxesResult = { search_id: string; bounding_boxes: Array; properties: DistanceMapResponseProperties; }; export type DistanceMapResponseVndBoundingBoxes = { results: Array; };