@stadiamaps/api
Version:
Stadia Maps Geospatial APIs
109 lines • 5.2 kB
TypeScript
import { CostingOptions } from './CostingOptions';
import { MapMatchCostingModel } from './MapMatchCostingModel';
import { TraceAttributeFilterOptions } from './TraceAttributeFilterOptions';
import { DistanceUnit } from './DistanceUnit';
import { RoutingLanguages } from './RoutingLanguages';
import { MapMatchWaypoint } from './MapMatchWaypoint';
/**
*
* @export
* @interface TraceAttributesRequest
*/
export interface TraceAttributesRequest {
/**
* An identifier to disambiguate requests (echoed by the server).
* @type {string}
* @memberof TraceAttributesRequest
*/
id?: string;
/**
* REQUIRED if `encoded_polyline` is not present. Note that `break` type locations are only supported when `shape_match` is set to `map_match`.
* @type {Array<MapMatchWaypoint>}
* @memberof TraceAttributesRequest
*/
shape?: Array<MapMatchWaypoint>;
/**
* REQUIRED if `shape` is not present. An encoded polyline (https://developers.google.com/maps/documentation/utilities/polylinealgorithm). Note that the polyline must be encoded with 6 digits of precision rather than the default 5!
* @type {string}
* @memberof TraceAttributesRequest
*/
encodedPolyline?: string;
/**
*
* @type {MapMatchCostingModel}
* @memberof TraceAttributesRequest
*/
costing: MapMatchCostingModel;
/**
*
* @type {CostingOptions}
* @memberof TraceAttributesRequest
*/
costingOptions?: CostingOptions;
/**
* Three snapping modes provide some control over how the map matching occurs. `edge_walk` is fast, but requires extremely precise data that matches the route graph almost perfectly. `map_snap` can handle significantly noisier data, but is very expensive. `walk_or_snap`, the default, tries to use edge walking first and falls back to map matching if edge walking fails.
* In general, you should not need to change this parameter unless you want to trace a multi-leg route with multiple `break` locations in the `shape`.
* @type {string}
* @memberof TraceAttributesRequest
*/
shapeMatch?: TraceAttributesRequestShapeMatchEnum;
/**
*
* @type {DistanceUnit}
* @memberof TraceAttributesRequest
*/
units?: DistanceUnit;
/**
*
* @type {RoutingLanguages}
* @memberof TraceAttributesRequest
*/
language?: RoutingLanguages;
/**
* The level of directional narrative to include. Locations and times will always be returned, but narrative generation verbosity can be controlled with this parameter.
* @type {string}
* @memberof TraceAttributesRequest
*/
directionsType?: TraceAttributesRequestDirectionsTypeEnum;
/**
* If present, provides either a whitelist or a blacklist of keys to include/exclude in the response. This key is optional, and if omitted from the request, all available info will be returned.
* @type {TraceAttributeFilterOptions}
* @memberof TraceAttributesRequest
*/
filters?: TraceAttributeFilterOptions;
/**
* If greater than zero, attempts to include elevation along the route at regular intervals. The "native" internal resolution is 30m, so we recommend you use this when possible. This number is interpreted as either meters or feet depending on the unit parameter.
* Elevation for route sections containing a bridge or tunnel is interpolated linearly. This doesn't always match the true elevation of the bridge/tunnel, but it prevents sharp artifacts from the surrounding terrain. This functionality is unique to the routing endpoints and is not available via the elevation API.
* NOTE: This has no effect on the OSRM response format.
* @type {number}
* @memberof TraceAttributesRequest
*/
elevationInterval?: number;
}
/**
* @export
*/
export declare const TraceAttributesRequestShapeMatchEnum: {
readonly EdgeWalk: "edge_walk";
readonly MapSnap: "map_snap";
readonly WalkOrSnap: "walk_or_snap";
};
export type TraceAttributesRequestShapeMatchEnum = (typeof TraceAttributesRequestShapeMatchEnum)[keyof typeof TraceAttributesRequestShapeMatchEnum];
/**
* @export
*/
export declare const TraceAttributesRequestDirectionsTypeEnum: {
readonly None: "none";
readonly Maneuvers: "maneuvers";
readonly Instructions: "instructions";
};
export type TraceAttributesRequestDirectionsTypeEnum = (typeof TraceAttributesRequestDirectionsTypeEnum)[keyof typeof TraceAttributesRequestDirectionsTypeEnum];
/**
* Check if a given object implements the TraceAttributesRequest interface.
*/
export declare function instanceOfTraceAttributesRequest(value: object): value is TraceAttributesRequest;
export declare function TraceAttributesRequestFromJSON(json: any): TraceAttributesRequest;
export declare function TraceAttributesRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): TraceAttributesRequest;
export declare function TraceAttributesRequestToJSON(json: any): TraceAttributesRequest;
export declare function TraceAttributesRequestToJSONTyped(value?: TraceAttributesRequest | null, ignoreDiscriminator?: boolean): any;
//# sourceMappingURL=TraceAttributesRequest.d.ts.map