UNPKG

@dgac/nmb2b-client

Version:

EUROCONTROL Network Manager B2B SOAP client

1 lines 41.3 kB
{"version":3,"sources":["../../src/Flight/types.ts"],"sourcesContent":["export type IFPLId = string; // UALPHA{2}DIGIT{8}\nexport type FlightDataset = 'flight' | 'flightPlan' | 'flightPlanHistory';\nexport type FlightIdentificationInput =\n | { id: IFPLId }\n | { keys: FlightKeys }\n | { iataKeys: IATAFlightKeys };\nexport interface FlightIdentificationOutput {\n id?: IFPLId;\n keys?: FlightKeys;\n}\nexport type AircraftICAOId = string; // (ALPHA|DIGIT){2,7}\nexport type ExtendedAircraftICAOId = string; // (ALPHA|DIGIT|$|#){2,7}\nexport type AircraftRegistrationMark = string; // (ALPHA|DIGIT|SPECIAL_CHARACTER){1,50}\nexport type ICAOAircraftAddress = string; // HEXA{6}\nexport type SSRCode = string; // DIGIT{4}\nexport type SSRMode = 'A'; // Mode A only\nexport type AircraftTypeICAOId = string; // ALPHA{1}(ALPHA|DIGIT){1,3}\nexport type OtherAircraftTypeDesignation_DataType = string; // ANY{1,60}\nexport type AircraftOperatorICAOId = string; // ALPHA{3}\nexport type AircraftIATAId = string; // (UALPHA|DIGIT){2}(UALPHA|DIGIT|*){0,1}DIGIT{3,4}UALPHA{0,1}\n\nexport type FlightTrend = 'CLIMB' | 'CRUISE' | 'DESCENT' | 'NONE';\n\nexport type FlightState =\n | 'ATC_ACTIVATED'\n | 'CANCELLED'\n | 'FILED'\n | 'FILED_SLOT_ALLOCATED'\n | 'FILED_SLOT_ISSUED'\n | 'PLANNED'\n | 'PLANNED_REROUTED'\n | 'PLANNED_SLOT_ALLOCATED'\n | 'PLANNED_SLOT_ALLOCATED_REROUTED'\n | 'TACT_ACTIVATED'\n | 'TERMINATED';\n\nexport type ATFMMessageType =\n | 'DES'\n | 'ERR'\n | 'FCM'\n | 'FLS'\n | 'FUM'\n | 'REA'\n | 'RFI'\n | 'RJT'\n | 'RRN'\n | 'RRP'\n | 'SAM'\n | 'SIP'\n | 'SLC'\n | 'SMM'\n | 'SPA'\n | 'SJR'\n | 'SRM'\n | 'SWM'\n | 'UNK';\n\nimport type {\n AerodromeICAOId,\n AerodromeOrPublishedPointId,\n AerodromeSetId,\n AirSpeed,\n AirspaceId,\n AirspaceType,\n FIRICAOId,\n FlightLevel,\n FlightPlanProcessing,\n ICAOPoint,\n LoadState,\n NetworkAddress,\n NonPublishedPoint,\n PublishedPointId,\n RestrictionId,\n RouteOrTerminalProcedure,\n RunwayId,\n TerminalProcedure,\n TrafficVolumeId,\n} from '../Airspace/types';\n\nimport type {\n AirNavigationUnitId,\n Colours,\n Position as CommonPosition,\n Cost,\n Dataset,\n DateTimeMinute,\n DateTimeMinutePeriod,\n DateTimeSecond,\n DistanceM,\n DistanceNM,\n Duration,\n DurationHourMinute,\n DurationHourMinuteSecond,\n DurationMinute,\n FlightLevelM,\n NMList,\n NMSet,\n ReceivedOrSent,\n ReplyWithData,\n ShiftHourMinute,\n SignedDurationHourMinuteSecond,\n TimeHourMinutePeriod,\n WeightKg,\n} from '../Common/types';\n\nimport type {\n CountsCalculationType,\n CountsInterval,\n FlightAtfcmMeasureLocation,\n FlightHotspotLocation,\n FlightMCDMInfo,\n FlightRegulationLocation,\n Flow,\n FlowId,\n MeasureId,\n OtmvStatus,\n RegulationCause,\n RegulationId,\n ReroutingId,\n TrafficVolumeScenarios,\n} from '../Flow/types';\n\nexport interface FlightKeys {\n aircraftId: ExtendedAircraftICAOId;\n aerodromeOfDeparture?: AerodromeICAOId;\n nonICAOAerodromeOfDeparture?: boolean;\n airFiled: boolean;\n aerodromeOfDestination?: AerodromeICAOId;\n nonICAOAerodromeOfDestination?: boolean;\n estimatedOffBlockTime: DateTimeMinute;\n}\n\nexport type IATAFlightKeys = {\n flightDesignator: AircraftIATAId;\n estimatedOffBlockTime: DateTimeMinute;\n};\n\nexport interface TimeAndModel {\n model: TrafficType;\n dateTime: DateTimeSecond;\n}\n\nexport type TrafficType = 'DEMAND' | 'LOAD' | 'REGULATED_DEMAND';\n\nexport type FlightField =\n | 'divertedAerodromeOfDestination'\n | 'readyEstimatedOffBlockTime'\n | 'cdmEstimatedOffBlockTime'\n | 'calculatedOffBlockTime'\n | 'actualOffBlockTime'\n | 'aircraftType'\n | 'estimatedTakeOffTime'\n | 'calculatedTakeOffTime'\n | 'actualTakeOffTime'\n | 'ctotShiftAlreadyAppliedByTower'\n | 'taxiTime'\n | 'currentDepartureTaxiTimeAndProcedure'\n | 'revisionTimes'\n | 'estimatedTimeOfArrival'\n | 'calculatedTimeOfArrival'\n | 'actualTimeOfArrival'\n | 'requestedFlightLevel'\n | 'timeAtReferenceLocationEntry'\n | 'timeAtReferenceLocationExit'\n | 'flightLevelAtReferenceLocationEntry'\n | 'flightLevelAtReferenceLocationExit'\n | 'trendAtReferenceLocationEntry'\n | 'trendAtReferenceLocationExit'\n | 'trendAtReferenceLocationMiddle'\n | 'lateFiler'\n | 'lateUpdater'\n | 'suspensionStatus'\n | 'suspensionInfo'\n | 'exclusionFromRegulations'\n | 'famStatus'\n | 'readyStatus'\n | 'aircraftOperator'\n | 'operatingAircraftOperator'\n | 'reroutingIndicator'\n | 'newRouteMinShiftDelayImprovement'\n | 'reroutable'\n | 'cdm'\n | 'slotIssued'\n | 'proposalInformation'\n | 'bestReroutingIndicator'\n | 'exemptedFromRegulations'\n | 'delay'\n | 'delayCharacteristics'\n | 'mostPenalisingRegulation'\n | 'hasOtherRegulations'\n | 'regulationLocations'\n | 'atfcmMeasureLocations'\n | 'lastATFMMessageType'\n | 'lastATFMMessageReceivedOrSent'\n | 'runwayVisualRange'\n | 'confirmedCTFM'\n | 'requestedInitialFlightLevel'\n | 'requestedInitialSpeed'\n | 'estimatedElapsedTime'\n | 'filingRule'\n | 'initialFPLMessageOriginator'\n | 'lastFPLMessageOriginator'\n | 'icaoRoute'\n | 'routeLength'\n | 'defaultReroutingRequestedFlightLevel'\n | 'defaultReroutingRequestedSpeed'\n | 'departureTolerance'\n | 'mostPenalisingRegulationCause'\n | 'lastATFMMessageOriginator'\n | 'ftfmPointProfile'\n | 'rtfmPointProfile'\n | 'ctfmPointProfile'\n | 'ftfmAirspaceProfile'\n | 'rtfmAirspaceProfile'\n | 'ctfmAirspaceProfile'\n | 'ftfmRequestedFlightLevels'\n | 'rtfmRequestedFlightLevels'\n | 'ctfmRequestedFlightLevels'\n | 'flightHistory'\n | 'operationalLog'\n | 'equipmentCapabilityAndStatus'\n | 'ftfmRestrictionProfile'\n | 'rtfmRestrictionProfile'\n | 'ctfmRestrictionProfile'\n | 'cfmuFlightType'\n | 'ccamsSSRCode'\n | 'filedRegistrationMark'\n | 'isProposalFlight'\n | 'hasBeenForced'\n | 'caughtInHotspots'\n | 'hotspots'\n | 'mcdmInfo'\n | 'worstLoadStateAtReferenceLocation'\n | 'compareWithOtherTrafficType'\n | 'ctotLimitReason'\n | 'profileValidity'\n | 'targetTimeOverFix'\n | 'flightState'\n | 'lastKnownPosition'\n | 'highestModelPointProfile'\n | 'highestModelAirspaceProfile'\n | 'highestModelRestrictionProfile'\n | 'slotSwapCounter'\n | 'slotSwapCandidateList'\n | 'aircraftAddress'\n | 'arrivalInformation'\n | 'slotZone'\n | 'flightDataVersionNr'\n | 'applicableScenarios'\n | 'apiSubmissionRules'\n | 'avoidedRegulations'\n | 'routeChargeIndicator'\n | 'fuelConsumptionIndicator'\n | 'excludedRegulations'\n | 'yoyoFlightForLocation'\n | 'turnFlightForLocation'\n | 'minimumRequestedRVR'\n | 'wakeTurbulenceCategory'\n | 'alternateAerodromes'\n | 'flightCriticality'\n | 'oceanicReroute'\n | 'visibility';\n\nexport type FlightPlanOutput = { structured: StructuredFlightPlan };\n\nexport interface BasicTrajectoryData {\n takeOffWeight?: WeightKg;\n topOfClimb?: Array<Relative4DPoint>;\n topOfDescent?: Array<Relative4DPoint>;\n bottomOfClimb?: Array<Relative4DPoint>;\n bottomOfDescent?: Array<Relative4DPoint>;\n distanceAtLocationInfo?: DistanceAtLocation;\n}\n\nexport type DistanceAtLocation = {\n adesDAL?: AerodromeDAL;\n dalPoints?: Array<PointDAL>;\n};\n\nexport type PointDAL = {\n point: ICAOPoint;\n cumulativeDistance: DistanceM;\n};\n\nexport type AerodromeDAL = {\n aerodrome: AerodromeICAOId;\n cumulativeDistance: DistanceM;\n};\n\nexport type Relative4DPoint = {\n cumulativeDistance: DistanceM;\n altitude: FlightLevelM;\n elapsedTime: Duration;\n};\n\nexport interface DepartureData {\n taxiTime: DurationMinute;\n}\n\nexport type FIXMFlight = Record<string, unknown>; // aero.fixm.flight._4.FlightType\nexport interface StructuredFlightPlan {\n flightPlan?: FlightPlan;\n basicTrajectoryData?: BasicTrajectoryData;\n departureData?: DepartureData;\n}\n\nexport type FlightPlanHistory = {\n infos?: Array<FlightPlanHistoryInfo>;\n};\n\nexport type FlightPlanHistoryInfo = {\n timeStamp?: DateTimeSecond;\n checkPoint?: string;\n mode?: string;\n msgIn?: string;\n msgOut?: string;\n addresses?: Array<string>;\n detail?: string;\n};\n\nexport interface Flight {\n flightId: FlightIdentificationOutput;\n divertedAerodromeOfDestination?: AerodromeICAOId;\n aircraftType?: AircraftTypeICAOId;\n readyEstimatedOffBlockTime?: DateTimeMinute;\n cdmEstimatedOffBlockTime?: DateTimeMinute;\n calculatedOffBlockTime?: DateTimeMinute;\n actualOffBlockTime?: DateTimeMinute;\n revisionTimes?: {\n timeToInsertInSequence?: DurationHourMinute;\n timeToRemoveFromSequence?: DurationHourMinute;\n };\n estimatedTakeOffTime?: DateTimeMinute;\n calculatedTakeOffTime?: DateTimeMinute;\n actualTakeOffTime?: DateTimeMinute;\n ctotShiftAlreadyAppliedByTower?: ShiftHourMinute;\n requestedFlightLevel?: FlightLevel;\n taxiTime?: DurationHourMinute;\n currentDepartureTaxiTimeAndProcedure?: TaxiTimeAndProcedure;\n estimatedTimeOfArrival?: DateTimeMinute;\n calculatedTimeOfArrival?: DateTimeMinute;\n actualTimeOfArrival?: DateTimeMinute;\n lateFilter?: boolean;\n lateUpdater?: boolean;\n suspensionStatus?: SuspensionStatus;\n suspensionInfo?: string;\n famStatus?: FAMStatus;\n readyStatus?: ReadyStatus;\n aircraftOperator?: AircraftOperatorICAOId;\n operatingAircraftOperator?: AircraftOperatorICAOId;\n reroutingIndicator?: ReroutingIndicator;\n newRouteMinShiftDelayImprovement?: DurationHourMinute;\n reroutable?: 'CANNOT_BE_REROUTED' | 'TRY_ALLOWED' | 'TRY_AND_APPLY_ALLOWED';\n cdm?: CDM;\n slotIssued?: boolean;\n proposalInformation?: ProposalInformation;\n timeAtReferenceLocationEntry?: TimeAndModel;\n timeAdReferenceLocationExit?: TimeAndModel;\n flightLevelAtReferenceLocationEntry?: FlightLevel;\n flightLevelAtReferenceLocationExit?: FlightLevel;\n trendAtReferenceLocationEntry?: FlightTrend;\n trendAtReferenceLocationExit?: FlightTrend;\n trendAtReferenceLocationMiddle?: FlightTrend;\n bestReroutingIndicator?: GroupReroutingSummary;\n exemptedFromRegulations?: boolean;\n delay?: DurationHourMinute;\n delayCharacteristics?: 'ADJUSTED_TO_CLOCK' | 'EXCEEDS_DELAY_CONFIRMATION';\n mostPenalisingRegulation?: RegulationId;\n hasOtherRegulations?: boolean;\n regulationLocations?: FlightRegulationLocation[];\n atfcmMeasureLocations?: NMSet<FlightAtfcmMeasureLocation>;\n lastATFMMessageType?: ATFMMessageType;\n lastATFMMessageReceivedOrSent?: ReceivedOrSent;\n runwayVisualRange?: DistanceM;\n minimumRequestedRVR?: DistanceM;\n confirmedCTFM?: DistanceNM;\n exclusionFromRegulations?: ExclusionFromRegulations;\n requestedInitialFlightLevel?: FlightLevel;\n requestedInitialSpeed?: AirSpeed;\n estimatedElapsedTime?: DurationHourMinute;\n filingRule?:\n | 'FILING_ALLOWED_BY_AO_CFMU'\n | 'NOT_AUTHORISED'\n | 'OPERATOR_MUST_REFILE';\n initialFPLMessageOriginator?: MessageOriginator;\n lastFPLMessageOriginator?: MessageOriginator;\n icaoRoute?: string;\n routeLength?: DistanceNM;\n defaultReroutingRequestedFlightLevel?: FlightLevel;\n defaultReroutingRequestedSpeed?: AirSpeed;\n departureTolerance?: DepartureTolerance;\n mostPenalisingRegulationCause?: RegulationCause;\n lastATFMMessageOriginator?: MessageOriginator;\n ftfmPointProfile?: FlightPoint[];\n rtfmPointProfile?: FlightPoint[];\n ctfmPointProfile?: FlightPoint[];\n ftfmAirspaceProfile?: FlightAirspace[];\n rtfmAirspaceProfile?: FlightAirspace[];\n ctfmAirspaceProfile?: FlightAirspace[];\n ftfmRequestedFlightLevels?: RequestedFlightLevel[];\n rtfmRequestedFlightLevels?: RequestedFlightLevel[];\n ctfmRequestedFlightLevels?: RequestedFlightLevel[];\n ftfmTrafficVolumeProfile?: FlightTrafficVolume[];\n rtfmTrafficVolumeProfile?: FlightTrafficVolume[];\n ctfmTrafficVolumeProfile?: FlightTrafficVolume[];\n flightHistory?: FlightEvent[];\n operationalLog?: FlightOperationalLogEntry[];\n equipmentCapabilityAndStatus?: EquipmentCapabilityAndStatus;\n ftfmRestrictionProfile?: FlightRestriction[];\n rtfmRestrictionProfile?: FlightRestriction[];\n ctfmRestrictionProfile?: FlightRestriction[];\n cfmuFlightType?: CfmuFlightType;\n ccamsSSRCode?: SSRCode;\n filedRegistrationMark?: AircraftRegistrationMark;\n isProposalFlight?: boolean;\n proposalExists?: boolean;\n hasBeenForced?: boolean;\n caughtInHotspots?: number;\n hotspots?: FlightHotspotLocation[];\n mcdmInfo?: FlightMCDMInfo;\n worstLoadStateAtReferenceLocation?: LoadStateAtReferenceLocation;\n compareWithOtherTrafficType?: DeltaEntry;\n ctotLimitReason?: CTOTLimitReason;\n profileValidity?: ProfileValidity;\n targetTimeOverFix?: TargetTime;\n flightState?: FlightState;\n lastKnownPosition?: FourDPosition;\n slotSwapCounter?: {\n // SlotSwapCounter,\n currentCounter: number;\n maxLimit: number;\n };\n slotSwapCandidateList?: NMList<{\n // SlotSwapCandidate,\n ifplId: IFPLId;\n subjectDeltaDelayMinutes: number;\n candidateDeltaDelayMinutes: number;\n swapDecideByTime: DateTimeMinute;\n }>;\n aircraftAddress?: ICAOAircraftAddress;\n arrivalInformation?: ArrivalInformation;\n slotZone?: {\n // SlotZone,\n beforeCTO: DurationMinute;\n afterCTO: DurationMinute;\n };\n flightDataVersionNr?: number; // FlightDataVersionNumber\n applicableScenarios?: NMList<TrafficVolumeScenarios>;\n apiSubmissionRules?: APISubmissionRules;\n avoidedRegulations?: NMSet<RegulationId>;\n routeChargeIndicator?: number;\n fuelConsumptionIndicator?: number;\n excludedRegulations?: NMSet<RegulationId>;\n yoyoFlightForLocation?: YoYoFlightForLocation;\n turnFlightForLocation?: TurnFlightForLocation;\n wakeTurbulenceCategory?: WakeTurbulenceCategory;\n alternateAerodromes?: NMList<AerodromeICAOId>;\n flightCriticality?: FlightCriticalityIndicator;\n oceanicRoute?: boolean;\n visibility?: FlightVisibility;\n iataFlightDesignator?: AircraftIATAIdFromDataSource;\n activeACDMAlerts?: NMList<ACDMAlertData>;\n aoReroutingFeedbacks?: NMList<ReroutingFeedback>;\n}\n\nexport type ReroutingFeedbackKind = 'LIKE' | 'DISLIKE';\nexport type ReroutingFeedbackReason =\n | 'TOTAL_COST'\n | 'FUEL_SAVINGS'\n | 'ROUTE_CHARGES'\n | 'ATFM_DELAY_VALUE'\n | 'DISTANCE'\n | 'FLYING_TIME'\n | 'OBT_VALIDITY'\n | 'AO_INTERNAL_REASONS'\n | 'OTHER';\n\nexport type ReroutingFeedback = {\n kind: ReroutingFeedbackKind;\n icaoRoute: string;\n reason: ReroutingFeedbackReason;\n comment?: string;\n reroutingId?: ReroutingId;\n};\n\nexport type ACDMAlertCode = string; // UALPHA{3}DIGIT{2}LALPHA{0,1}\nexport type ACDMAlertSeverity = 'HIGH' | 'MEDIUM' | 'LOW';\n\nexport type ACDMAlertData = {\n alertCode: ACDMAlertCode;\n timestamp: DateTimeMinute;\n inconsistencyDetected: string;\n actionToTake: string;\n consequencesNote?: string;\n severity?: ACDMAlertSeverity;\n};\n\nexport type AircraftIATAIdFromDataSource = {\n id: AircraftIATAId;\n dataSource: AircraftIdDataSource;\n};\n\nexport type AircraftIdDataSource = 'DDR' | 'API' | 'DPI' | 'FPM';\n\nexport type FlightTrafficVolume = {\n trafficVolumeId: TrafficVolumeId;\n entryTime: DateTimeSecond;\n entryFlightLevel?: FlightLevel;\n entryTrend: FlightTrend;\n middleTrend: FlightTrend;\n exitTime: DateTimeSecond;\n exitFlightLevel?: FlightLevel;\n exitTrend: FlightTrend;\n activated: boolean;\n exempted: boolean;\n flows: NMList<Flow>;\n};\n\nexport type FlightVisibility =\n | 'NO_VISIBILITY'\n | 'VISIBLE'\n | 'INVISIBLE'\n | 'INVISIBLE_BEFORE_VISIBLE'\n | 'VISIBLE_AFTER_INVISIBLE'\n | 'VISIBLE_BEFORE_INVISIBLE'\n | 'VISIBLE_BETWEEN_INVISIBLE'\n | 'VISIBLE_WITH_SKIPOUT';\n\nexport type APISubmissionRules = {\n latestSubmissionTargetTakeOffAPI?: DateTimeMinute;\n earliestSubmissionTargetTimeOverAPI?: DateTimeMinute;\n};\n\nexport type WakeTurbulenceCategory = 'HEAVY' | 'LIGHT' | 'MEDIUM' | 'SUPER';\n\nexport type FlightCriticalityIndicator = {\n kind: FlightCriticalityKind;\n comment?: string;\n};\n\nexport type GroupReroutingSummary = {\n groupReroutingIndicator: GroupReroutingIndicator;\n reroutingId: ReroutingId;\n deltaCost: Cost;\n deltaDelay?: SignedDurationHourMinuteSecond;\n};\n\nexport type GroupReroutingIndicator =\n | 'NO_REROUTING'\n | 'UNINTERESTING'\n | 'INTERESTING'\n | 'OPPORTUNITY'\n | 'EXECUTED';\n\nexport type FlightCriticalityKind =\n | 'CRITICAL_DUE_TO_AIRFRAME_UTILISATION'\n | 'CRITICAL_DUE_TO_AIRPORT_CLOSURE'\n | 'CRITICAL_DUE_TO_CREW_TIME'\n | 'CRITICAL_DUE_TO_NOISE_ABATEMENT'\n | 'CRITICAL_DUE_TO_OTHER_REASONS'\n | 'CRITICAL_DUE_TO_PASSENGER_CONNECTIONS'\n | 'CRITICAL_DUE_TO_PASSENGER_DELAY_COMPENSATION'\n | 'CRITICAL_DUE_TO_TURNAROUND_CRITICAL';\n\nexport type TurnFlightForLocation = {\n ftfmTurn: TurnFlightForLocationKind;\n locationModelTurnKind: TurnFlightForLocationKind;\n};\n\nexport type TurnFlightForLocationKind =\n | 'CRITICAL_ELSEWHERE'\n | 'CRITICAL_INSIDE'\n | 'CRITICAL_SHARP_TURN'\n | 'NON_CRITICAL_ELSEWHERE'\n | 'NON_CRITICAL_INSIDE'\n | 'NON_CRITICAL_SHARP_TURN'\n | 'NO_SHARP_TURN';\n\nexport type YoYoFlightForLocation = {\n ftfmYoYo: YoYoFlightForLocationKind;\n locationModelYoYoKind: YoYoFlightForLocationKind;\n};\n\nexport type YoYoFlightForLocationKind =\n | 'CRITICAL_COMPLETELY_INSIDE'\n | 'CRITICAL_ELSEWHERE'\n | 'CRITICAL_ENDS_INSIDE'\n | 'CRITICAL_STARTS_INSIDE'\n | 'CRITICAL_YOYO'\n | 'LOCATION_INSIDE_CRITICAL'\n | 'LOCATION_INSIDE_NON_CRITICAL'\n | 'NON_CRITICAL_COMPLETELY_INSIDE'\n | 'NON_CRITICAL_ELSEWHERE'\n | 'NON_CRITICAL_ENDS_INSIDE'\n | 'NON_CRITICAL_STARTS_INSIDE'\n | 'NON_CRITICAL_YOYO'\n | 'NO_YOYO';\n\nexport type ArrivalInformation = {\n flightStatusInbound?: ATVFlightStatusInbound;\n registrationMark?: AircraftRegistrationMark;\n aircraftType?: AircraftTypeICAOId;\n aircraftIATAId?: AircraftIATAId;\n arrivalTaxiTime?: DurationHourMinute;\n apiArrivalProcedure?: TerminalProcedure;\n nmArrivalProcedure?: TerminalProcedure;\n initialApproachFix?: PublishedPointId;\n arrivalRunway?: RunwayId;\n arrivalTerminal?: TerminalOrApronStandName;\n arrivalApronStand?: TerminalOrApronStandName;\n minimumTurnaroundTime?: DurationHourMinute;\n landingTime?: DateTimeMinute;\n scheduledInBlockTime?: DateTimeMinute;\n inBlockTime?: DateTimeMinute;\n airportSlotArrival?: DateTimeMinute;\n impactSeverityIndicator?: ImpactSeverityIndicator;\n coordinationFix?: AerodromeOrPublishedPointId;\n targetTimeOver?: DateTimeMinute;\n earliestTargetTimeOver?: DateTimeMinute;\n consolidatedTargetTimeOver?: DateTimeMinute;\n calculatedTimeOver?: DateTimeMinute;\n regulationId?: RegulationId;\n minCalculatedTimeOver?: DateTimeMinute;\n maxCalculatedTimeOver?: DateTimeMinute;\n estimatedOrActualTimeOver?: DateTimeMinute;\n};\n\nexport type ImpactSeverityIndicator = 'E' | 'EI' | 'L' | 'LI' | 'LIP' | 'OT';\n\nexport type ProposalInformation = {\n proposalKink: ProposalKind;\n responseBy: DateTimeMinute;\n proposedCTOT?: DateTimeMinute;\n routeId?: ReroutingRouteId;\n reroutingId?: ReroutingId;\n};\n\nexport type ReroutingRouteId = {\n routeType: ReroutingRouteType;\n standardRouteId: StandardRouteId;\n};\n\nexport type StandardRouteId = {\n from: AerodromeICAOId;\n to: AerodromeICAOId;\n seqNr: number;\n};\n\nexport type ReroutingRouteType = 'GENERATED' | 'STANDARD' | 'USER' | 'VERTICAL';\n\nexport type ProposalKind = 'DELAY_CONF' | 'RRP' | 'RVR' | 'SIP' | 'STAM_SLOT';\n\nexport type MessageOriginator =\n | { airNavigationUnitId: AirNavigationUnitId }\n | { address: NetworkAddress };\n\nexport type TaxiTimeAndProcedure = {\n taxiTime: DurationHourMinute;\n taxiTimeSource: TaxiTimeSource;\n terminalProcedure?: TerminalProcedure;\n};\n\nexport type TaxiTimeSource =\n | 'ENV' // CACD\n | 'FPL' // Flight Plan\n | 'RWY' // Runway Tactical Update\n | 'REA' // Ready Message Minimum Lineup\n | 'CDM'; // DPI\n\nexport type SuspensionStatus =\n | 'AIRPORT_SUSPENSION'\n | 'DELAY_CONFIRMATION'\n | 'FLIGHT_PLAN_REVALIDATION'\n | 'MANUAL_SUSPENSION'\n | 'NOT_REPORTED_AS_AIRBORNE'\n | 'NOT_SUSPENDED'\n | 'REGULATION_CONFIRMATION'\n | 'SLOT_MISSED'\n | 'TRAFFIC_VOLUMES_CONDITION'\n | 'V_MANUAL_SUSPENSION';\n\nexport type FAMStatus =\n | 'AIRBORNE_WHEN_SHIFTED_BY_FAM'\n | 'AIRBORNE_WHEN_SUSPENDED_BY_FAM'\n | 'NOT_UNDER_FAM'\n | 'SHIFTED_BY_FAM'\n | 'SUBJECT_TO_FAM'\n | 'SUSPENDED_BY_FAM'\n | 'WAS_SHIFTED_BY_FAM'\n | 'WAS_SUBJECT_TO_FAM'\n | 'WAS_SUSPENDED_BY_FAM';\n\nexport interface ReadyStatus {\n readyForImprovement?: boolean;\n readyToDepart: boolean;\n revisedTaxiTime?: DurationHourMinute;\n}\n\nexport interface ReroutingIndicator {\n rerouted: boolean;\n reason?: ReroutingReason;\n state?: ReroutingState;\n}\n\nexport type ReroutingReason =\n | 'AO'\n | 'ATC_PURPOSE_PROPOSAL'\n | 'ATFCM_PURPOSE_PROPOSAL'\n | 'ATFM_EXECUTED'\n | 'CDR_OPPORTUNITY_PROPOSAL'\n | 'FLIGHT_EFFICIENCY_PURPOSE_PROPOSAL'\n | 'STAM_PURPOSE_PROPOSAL';\n\nexport type ReroutingState =\n | 'EXECUTED'\n | 'NO_MATCH'\n | 'PRODUCED'\n | 'REJECTED'\n | 'REVOKED'\n | 'TIMED_OUT';\n\nexport type OtherAerodromeDesignation = {\n aerodromeName?: string; // AerodromeName_DataType\n aerodromeLocation?: NonPublishedPoint;\n firstLastRoutePoint?: ICAOPoint;\n};\n\nexport type Aerodrome =\n | {\n icaoId: AerodromeICAOId;\n }\n | { otherDesignation: OtherAerodromeDesignation };\n\nexport interface AirFiledData {\n atsUnitId?: AtsUnitId_DataType;\n startingPoint: ICAOPoint;\n clearedLevel: FlightLevel;\n estimatedTimeOver: DateTimeSecond;\n}\n\nexport type AtsUnitId_DataType = string; // ANY{1,50}\n\nexport interface AlternateAerodrome {\n icaoId: AerodromeICAOId;\n nameLocationDescription: string; // AerodromeNameLocationDescription_DataType\n}\n\nexport interface AerodromesOfDestination {\n aerodromeOfDestination: Aerodrome;\n alternate1?: AlternateAerodrome;\n alternate2?: AlternateAerodrome;\n}\n\nexport type AlternateAerodrome_DataType = string; // ANY{1, 100}\n\nexport interface SSRInfo {\n code: SSRCode;\n mode: SSRMode;\n}\nexport interface AircraftIdentification {\n aircraftId?: AircraftICAOId;\n registrationMark: AircraftRegistrationMark;\n aircraftAddress?: ICAOAircraftAddress;\n ssrInfo?: SSRInfo;\n}\n\nexport type AircraftType =\n | { icaoId: AircraftTypeICAOId }\n | { otherDesignation: OtherAircraftTypeDesignation_DataType };\nexport interface FlightPlan {\n ifplId?: IFPLId;\n airFiledData?: AirFiledData;\n aerodromeOfDeparture?: Aerodrome;\n aerodromesOfDestination?: AerodromesOfDestination;\n enrouteAlternateAerodromes?: AlternateAerodrome_DataType;\n takeOffAlternateAerodromes?: AlternateAerodrome_DataType;\n aircraftId?: AircraftIdentification;\n whatIfRerouteReference?: number;\n numberOfAircraft?: number;\n aircraftType?: AircraftType;\n totalEstimatedElapsedTime?: DurationHourMinute;\n eetsToLocations?: EstimatedElapsedTimeAtLocation[];\n wakeTurbulenceCategory?: WakeTurbulenceCategory;\n flightType?: FlightType;\n flightRules?: FlightRules;\n estimatedOffBlockTime: DateTimeMinute;\n icaoRoute?: string;\n stayInformation?: Array<string>; // Array<StayInformation_DataType>;\n enrouteDelays?: Array<EnrouteDelay>;\n equipmentCapabilityAndStatus?: EquipmentCapabilityAndStatus;\n surveillanceEquipment?: SurveillanceEquipment;\n otherInformation?: OtherInformation;\n supplementaryInformation?: SupplementaryInformation;\n}\n\nexport type SupplementaryInformation = {\n fuelEndurance?: DurationHourMinute;\n numberOfPersons?: number;\n frequencyAvailability?: Array<FrequencyOnAircraft>;\n survivalEquipment?: Array<SurvivalEquipment>;\n otherSurvivalEquipment?: string;\n lifeJacketEquipment?: Array<LifeJacketEquipment>;\n dinghiesInformation?: Dinghies;\n aircraftColourAndMarkings?: string;\n pilotInCommand?: string;\n};\n\nexport type FrequencyOnAircraft = 'ELT' | 'UHF' | 'VHF';\n\nexport type SurvivalEquipment = 'DESERT' | 'JUNGLE' | 'MARITIME' | 'POLAR';\n\nexport type LifeJacketEquipment = 'FLUORESCEIN' | 'LIGHTS' | 'UHF' | 'VHF';\n\nexport type Dinghies = {\n numberOfDinghies?: number; // NumberOfDinghies_DataType\n totalCapacity?: number; // TotalCapacity_DataType\n areCovered?: boolean;\n colours?: Colours;\n};\n\nexport type OtherInformation = {\n selCalCode: string;\n nameOfOperator?: AircraftOperatorName_DataType;\n reasonForSpecialHandling?: SpecialHandlingIndicators;\n aircraftPerformanceData?: AircraftPerformanceCategory;\n communicationEquipment?: string;\n datalinkCapabilities?: DatalinkCapabilities;\n navigationEquipment?: string;\n performanceBasedNavigationCodes?: Array<PerformanceBasedNavigationCode>;\n otherSurveillanceEquipments?: string;\n replacementFlightPlanIndicator?: number;\n runwayVisualRange?: DistanceM;\n reclearanceInFlight?: ReclearanceInFlight;\n otherRemarks?: Array<string>;\n};\n\nexport type ReclearanceInFlight = {\n icaoRoute: string;\n aerodrome: AerodromeICAOId;\n};\n\nexport type PerformanceBasedNavigationCode =\n | 'BASIC_RNP_1_ALL'\n | 'BASIC_RNP_1_DME_DME'\n | 'BASIC_RNP_1_DME_DME_IRU'\n | 'BASIC_RNP_1_GNSS'\n | 'RNAV_10'\n | 'RNAV_1_ALL'\n | 'RNAV_1_DME_DME'\n | 'RNAV_1_DME_DME_IRU'\n | 'RNAV_1_GNSS'\n | 'RNAV_2_ALL'\n | 'RNAV_2_DME_DME'\n | 'RNAV_2_DME_DME_IRU'\n | 'RNAV_2_GNSS'\n | 'RNAV_5_ALL'\n | 'RNAV_5_DME_DME'\n | 'RNAV_5_GNSS'\n | 'RNAV_5_INS_OR_IRS'\n | 'RNAV_5_LORAN_C'\n | 'RNAV_5_VOR_DME'\n | 'RNP_4'\n | 'RNP_APCH'\n | 'RNP_APCH_BARO_VNAV'\n | 'RNP_AR_APCH_NO_RF'\n | 'RNP_AR_APCH_RF';\n\nexport type DatalinkCapabilities = {\n value?: string; // DataLinkCapabilities_DataType\n};\n\nexport type AircraftPerformanceCategory =\n | 'CAT_A'\n | 'CAT_B'\n | 'CAT_C'\n | 'CAT_D'\n | 'CAT_E'\n | 'CAT_H';\n\nexport type SpecialHandlingIndicators = {\n icaoSTSIndicators?: Array<ICAOSTSIndicator>;\n eurSTSIndicators?: Array<EURSTSIndicator>;\n};\n\nexport type ICAOSTSIndicator =\n | 'ALTRV'\n | 'ATFMX'\n | 'FFR'\n | 'FLTCK'\n | 'HAZMAT'\n | 'HEAD'\n | 'HOSP'\n | 'HUM'\n | 'MARSA'\n | 'MEDEVAC'\n | 'NONRVSM'\n | 'SAR'\n | 'STATE';\n\nexport type EURSTSIndicator =\n | 'CPDLCX'\n | 'EXM833'\n | 'PROTECTED'\n | 'RNAVINOP'\n | 'RNAVX'\n | 'OAT';\n\nexport type AircraftOperatorName_DataType = string;\n\nexport type SurveillanceEquipment = {\n modeA?: EquipmentStatus;\n modeAAndC?: EquipmentStatus;\n modeS?: EquipmentStatus;\n modeSCapabilities?: ModeSCapabilities;\n adsb1900Out?: EquipmentStatus;\n adsb1900OutInt?: EquipmentStatus;\n adsbOutUAT?: EquipmentStatus;\n adsbOutInUAT?: EquipmentStatus;\n adsbOutVDL4?: EquipmentStatus;\n adsbOutInVDL4?: EquipmentStatus;\n adscFans?: EquipmentStatus;\n adscAtn?: EquipmentStatus;\n};\n\nexport type ModeSCapabilities = {\n aircraftIdentification?: EquipmentStatus;\n pressureAltitude?: EquipmentStatus;\n extendedSquitterADSB?: EquipmentStatus;\n enhancedSurveillance?: EquipmentStatus;\n};\n\nexport type FlightType =\n | 'GENERAL'\n | 'MILITARY'\n | 'NOT_SCHEDULED'\n | 'OTHER'\n | 'SCHEDULED';\n\nexport type EnrouteDelay = {\n delay?: DurationHourMinute;\n point?: ICAOPoint;\n};\n\nexport type FlightRules = 'IFR' | 'IFR_THEN_VFR' | 'VFR' | 'VFR_THEN_IFR';\n\nexport type EstimatedElapsedTimeAtLocation = {\n elapsedTime: DurationHourMinute;\n fir?: FIRICAOId;\n point?: ICAOPoint;\n latitude?: Latitude;\n longitude?: Longitude;\n};\n\nexport interface CDM {\n status:\n | 'ACTUAL_OFFBLOCK'\n | 'DEPARTING_FROM_CDM_AIRPORT'\n | 'DEPARTING_FROM_STANDARD_AIRPORT'\n | 'ESTIMATED'\n | 'PREDICTED'\n | 'PRE_SEQUENCED'\n | 'TARGETED';\n airportType: DepartureAirportType;\n info?: CDMInfo;\n}\n\nexport type DepartureAirportType = 'STANDARD' | 'ADVANCED_ATC_TWR' | 'CDM';\n\nexport interface CDMInfo {\n turnaroundTargetTakeOffTime?: DateTimeMinute;\n earliestTargetTakeOffTime?: DateTimeMinute;\n consolidatedTargetTakeOffTime?: DateTimeMinute;\n atcTargetTakeOffTime?: DateTimeMinute;\n taxiTime?: DurationHourMinuteSecond;\n offBlockTimeDiscrepancy: boolean;\n flightStatusOutbound?: ATVFlightStatusOutbound;\n departureProc?: TerminalProcedure;\n departureRunway?: RunwayId; // TODO\n departureTerminal?: TerminalOrApronStandName;\n departureApronStand?: TerminalOrApronStandName; // TODO\n aircraftTypeDiscrepancy: boolean;\n aircraftType?: AircraftType; // TODO\n aircraftTypeIATA?: AircraftTypeIATAId; // TODO\n registrationMark?: AircraftRegistrationMark; // TODO\n registrationMarkDiscrepancy?: boolean;\n departureStatus: DepartureStatus;\n targetOffBlockTime?: DateTimeMinute;\n targetStartupApprovalTime?: DateTimeMinute;\n aircraftIdInbound?: AircraftICAOId;\n ifplIdInbound?: IFPLId;\n registrationMarkInbound?: AircraftRegistrationMark;\n cancelReason?: ReasonForDPICancellation;\n}\n\n// (UALPHA|DIGIT){1,6}\nexport type TerminalOrApronStandName = string;\n\n// (UALPHA|DIGIT){3}\nexport type AircraftTypeIATAId = string;\n\nexport type ReasonForDPICancellation =\n | 'FLIGHT_CANCEL_IN_AODB'\n | 'FLIGHT_PLAN_INVALID'\n | 'NO_AIRPORT_SLOT'\n | 'RETURN_TO_STAND'\n | 'TOBT_UNKNOWN_OR_EXPIRED'\n | 'TSAT_EXPIRED'\n | 'UNDEFINED'\n | 'UNDO_ADPI';\n\nexport type ATVFlightStatusOutbound =\n | 'BRC'\n | 'BRD'\n | 'CNX'\n | 'DEI'\n | 'DEP'\n | 'INI'\n | 'OBK'\n | 'RDI'\n | 'RDY'\n | 'RET'\n | 'RPO'\n | 'RTN'\n | 'SCH'\n | 'TXD';\n\nexport type ATVFlightStatusInbound =\n | 'AIR'\n | 'CNX'\n | 'DBC'\n | 'BDR'\n | 'DIV'\n | 'FIR'\n | 'FNL'\n | 'GOA'\n | 'IBK'\n | 'IDH'\n | 'INI'\n | 'SCH'\n | 'TMA'\n | 'TXI';\n\nexport type DepartureStatus = 'OK' | 'DEICING';\n\nexport interface ExclusionFromRegulations {\n onTrafficVolume?: boolean;\n count?: number;\n all?: boolean;\n hasBeenExcluded: boolean;\n}\n\nexport interface ReroutingReference {\n name?: string; // ANY{1,14}\n validTo?: DateTimeMinute;\n}\n\nexport interface DepartureTolerance {\n toleranceWindow: TimeHourMinutePeriod;\n extended: boolean;\n}\n\nexport interface FlightPoint {\n timeOver: DateTimeSecond;\n flightLevel: FlightLevel;\n entryTrend: FlightTrend;\n exitTrend: FlightTrend;\n associatedRouteOrTerminalProcedure?: RouteOrTerminalProcedure;\n coveredDistance: DistanceNM;\n isVisible: boolean;\n aerodrome?: AerodromeICAOId;\n point?: ICAOPoint;\n flightPlanPoint?: boolean;\n}\n\nexport interface FlightAirspace {\n airspaceId: AirspaceId;\n airspaceType: AirspaceType;\n firstEntryTime: DateTimeSecond;\n firstEntryFlightLevel: FlightLevel;\n lastExitFlightLevel: FlightLevel;\n firstEntryTrend: FlightTrend;\n middleTrend: FlightTrend;\n firstEntryDistance: DistanceNM;\n lastExitTime: DateTimeSecond;\n lastExitTrend: FlightTrend;\n lastExitDistance: DistanceNM;\n occupancyDuration: DurationHourMinuteSecond;\n occupancyDistance: DistanceNM;\n activated: boolean;\n}\n\nexport interface RequestedFlightLevel {\n flightLevel: FlightLevel;\n segmentSequenceNumber: number;\n relativeDistance: number;\n}\n\nexport interface FlightEvent {\n timestamp: DateTimeSecond;\n type: FlightEventType;\n resultingState: FlightState;\n resultingOffBlockTime: DateTimeMinute;\n efdSent: boolean;\n fumSent: boolean;\n}\n\nexport type FlightEventType = string; // TODO: disjoint union, too many to list !\n\nexport interface FlightOperationalLogEntry {\n timestamp?: DateTimeSecond;\n type?: FlightOperationalLogEntryType;\n etfmsId?: number;\n ifplId?: IFPLId;\n issuer?: string;\n message?: string;\n summaryFields?: string[];\n}\n\nexport type FlightOperationalLogEntryType =\n | 'ENVIRONMENT_MESSAGE'\n | 'ERRONEOUS_INCOMING_MESSAGE'\n | 'ERROR_MESSAGE'\n | 'HISTORY'\n | 'INCOMING_MESSAGE'\n | 'OUTGOING_MESSAGE'\n | 'PROCESS_ERROR'\n | 'TEXT_MESSAGE'\n | 'UNDEFINED'\n | 'USER_COMMAND'\n | 'VIOLATION'\n | 'WARNING';\n\nexport interface EquipmentCapabilityAndStatus {\n gbas?: EquipmentStatus;\n lvp?: EquipmentStatus;\n loranC?: EquipmentStatus;\n dme?: EquipmentStatus;\n fmcWprAcars?: EquipmentStatus;\n dFisAcars?: EquipmentStatus;\n pdcAcars?: EquipmentStatus;\n adf?: EquipmentStatus;\n gnss?: EquipmentStatus;\n hfRtf?: EquipmentStatus;\n inertialNavigation?: EquipmentStatus;\n cpdlcAtnVdlMode2?: EquipmentStatus;\n cpdlcFans1AHFDL?: EquipmentStatus;\n cpdlcFans1AVdlModeA?: EquipmentStatus;\n cpdlcFans1AVdlMode2?: EquipmentStatus;\n cpdlcFans1ASatcomInmarsat?: EquipmentStatus;\n cpdlcFans1ASatcomMtsat?: EquipmentStatus;\n cpdlcFans1ASatcomIridium?: EquipmentStatus;\n mls?: EquipmentStatus;\n ils?: EquipmentStatus;\n atcRtfSatcomInmarsat?: EquipmentStatus;\n atcRtfSatcomMtsat?: EquipmentStatus;\n atcRtfSatcomIridium?: EquipmentStatus;\n vor?: EquipmentStatus;\n rcp1?: EquipmentStatus;\n rcp2?: EquipmentStatus;\n rcp3?: EquipmentStatus;\n rcp4?: EquipmentStatus;\n rcp5?: EquipmentStatus;\n rcp6?: EquipmentStatus;\n rcp7?: EquipmentStatus;\n rcp8?: EquipmentStatus;\n rcp9?: EquipmentStatus;\n pbnApproved?: EquipmentStatus;\n standard?: EquipmentStatus;\n tacan?: EquipmentStatus;\n uhfRtf?: EquipmentStatus;\n vhfRtf?: EquipmentStatus;\n rvsm?: EquipmentStatus;\n mnps?: EquipmentStatus;\n khz833?: EquipmentStatus;\n other?: EquipmentStatus;\n}\n\nexport type EquipmentStatus = 'EQUIPPED' | 'NOT_EQUIPPED';\n\nexport interface FlightRestriction {\n timeOver: DateTimeSecond;\n coveredDistance: DistanceNM;\n flightPlanProcessing: FlightPlanProcessing;\n restrictionId: RestrictionId;\n event: EntryExit;\n position: CommonPosition;\n flightLevel: FlightLevel;\n}\n\nexport type EntryExit = 'ENTRY' | 'EXIT';\nexport type CfmuFlightType =\n /**\n * Mini-flight created for the usage of CCAMS when the flight is unknown to NM.\n */\n | 'MFD'\n /**\n * Flight created from a flight plan filed to IFPS.\n */\n | 'IFPL'\n /**\n * Flight is ATC activated.\n */\n | 'ACT'\n /**\n * Flight activated by NM.\n */\n | 'TACT_ACTIVATED'\n /**\n * Flight is terminated.\n */\n | 'TERMINATED'\n /**\n * Predicted flight data.\n */\n | 'PREDICTED_FLIGHT';\n\nexport type LoadStateAtReferenceLocation =\n | { ENTRY: LoadState }\n | { OCCUPANCY: OtmvStatus };\n\nexport interface DeltaEntry {\n intruderKind: IntruderKind;\n originOfIntruder?: AirspaceId;\n deltaMinutes: number;\n deltaFlightLevel: number;\n deltaPosition: DistanceNM;\n}\n\nexport type IntruderKind =\n | 'HORIZONTAL_INTRUDER'\n | 'unknown_INTRUDER'\n | 'NON_INTRUDER'\n | 'VERTICAL_INTRUDER';\n\nexport type CTOTLimitReason =\n | 'FORCED_BY_CHAMAN'\n | 'FORCED_BY_NMOC'\n | 'FORCED_BY_STAM_MEASURE'\n | 'FORCED_BY_TOWER'\n | 'LIMITED_BY_VIOLATION'\n | 'LIMITED_BY_VIOLATION_THEN_ZERO_RATE_OR_RVR'\n | 'SLOT_EXTENSION'\n | 'SLOT_TIME_NOT_LIMITED'\n | 'WAS_FORCED_BY_NMOC';\n\nexport interface ProfileValidity {\n profileValidityKind: ProfileValidityKind;\n lastValidEOBT: DateTimeMinute;\n}\nexport type ProfileValidityKind = 'NO_VIOLATIONS' | 'UNKNOWN' | 'VIOLATIONS';\n\nexport interface TargetTime {\n regulationId: RegulationId;\n targetTime: DateTimeSecond;\n targetLevel: FlightLevel;\n aerodromeICAOId?: AerodromeICAOId;\n point?: ICAOPoint;\n flightPlanPoint?: boolean;\n coveredDistance: DistanceNM;\n actualTimeAtTarget?: ActualTimeAtTarget;\n}\n\nexport interface FourDPosition {\n timeOver: DateTimeSecond;\n position: Position;\n level: FlightLevel;\n}\n\nexport interface Position {\n latitude?: Latitude;\n longitude?: Longitude;\n}\n\nexport type Latitude = number;\nexport type Longitude = number;\n\nexport interface ActualTimeAtTarget {\n estimatedActualTimeAtTarget: DateTimeSecond;\n targetTimeCompliance: IntervalPosition;\n}\nexport type IntervalPosition = 'AFTER' | 'BEFORE' | 'INSIDE';\n\nexport interface FlightListRequest {\n dataset: Dataset;\n includeProposalFlights: boolean;\n includeForecastFlights: boolean;\n trafficType: TrafficType;\n trafficWindow?: DateTimeMinutePeriod;\n worstLoadStateAtReferenceLocationType?: CountsCalculationType;\n compareWithOtherTrafficType?: TrafficType;\n requestedFlightFields?: FlightField[];\n}\n\nexport interface FlightListByLocationRequest extends FlightListRequest {\n countsInterval?: CountsInterval;\n aircraftOperators?: AircraftOperatorICAOId[];\n includeInvisibleFlights?: boolean;\n}\n\nexport interface FlightListByAirspaceRequest extends FlightListRequest {\n calculationType?: CountsCalculationType;\n airspace: AirspaceId;\n}\n\nexport type FlightOrFlightPlan =\n | { flight: Flight }\n | { flightPlan: FlightPlanOrInvalidFiling };\n\nexport type FlightPlanOrInvalidFiling =\n | { lastValidFlightPlan: FlightPlanSummary }\n | { currentInvalid: InvalidFiling };\n\nexport interface FlightPlanSummary {\n id: FlightIdentificationOutput;\n status: FlightPlanStatus;\n}\nexport type FlightPlanStatus =\n | 'AIRBORNE'\n | 'BACKUP'\n | 'CLOSED'\n | 'FILED'\n | 'OFFBLOCKS'\n | 'SUSPENDED'\n | 'TACT_DELETED'\n | 'TERMINATED';\n\nexport type FlightPlanMessageType =\n | 'ACH'\n | 'AFP'\n | 'APL'\n | 'ARR'\n | 'CHG'\n | 'CNL'\n | 'DEP'\n | 'DLA'\n | 'FNM'\n | 'FPL'\n | 'MFS'\n | 'RQP'\n | 'RQS';\n\nexport type FlightPlanMessageStatus =\n | 'DELETED'\n | 'DISCARD'\n | 'INVALID'\n | 'MULTIPLE'\n | 'REFERRED'\n | 'REJECTED';\n\nexport interface InvalidFiling {\n filingTime: DateTimeSecond;\n invalidMessageType: FlightPlanMessageType;\n invalidMessageStatus: FlightPlanMessageStatus;\n keys?: FlightKeys;\n}\n\nexport interface FlightListReplyData {\n flights?: Array<FlightOrFlightPlan>;\n}\n\nexport interface FlightListByLocationReplyData extends FlightListReplyData {\n effectiveTrafficWindow: DateTimeMinutePeriod;\n}\n\nexport type FlightListByAirspaceReply =\n ReplyWithData<FlightListByAirspaceReplyData>;\n\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport interface FlightListByAirspaceReplyData\n extends FlightListByLocationReplyData {}\n\nexport interface FlightPlanListRequest {\n aircraftId?: string;\n aerodromeOfDeparture?: string;\n nonICAOAerodromeOfDeparture: boolean;\n airFiled: boolean;\n aerodromeOfDestination?: string;\n nonICAOAerodromeOfDestination: boolean;\n estimatedOffBlockTime: DateTimeMinutePeriod;\n}\n\nexport type FlightPlanListReply = ReplyWithData<FlightPlanListReplyData>;\n\nexport type FlightPlanListReplyData = {\n summaries: FlightPlanOrInvalidFiling[];\n};\n\nexport interface FlightRetrievalRequest {\n dataset: Dataset;\n includeProposalFlights: boolean;\n flightId: FlightIdentificationInput;\n requestedFlightDatasets: FlightDataset[];\n requestedFlightFields?: FlightField[];\n}\n\nexport type FlightRetrievalReply = ReplyWithData<FlightRetrievalReplyData>;\n\nexport type FlightRetrievalReplyData = {\n latestFlightPlan?: FlightPlanOutput;\n flightPlanHistory?: FlightPlanHistory;\n flight?: Flight;\n structuredFlightPlan?: StructuredFlightPlan;\n};\n\nexport interface FlightListByTrafficVolumeRequest\n extends FlightListByLocationRequest {\n calculationType?: CountsCalculationType;\n trafficVolume: TrafficVolumeId;\n flow?: FlowId;\n}\n\nexport type FlightListByTrafficVolumeReply =\n ReplyWithData<FlightListByTrafficVolumeReplyData>;\n\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport interface FlightListByTrafficVolumeReplyData\n extends FlightListByLocationReplyData {}\n\nexport interface FlightListByMeasureRequest\n extends FlightListByLocationRequest {\n measure: MeasureId;\n mode: FlightListByMeasureMode;\n}\n\nexport type FlightListByMeasureMode =\n | 'ACTIVATED_BY_MEASURE'\n | 'CONCERNED_BY_MEASURE';\n\nexport type FlightListByMeasureReply =\n ReplyWithData<FlightListByMeasureReplyData>;\n\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport interface FlightListByMeasureReplyData\n extends FlightListByLocationReplyData {}\n\nexport interface FlightListByAerodromeRequest\n extends FlightListByLocationRequest {\n aerodrome: AerodromeICAOId;\n aerodromeRole: AerodromeRole;\n}\n\nexport type AerodromeRole =\n /**\n * The aerodrome is meant as of departure.\n */\n | 'DEPARTURE'\n /**\n * The aerodrome is meat as of arrival.\n */\n | 'ARRIVAL'\n /**\n * The aerodrome is meat as of departure or arrival.\n */\n | 'GLOBAL'\n /**\n * The aerodrome is meat as of alternate.\n */\n | 'ALTERNATE';\n\nexport type FlightListByAerodromeReply =\n ReplyWithData<FlightListByAerodromeReplyData>;\n\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport interface FlightListByAerodromeReplyData\n extends FlightListByLocationReplyData {}\n\nexport interface FlightListByAerodromeSetRequest\n extends FlightListByLocationRequest {\n aerodromeSet: AerodromeSetId;\n aerodromeRole: AerodromeRole;\n}\n\nexport type FlightListByAerodromeSetReply =\n ReplyWithData<FlightListByAerodromeSetReplyData>;\n\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport interface FlightListByAerodromeSetReplyData\n extends FlightListByLocationReplyData {}\n\nexport interface FlightListByAircraftOperatorRequest\n extends FlightListByLocationRequest {\n calculationType?: CountsCalculationType;\n}\n\nexport type FlightListByAircraftOperatorReply =\n ReplyWithData<FlightListByAircraftOperatorReplyData>;\n\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport interface FlightListByAircraftOperatorReplyData\n extends FlightListByLocationReplyData {}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}