import { TripStage } from '../constants'; import { TripAssistanceResponseDTO } from './trip-assistance'; import { CreateTripLocationDTO, TripLocationResponseDTO } from './trip-location'; import { CreateTripProductDTO } from './trip-product'; import { CreateTripServiceDTO } from './trip-service'; import { CreateTripRiderDTO, TripRiderResponseDTO } from './trip-rider'; import { SimpleLocationDTO } from './location'; export declare class TripImportDTO { orgId: string; fileLocation: string; fileKey: string; s3Bucket: string; } export declare class TripFiltersDTO { productIds?: string[]; orgId?: string; serviceId?: string; operatorId?: string[]; riderId?: string[]; status?: string[]; statusGroup?: string; timeStart?: string; timeEnd?: string; timeField?: string; sortBy?: string[]; skip?: number; take?: number; } export declare class TripPoint { lat: number; lng: number; bearing: number; } export declare class ZoneTripFiltersDTO { orgId: string; zoneId: string; } declare class OperatorResponseDTO { id: string; firstName: string; lastName: string; operatorId: string; } declare class ServiceResponseDTO { id: string; serviceId: string; name: string; } declare class StatusDTO { id: string; status: string; createdAt: Date; } declare class VehicleDTO { id: string; licensePlate: string; make: string; model: string; vehicleId: string; } declare class TripLocationDTO { id: string; city: string; fullAddress: string; latitude: number; longitude: number; zipCode?: string; notes?: string; } declare class TripRiderDTO { id: string; firstName: string; lastName: string; riderId: string; photo?: string; } declare class RiderTripDTO { id: string; assistance: TripAssistanceResponseDTO[]; dropoffLocation: TripLocationDTO; pickupLocation: TripLocationDTO; rider: TripRiderDTO; riderCost: number; } export declare class ActiveTripsRequestDTO { numberOfRecords: number; organizationId: string; stage: string; } export declare class CreateTripDTO { organizationId: string; product: CreateTripProductDTO; service: CreateTripServiceDTO; dropoffLocation: CreateTripLocationDTO; pickupLocation: CreateTripLocationDTO; notes?: string; estimatedPickup?: number; estimatedPrice?: number; estimatedFare?: number; scheduledPickupTime?: string; scheduledDropoffTime?: string; rider: CreateTripRiderDTO; } export declare class UpdateTripDTO { duration?: number; distance?: number; notes?: string; operatorLocation?: { type: string; coordinates: number[]; }; polyline?: TripPoint[]; routePolyline?: string; bounds?: { south: number; west: number; north: number; east: number; }; scheduledPickupTime?: string; scheduledDropoffTime?: string; externalEta?: string; startMileage?: string; endMileage?: string; positiveFeedback?: string; negativeFeedback?: string; } export declare class AddTripRiderFeedbackDTO { riderPositiveFeedback?: string; riderNegativeFeedback?: string; isRiderPositiveFeedback?: boolean; } export declare class AddTripDriverFeedbackDTO { driverPositiveFeedback?: string; driverNegativeFeedback?: string; isDriverPositiveFeedback?: boolean; } export declare class TripEstimatesDTO { eta?: number; price?: number; fare?: number; duration?: number; distance?: number; } export declare class CreateTripRequestDTO { organizationId: string; dropoffLocation: CreateTripLocationDTO; pickupLocation: CreateTripLocationDTO; rider: CreateTripRiderDTO; product: CreateTripProductDTO; service: CreateTripServiceDTO; estimates?: TripEstimatesDTO; notes?: string; routePolyline?: string; bounds?: { south: number; west: number; north: number; east: number; }; tripType?: string; additionalRiders?: number; } export declare class ScheduledTripRequestDTO { organizationId: string; dropoffLocation: CreateTripLocationDTO; pickupLocation: CreateTripLocationDTO; rider: CreateTripRiderDTO; product: CreateTripProductDTO; service: CreateTripServiceDTO; scheduledPickupTime?: string; scheduledDropoffTime?: string; estimates?: TripEstimatesDTO; notes?: string; vehicleId?: string; operatorId?: string; routePolyline?: string; bounds?: { south: number; west: number; north: number; east: number; }; tripType?: string; additionalRiders?: number; } export declare class TripProductResponseDTO { id: string; name: string; integrationId?: string; shouldDispatch?: boolean; } export declare class TripDomainResponseDTO { id: string; createdAt: Date; externalId?: string; organizationId: string; polyline?: TripPoint[]; operator: OperatorResponseDTO | null; operatorLocation: object | null; product: TripProductResponseDTO | null; pickupLocation: TripLocationResponseDTO; dropoffLocation: TripLocationResponseDTO; rider: TripRiderResponseDTO; status: StatusDTO[]; service: ServiceResponseDTO | null; vehicle: VehicleDTO | null; } export declare class RecentTripsResponseDTO { today: TripDomainResponseDTO[]; recent: TripDomainResponseDTO[]; } export declare class TripDTO { riders: RiderTripDTO[]; dropoffLocation: CreateTripLocationDTO; pickupLocation: CreateTripLocationDTO; product: CreateTripProductDTO; riderCount: number; totalCost: number; type: string; } declare class VehicleRelation { id: string; } declare class OperatorRelation { id: string; } export declare class SetOperatorVehicleDTO { id: string; vehicle?: VehicleRelation; operator?: OperatorRelation; } export interface ActiveTripsByStagesResponseDTO { stage: TripStage; items: TripDomainResponseDTO[]; total: number; } export declare class UpdateTripStatusRequestDTO { tripId: string; status: string; comment?: string; data?: object; createdAt?: Date; } export declare class PersistPolylineDTO { tripId: string; polyline: TripPoint[]; } export interface TripChargeResponseDTO { riderFare: number; cancellationPrice: number; } export interface IntegrationTripInfoResponseDTO { status: string; comment: string; price: number; operator: { id: string; name: string; firstName: string; lastName: string; phone: string; }; vehicle: { make: string; model: string; licensePlate: string; }; location: { lat: number; lng: number; }; } export declare class CompactTripDTO { id: string; organizationId?: string; serviceId?: string; productId?: string; destination: SimpleLocationDTO; origin: SimpleLocationDTO; riderId: string; operatorId?: string; scheduledPickupTime?: string; scheduledDropoffTime?: string; status?: string; notes?: string; } export declare class GetRiderServiceTripCountDTO { riderId: string; serviceId: string; duration: string; } export {};