import { DepartureUnion } from "../../interfaces/DepartureUnion";
import { IPIDDeparture } from "../../interfaces/IPIDDeparture";
import { ITransferDeparture } from "../../interfaces/ITransferDeparture";
import IPIDDepartureQueryOptions from "./interfaces/IPIDDepartureQueryOptions";
export default class PIDDeparturesModel {
    private departures;
    private options;
    private static FilterConditionMap;
    constructor(departures: DepartureUnion[], options: IPIDDepartureQueryOptions);
    toArray: () => IPIDDeparture[];
    processAndReturnTransfers(): ITransferDeparture[];
    private toArrayInternal;
    /** Orders departures in special way by given options
     */
    private filterAndLimit;
    /** Skips departures by given options
     */
    private skip;
    /** Sorts by proper datetime by given options
     */
    private sort;
    /** Fills direction with proper value based on departure direction ruls
     */
    private addDirections;
    private filterDepartures;
    private filterByCondition;
}
