UNPKG

@golemio/pid

Version:
51 lines (50 loc) 2.49 kB
import { TripWithLastPositionModel } from "../../../../schema-definitions/vehicle-positions/models/views"; import { SequelizeModel } from "@golemio/core/dist/output-gateway"; import { IGeoJSONFeature } from "@golemio/core/dist/output-gateway/Geo"; import { ModelStatic } from "@golemio/core/dist/shared/sequelize"; import { ITripGetAllOutput, ITripWithPositionRepository } from "../interfaces/ITripWithPositionRepository"; import { IVPRepositoryInstances } from "../interfaces/IVPRepositoryInstances"; export declare class TripWithLastPositionRepository extends SequelizeModel implements ITripWithPositionRepository { sequelizeModel: ModelStatic<TripWithLastPositionModel>; private dbConnector; constructor(); Associate: (repositories: IVPRepositoryInstances) => void; /** Retrieves all vehicle trips * @param {object} options Options object with params * @param {number} [options.limit] Limit * @param {number} [options.offset] Offset * @param {string} [options.routeId] Filter trips by specific route id * @param {string} [options.routeShortName] Filter trips by specific route short name * @param {string} [options.tripId] Filter trips by specific trip id * @param {boolean} [options.includeNotTracking] Should include not tracking vehicle positions (those off a trip) * @returns Array of the retrieved records */ GetAll: (options: { cisTripNumber?: number; routeId?: string; routeShortName?: string; tripId?: string; includeNotTracking?: boolean; includeNotPublic?: boolean; limit?: number; offset?: number; updatedSince?: Date | null; preferredTimezone: string; }) => Promise<ITripGetAllOutput>; GetOne(): never; /** Retrieves specific vehicle trip * @param {string} id Id of the trip * @param {object} [options] Options object with params * @param {string} [options.includeNotTracking] Returns last known trip even if it is not tracked at time * @param {boolean} [options.includePositions] Should include all vehicle positions * @returns Object of the retrieved record or null */ GetOneByGTFSTripId: (id: string, options: { includeNotTracking?: boolean; includePositions?: boolean; includeNotPublic?: boolean; preferredTimezone: string; }) => Promise<IGeoJSONFeature | null>; private composeIncludes; private determinePossibleStatePositions; }