import { Attr } from 'ts-framework' import { CoordinatesDTO, CoordinatesWithShortKeyDTO } from './coordinates' interface IGoogleMapBoundsDTO { southwest: CoordinatesWithShortKeyDTO northeast: CoordinatesWithShortKeyDTO } export interface RouteInfoDTO { distance: number duration: number } export interface GetDirectionsResponseDTO { bounds: IGoogleMapBoundsDTO | null polyline: string | null distance: number duration: number } export class GetRouteInfoDTO { @Attr({ type: String }) origin: string @Attr({ type: String }) destination: string } export class GetDirectionsDTO { @Attr({ type: CoordinatesDTO }) origin: CoordinatesDTO @Attr({ type: CoordinatesDTO }) destination: CoordinatesDTO } export class GetDirectionsMatrixDTO { @Attr({ type: String }) origins: string[] @Attr({ type: String }) destinations: string[] }