import { IAirportInfo } from '@typings/airport-info';
import { DispatchType, OperationStatus } from '@typings/enums';
import { ITimesSet } from '@typings/times';

export type IFlightDepartureStationTimes = {
    scheduledDeparture: ITimesSet;
    estimatedBlockOff?: ITimesSet;
    actualBlockOff?: ITimesSet;
};

export type IFlightArrivalStationTimes = {
    scheduledArrival: ITimesSet;
    estimatedBlockOn?: ITimesSet;
    actualBlockOn?: ITimesSet;
};

export type IFlightLegStation = {
    scheduled: IAirportInfo;
    latest?: IAirportInfo;
    dispatch?: DispatchType;
    gate?: string;
    terminal?: string;
};

export type IFlightLegDepartureStation = IFlightLegStation & {
    checkingStatus: OperationStatus;
    parkingStand?: string;
    times: IFlightDepartureStationTimes;
};

export type IFlightLegArrivalStation = IFlightLegStation & {
    times: IFlightArrivalStationTimes;
    bagBelt?: string;
};
