pub mod abstract_booking_part;
pub use self::abstract_booking_part::AbstractBookingPart;
pub mod abstract_offer_part;
pub use self::abstract_offer_part::AbstractOfferPart;
pub mod abstract_transportable_vehicle_specification;
pub use self::abstract_transportable_vehicle_specification::AbstractTransportableVehicleSpecification;
pub mod abstract_travel_account;
pub use self::abstract_travel_account::AbstractTravelAccount;
pub mod abstract_travel_account_unit;
pub use self::abstract_travel_account_unit::AbstractTravelAccountUnit;
pub mod accounting_ref;
pub use self::accounting_ref::AccountingRef;
pub mod additional_offer_collection_response;
pub use self::additional_offer_collection_response::AdditionalOfferCollectionResponse;
pub mod address;
pub use self::address::Address;
pub mod address_ref;
pub use self::address_ref::AddressRef;
pub mod admission;
pub use self::admission::Admission;
pub mod admission_offer_part;
pub use self::admission_offer_part::AdmissionOfferPart;
pub mod after_sale_condition;
pub use self::after_sale_condition::AfterSaleCondition;
pub mod after_sales_conditions_link;
pub use self::after_sales_conditions_link::AfterSalesConditionsLink;
pub mod after_sales_override_details;
pub use self::after_sales_override_details::AfterSalesOverrideDetails;
pub mod alight;
pub use self::alight::Alight;
pub mod alight_specification;
pub use self::alight_specification::AlightSpecification;
pub mod ancillary;
pub use self::ancillary::Ancillary;
pub mod ancillary_group;
pub use self::ancillary_group::AncillaryGroup;
pub mod ancillary_offer_part;
pub use self::ancillary_offer_part::AncillaryOfferPart;
pub mod ancillary_relation;
pub use self::ancillary_relation::AncillaryRelation;
pub mod ancillary_selection;
pub use self::ancillary_selection::AncillarySelection;
pub mod anonymous_passenger_specification;
pub use self::anonymous_passenger_specification::AnonymousPassengerSpecification;
pub mod api_next_version;
pub use self::api_next_version::ApiNextVersion;
pub mod api_version;
pub use self::api_version::ApiVersion;
pub mod applied_passenger_type;
pub use self::applied_passenger_type::AppliedPassengerType;
pub mod availability_scope;
pub use self::availability_scope::AvailabilityScope;
pub mod availability_status;
pub use self::availability_status::AvailabilityStatus;
pub mod available_place;
pub use self::available_place::AvailablePlace;
pub mod available_place_preferences;
pub use self::available_place_preferences::AvailablePlacePreferences;
pub mod back_office_status;
pub use self::back_office_status::BackOfficeStatus;
pub mod bank_account_reference;
pub use self::bank_account_reference::BankAccountReference;
pub mod base_trip_policy_filter;
pub use self::base_trip_policy_filter::BaseTripPolicyFilter;
pub mod board;
pub use self::board::Board;
pub mod board_specification;
pub use self::board_specification::BoardSpecification;
pub mod booked_offer;
pub use self::booked_offer::BookedOffer;
pub mod booked_offer_ancillary_request;
pub use self::booked_offer_ancillary_request::BookedOfferAncillaryRequest;
pub mod booked_offer_ancillary_response;
pub use self::booked_offer_ancillary_response::BookedOfferAncillaryResponse;
pub mod booked_offer_part_delete_request;
pub use self::booked_offer_part_delete_request::BookedOfferPartDeleteRequest;
pub mod booked_offer_part_request;
pub use self::booked_offer_part_request::BookedOfferPartRequest;
pub mod booked_offer_part_response;
pub use self::booked_offer_part_response::BookedOfferPartResponse;
pub mod booked_offer_request;
pub use self::booked_offer_request::BookedOfferRequest;
pub mod booked_offer_reservation_request;
pub use self::booked_offer_reservation_request::BookedOfferReservationRequest;
pub mod booked_offer_reservation_response;
pub use self::booked_offer_reservation_response::BookedOfferReservationResponse;
pub mod booked_offer_response;
pub use self::booked_offer_response::BookedOfferResponse;
pub mod booked_offer_summary;
pub use self::booked_offer_summary::BookedOfferSummary;
pub mod booking;
pub use self::booking::Booking;
pub mod booking_cleanup_request;
pub use self::booking_cleanup_request::BookingCleanupRequest;
pub mod booking_history_response;
pub use self::booking_history_response::BookingHistoryResponse;
pub mod booking_part_reference;
pub use self::booking_part_reference::BookingPartReference;
pub mod booking_part_status;
pub use self::booking_part_status::BookingPartStatus;
pub mod booking_part_summary;
pub use self::booking_part_summary::BookingPartSummary;
pub mod booking_part_type;
pub use self::booking_part_type::BookingPartType;
pub mod booking_patch_request;
pub use self::booking_patch_request::BookingPatchRequest;
pub mod booking_request;
pub use self::booking_request::BookingRequest;
pub mod booking_response;
pub use self::booking_response::BookingResponse;
pub mod booking_response_content;
pub use self::booking_response_content::BookingResponseContent;
pub mod booking_search_parameters;
pub use self::booking_search_parameters::BookingSearchParameters;
pub mod booking_search_request;
pub use self::booking_search_request::BookingSearchRequest;
pub mod booking_search_response;
pub use self::booking_search_response::BookingSearchResponse;
pub mod booking_search_result;
pub use self::booking_search_result::BookingSearchResult;
pub mod booking_split;
pub use self::booking_split::BookingSplit;
pub mod booking_split_group;
pub use self::booking_split_group::BookingSplitGroup;
pub mod booking_split_request;
pub use self::booking_split_request::BookingSplitRequest;
pub mod booking_split_response;
pub use self::booking_split_response::BookingSplitResponse;
pub mod booking_split_result;
pub use self::booking_split_result::BookingSplitResult;
pub mod border_radius;
pub use self::border_radius::BorderRadius;
pub mod calendar;
pub use self::calendar::Calendar;
pub mod cancel_fulfillments_offer;
pub use self::cancel_fulfillments_offer::CancelFulfillmentsOffer;
pub mod cancel_fulfillments_offer_collection_response;
pub use self::cancel_fulfillments_offer_collection_response::CancelFulfillmentsOfferCollectionResponse;
pub mod cancel_fulfillments_offer_patch_request;
pub use self::cancel_fulfillments_offer_patch_request::CancelFulfillmentsOfferPatchRequest;
pub mod cancel_fulfillments_offer_request;
pub use self::cancel_fulfillments_offer_request::CancelFulfillmentsOfferRequest;
pub mod cancel_fulfillments_offer_response;
pub use self::cancel_fulfillments_offer_response::CancelFulfillmentsOfferResponse;
pub mod cancel_fulfillments_status;
pub use self::cancel_fulfillments_status::CancelFulfillmentsStatus;
pub mod car;
pub use self::car::Car;
pub mod car_rack;
pub use self::car_rack::CarRack;
pub mod car_specification;
pub use self::car_specification::CarSpecification;
pub mod card_reference;
pub use self::card_reference::CardReference;
pub mod card_type_reference;
pub use self::card_type_reference::CardTypeReference;
pub mod carrier_constraint;
pub use self::carrier_constraint::CarrierConstraint;
pub mod carrier_filter;
pub use self::carrier_filter::CarrierFilter;
pub mod claimed_journey_details;
pub use self::claimed_journey_details::ClaimedJourneyDetails;
pub mod claimed_leg;
pub use self::claimed_leg::ClaimedLeg;
pub mod coach;
pub use self::coach::Coach;
pub mod coach_availability;
pub use self::coach_availability::CoachAvailability;
pub mod coach_deck_layout;
pub use self::coach_deck_layout::CoachDeckLayout;
pub mod coach_deck_layout_collection_response;
pub use self::coach_deck_layout_collection_response::CoachDeckLayoutCollectionResponse;
pub mod coach_deck_layout_response;
pub use self::coach_deck_layout_response::CoachDeckLayoutResponse;
pub mod coach_layout;
pub use self::coach_layout::CoachLayout;
pub mod coach_layout_collection_response;
pub use self::coach_layout_collection_response::CoachLayoutCollectionResponse;
pub mod coach_layout_compartment_number;
pub use self::coach_layout_compartment_number::CoachLayoutCompartmentNumber;
pub mod coach_layout_directed_internal;
pub use self::coach_layout_directed_internal::CoachLayoutDirectedInternal;
pub mod coach_layout_grid_size;
pub use self::coach_layout_grid_size::CoachLayoutGridSize;
pub mod coach_layout_internal;
pub use self::coach_layout_internal::CoachLayoutInternal;
pub mod coach_layout_place;
pub use self::coach_layout_place::CoachLayoutPlace;
pub mod coach_layout_response;
pub use self::coach_layout_response::CoachLayoutResponse;
pub mod coach_layout_sign;
pub use self::coach_layout_sign::CoachLayoutSign;
pub mod combination_tag;
pub use self::combination_tag::CombinationTag;
pub mod company_detail;
pub use self::company_detail::CompanyDetail;
pub mod compartment;
pub use self::compartment::Compartment;
pub mod compartment_availability;
pub use self::compartment_availability::CompartmentAvailability;
pub mod compartment_pre_selection;
pub use self::compartment_pre_selection::CompartmentPreSelection;
pub mod complaint;
pub use self::complaint::Complaint;
pub mod complaint_decision;
pub use self::complaint_decision::ComplaintDecision;
pub mod complaint_patch_request;
pub use self::complaint_patch_request::ComplaintPatchRequest;
pub mod complaint_response;
pub use self::complaint_response::ComplaintResponse;
pub mod condition;
pub use self::condition::Condition;
pub mod contact_detail;
pub use self::contact_detail::ContactDetail;
pub mod context_type;
pub use self::context_type::ContextType;
pub mod continuous_leg;
pub use self::continuous_leg::ContinuousLeg;
pub mod continuous_service;
pub use self::continuous_service::ContinuousService;
pub mod continuous_service_availability_scope;
pub use self::continuous_service_availability_scope::ContinuousServiceAvailabilityScope;
pub mod continuous_service_booking_part;
pub use self::continuous_service_booking_part::ContinuousServiceBookingPart;
pub mod continuous_service_offer_part;
pub use self::continuous_service_offer_part::ContinuousServiceOfferPart;
pub mod continuous_service_pick_up_place;
pub use self::continuous_service_pick_up_place::ContinuousServicePickUpPlace;
pub mod continuous_service_usage;
pub use self::continuous_service_usage::ContinuousServiceUsage;
pub mod continuous_service_usage_patch_request;
pub use self::continuous_service_usage_patch_request::ContinuousServiceUsagePatchRequest;
pub mod continuous_service_vehicle_availability;
pub use self::continuous_service_vehicle_availability::ContinuousServiceVehicleAvailability;
pub mod continuous_service_vehicle_selection;
pub use self::continuous_service_vehicle_selection::ContinuousServiceVehicleSelection;
pub mod continuous_services_availability_response;
pub use self::continuous_services_availability_response::ContinuousServicesAvailabilityResponse;
pub mod corporate_code;
pub use self::corporate_code::CorporateCode;
pub mod currency_conversion;
pub use self::currency_conversion::CurrencyConversion;
pub mod customer_complaint;
pub use self::customer_complaint::CustomerComplaint;
pub mod date_range;
pub use self::date_range::DateRange;
pub mod dated_journey;
pub use self::dated_journey::DatedJourney;
pub mod day_travel_account_unit;
pub use self::day_travel_account_unit::DayTravelAccountUnit;
pub mod decision_type;
pub use self::decision_type::DecisionType;
pub mod deck_availability;
pub use self::deck_availability::DeckAvailability;
pub mod direction_change;
pub use self::direction_change::DirectionChange;
pub mod direction_type;
pub use self::direction_type::DirectionType;
pub mod document;
pub use self::document::Document;
pub mod document_collection_response;
pub use self::document_collection_response::DocumentCollectionResponse;
pub mod document_format;
pub use self::document_format::DocumentFormat;
pub mod document_request;
pub use self::document_request::DocumentRequest;
pub mod document_response;
pub use self::document_response::DocumentResponse;
pub mod document_scope;
pub use self::document_scope::DocumentScope;
pub mod document_specification;
pub use self::document_specification::DocumentSpecification;
pub mod document_type;
pub use self::document_type::DocumentType;
pub mod event;
pub use self::event::Event;
pub mod event_detail;
pub use self::event_detail::EventDetail;
pub mod event_type;
pub use self::event_type::EventType;
pub mod exchange_breakdown_item;
pub use self::exchange_breakdown_item::ExchangeBreakdownItem;
pub mod exchange_offer;
pub use self::exchange_offer::ExchangeOffer;
pub mod exchange_offer_collection_request;
pub use self::exchange_offer_collection_request::ExchangeOfferCollectionRequest;
pub mod exchange_offer_collection_response;
pub use self::exchange_offer_collection_response::ExchangeOfferCollectionResponse;
pub mod exchange_offer_collection_response_content;
pub use self::exchange_offer_collection_response_content::ExchangeOfferCollectionResponseContent;
pub mod exchange_operation;
pub use self::exchange_operation::ExchangeOperation;
pub mod exchange_operation_patch_request;
pub use self::exchange_operation_patch_request::ExchangeOperationPatchRequest;
pub mod exchange_operation_request;
pub use self::exchange_operation_request::ExchangeOperationRequest;
pub mod exchange_operation_response;
pub use self::exchange_operation_response::ExchangeOperationResponse;
pub mod exchange_operation_response_content;
pub use self::exchange_operation_response_content::ExchangeOperationResponseContent;
pub mod exchange_status;
pub use self::exchange_status::ExchangeStatus;
pub mod exchangeable_type;
pub use self::exchangeable_type::ExchangeableType;
pub mod excluded_time_range;
pub use self::excluded_time_range::ExcludedTimeRange;
pub mod exclusion_scope;
pub use self::exclusion_scope::ExclusionScope;
pub mod fare;
pub use self::fare::Fare;
pub mod fare_combination_model;
pub use self::fare_combination_model::FareCombinationModel;
pub mod fare_connection_point;
pub use self::fare_connection_point::FareConnectionPoint;
pub mod fare_connection_point_ref;
pub use self::fare_connection_point_ref::FareConnectionPointRef;
pub mod fare_reference_station;
pub use self::fare_reference_station::FareReferenceStation;
pub mod fee;
pub use self::fee::Fee;
pub mod fee_status;
pub use self::fee_status::FeeStatus;
pub mod fulfillment;
pub use self::fulfillment::Fulfillment;
pub mod fulfillment_activation_patch_request;
pub use self::fulfillment_activation_patch_request::FulfillmentActivationPatchRequest;
pub mod fulfillment_collection_response;
pub use self::fulfillment_collection_response::FulfillmentCollectionResponse;
pub mod fulfillment_constraint;
pub use self::fulfillment_constraint::FulfillmentConstraint;
pub mod fulfillment_document;
pub use self::fulfillment_document::FulfillmentDocument;
pub mod fulfillment_item_security_feature;
pub use self::fulfillment_item_security_feature::FulfillmentItemSecurityFeature;
pub mod fulfillment_item_security_feature_links;
pub use self::fulfillment_item_security_feature_links::FulfillmentItemSecurityFeatureLinks;
pub mod fulfillment_option;
pub use self::fulfillment_option::FulfillmentOption;
pub mod fulfillment_part;
pub use self::fulfillment_part::FulfillmentPart;
pub mod fulfillment_patch_request;
pub use self::fulfillment_patch_request::FulfillmentPatchRequest;
pub mod fulfillment_post_request;
pub use self::fulfillment_post_request::FulfillmentPostRequest;
pub mod fulfillment_response;
pub use self::fulfillment_response::FulfillmentResponse;
pub mod fulfillment_status;
pub use self::fulfillment_status::FulfillmentStatus;
pub mod fulfillment_usage;
pub use self::fulfillment_usage::FulfillmentUsage;
pub mod gender;
pub use self::gender::Gender;
pub mod general_attribute;
pub use self::general_attribute::GeneralAttribute;
pub mod geo_position;
pub use self::geo_position::GeoPosition;
pub mod geo_position_ref;
pub use self::geo_position_ref::GeoPositionRef;
pub mod granted_reduction_amount;
pub use self::granted_reduction_amount::GrantedReductionAmount;
pub mod granted_reduction_amounts;
pub use self::granted_reduction_amounts::GrantedReductionAmounts;
pub mod graphic_element;
pub use self::graphic_element::GraphicElement;
pub mod grid_dimension;
pub use self::grid_dimension::GridDimension;
pub mod grid_position;
pub use self::grid_position::GridPosition;
pub mod history_status;
pub use self::history_status::HistoryStatus;
pub mod identification_card;
pub use self::identification_card::IdentificationCard;
pub mod indicated_consumption;
pub use self::indicated_consumption::IndicatedConsumption;
pub mod initial_place_input;
pub use self::initial_place_input::InitialPlaceInput;
pub mod intermediate;
pub use self::intermediate::Intermediate;
pub mod intermediate_specification;
pub use self::intermediate_specification::IntermediateSpecification;
pub mod layout_coordinates;
pub use self::layout_coordinates::LayoutCoordinates;
pub mod leg_attribute;
pub use self::leg_attribute::LegAttribute;
pub mod legacy_accounting_identifier;
pub use self::legacy_accounting_identifier::LegacyAccountingIdentifier;
pub mod legacy_reservation_parameter;
pub use self::legacy_reservation_parameter::LegacyReservationParameter;
pub mod legacy_reservation_tariff;
pub use self::legacy_reservation_tariff::LegacyReservationTariff;
pub mod line;
pub use self::line::Line;
pub mod link;
pub use self::link::Link;
pub mod luggage_constraint;
pub use self::luggage_constraint::LuggageConstraint;
pub mod luggage_dimension;
pub use self::luggage_dimension::LuggageDimension;
pub mod luggage_dimension_enum;
pub use self::luggage_dimension_enum::LuggageDimensionEnum;
pub mod luggage_restriction;
pub use self::luggage_restriction::LuggageRestriction;
pub mod luggage_restriction_rule_enum;
pub use self::luggage_restriction_rule_enum::LuggageRestrictionRuleEnum;
pub mod mode;
pub use self::mode::Mode;
pub mod mode_filter;
pub use self::mode_filter::ModeFilter;
pub mod money_travel_account_unit;
pub use self::money_travel_account_unit::MoneyTravelAccountUnit;
pub mod motor_cycle;
pub use self::motor_cycle::MotorCycle;
pub mod motorcycle_specification;
pub use self::motorcycle_specification::MotorcycleSpecification;
pub mod mounting_type;
pub use self::mounting_type::MountingType;
pub mod multi_ride_account;
pub use self::multi_ride_account::MultiRideAccount;
pub mod multi_ride_balance;
pub use self::multi_ride_balance::MultiRideBalance;
pub mod named_company;
pub use self::named_company::NamedCompany;
pub mod named_travel_account_unit;
pub use self::named_travel_account_unit::NamedTravelAccountUnit;
pub mod non_trip_search_criteria;
pub use self::non_trip_search_criteria::NonTripSearchCriteria;
pub mod not_via;
pub use self::not_via::NotVia;
pub mod offer;
pub use self::offer::Offer;
pub mod offer_collection_request;
pub use self::offer_collection_request::OfferCollectionRequest;
pub mod offer_collection_response;
pub use self::offer_collection_response::OfferCollectionResponse;
pub mod offer_collection_response_content;
pub use self::offer_collection_response_content::OfferCollectionResponseContent;
pub mod offer_mode;
pub use self::offer_mode::OfferMode;
pub mod offer_overview_route;
pub use self::offer_overview_route::OfferOverviewRoute;
pub mod offer_overview_route_request;
pub use self::offer_overview_route_request::OfferOverviewRouteRequest;
pub mod offer_overview_route_response;
pub use self::offer_overview_route_response::OfferOverviewRouteResponse;
pub mod offer_overview_trip;
pub use self::offer_overview_trip::OfferOverviewTrip;
pub mod offer_overview_trip_request;
pub use self::offer_overview_trip_request::OfferOverviewTripRequest;
pub mod offer_overview_trip_response;
pub use self::offer_overview_trip_response::OfferOverviewTripResponse;
pub mod offer_part_reference;
pub use self::offer_part_reference::OfferPartReference;
pub mod offer_part_type;
pub use self::offer_part_type::OfferPartType;
pub mod offer_search_criteria;
pub use self::offer_search_criteria::OfferSearchCriteria;
pub mod offer_selection;
pub use self::offer_selection::OfferSelection;
pub mod offer_summary;
pub use self::offer_summary::OfferSummary;
pub mod offer_tag;
pub use self::offer_tag::OfferTag;
pub mod on_hold_offer;
pub use self::on_hold_offer::OnHoldOffer;
pub mod on_hold_offer_request;
pub use self::on_hold_offer_request::OnHoldOfferRequest;
pub mod on_hold_offer_response;
pub use self::on_hold_offer_response::OnHoldOfferResponse;
pub mod operating_days;
pub use self::operating_days::OperatingDays;
pub mod osm_tag;
pub use self::osm_tag::OsmTag;
pub mod part_reference;
pub use self::part_reference::PartReference;
pub mod passenger;
pub use self::passenger::Passenger;
pub mod passenger_category;
pub use self::passenger_category::PassengerCategory;
pub mod passenger_constraints;
pub use self::passenger_constraints::PassengerConstraints;
pub mod passenger_response;
pub use self::passenger_response::PassengerResponse;
pub mod passenger_search_request;
pub use self::passenger_search_request::PassengerSearchRequest;
pub mod passenger_specification;
pub use self::passenger_specification::PassengerSpecification;
pub mod passengers_batch_update_request;
pub use self::passengers_batch_update_request::PassengersBatchUpdateRequest;
pub mod passengers_collection_response;
pub use self::passengers_collection_response::PassengersCollectionResponse;
pub mod payment_method;
pub use self::payment_method::PaymentMethod;
pub mod person_detail;
pub use self::person_detail::PersonDetail;
pub mod place;
pub use self::place::Place;
pub mod place_allocation;
pub use self::place_allocation::PlaceAllocation;
pub mod place_availability;
pub use self::place_availability::PlaceAvailability;
pub mod place_availability_collection_response;
pub use self::place_availability_collection_response::PlaceAvailabilityCollectionResponse;
pub mod place_availability_map_request;
pub use self::place_availability_map_request::PlaceAvailabilityMapRequest;
pub mod place_availability_map_response;
pub use self::place_availability_map_response::PlaceAvailabilityMapResponse;
pub mod place_availability_response;
pub use self::place_availability_response::PlaceAvailabilityResponse;
pub mod place_group;
pub use self::place_group::PlaceGroup;
pub mod place_layout;
pub use self::place_layout::PlaceLayout;
pub mod place_param;
pub use self::place_param::PlaceParam;
pub mod place_position;
pub use self::place_position::PlacePosition;
pub mod place_pre_selection;
pub use self::place_pre_selection::PlacePreSelection;
pub mod place_preference_group;
pub use self::place_preference_group::PlacePreferenceGroup;
pub mod place_ref;
pub use self::place_ref::PlaceRef;
pub mod place_request;
pub use self::place_request::PlaceRequest;
pub mod place_response;
pub use self::place_response::PlaceResponse;
pub mod place_restriction;
pub use self::place_restriction::PlaceRestriction;
pub mod place_selection;
pub use self::place_selection::PlaceSelection;
pub mod place_type;
pub use self::place_type::PlaceType;
pub mod place_usage;
pub use self::place_usage::PlaceUsage;
pub mod point_of_interest;
pub use self::point_of_interest::PointOfInterest;
pub mod point_of_interest_category;
pub use self::point_of_interest_category::PointOfInterestCategory;
pub mod point_of_interest_filter;
pub use self::point_of_interest_filter::PointOfInterestFilter;
pub mod point_of_interest_ref;
pub use self::point_of_interest_ref::PointOfInterestRef;
pub mod polygon;
pub use self::polygon::Polygon;
pub mod postal_address;
pub use self::postal_address::PostalAddress;
pub mod price;
pub use self::price::Price;
pub mod problem;
pub use self::problem::Problem;
pub mod problem_pointer;
pub use self::problem_pointer::ProblemPointer;
pub mod product;
pub use self::product::Product;
pub mod product_category;
pub use self::product_category::ProductCategory;
pub mod product_collection_response;
pub use self::product_collection_response::ProductCollectionResponse;
pub mod product_leg_association;
pub use self::product_leg_association::ProductLegAssociation;
pub mod product_request_offer_selection;
pub use self::product_request_offer_selection::ProductRequestOfferSelection;
pub mod product_response;
pub use self::product_response::ProductResponse;
pub mod product_search_request;
pub use self::product_search_request::ProductSearchRequest;
pub mod product_search_response;
pub use self::product_search_response::ProductSearchResponse;
pub mod product_summary;
pub use self::product_summary::ProductSummary;
pub mod product_tag_group;
pub use self::product_tag_group::ProductTagGroup;
pub mod product_tag_name;
pub use self::product_tag_name::ProductTagName;
pub mod product_tags_response;
pub use self::product_tags_response::ProductTagsResponse;
pub mod promotion_code;
pub use self::promotion_code::PromotionCode;
pub mod purchaser;
pub use self::purchaser::Purchaser;
pub mod purchaser_response;
pub use self::purchaser_response::PurchaserResponse;
pub mod purchaser_search_request;
pub use self::purchaser_search_request::PurchaserSearchRequest;
pub mod purchaser_specification;
pub use self::purchaser_specification::PurchaserSpecification;
pub mod quantity;
pub use self::quantity::Quantity;
pub mod rectangle_geometry;
pub use self::rectangle_geometry::RectangleGeometry;
pub mod reduction_card_account;
pub use self::reduction_card_account::ReductionCardAccount;
pub mod reduction_card_collection_response;
pub use self::reduction_card_collection_response::ReductionCardCollectionResponse;
pub mod reduction_card_type;
pub use self::reduction_card_type::ReductionCardType;
pub mod reduction_granted;
pub use self::reduction_granted::ReductionGranted;
pub mod refund_offer;
pub use self::refund_offer::RefundOffer;
pub mod refund_offer_breakdown_item;
pub use self::refund_offer_breakdown_item::RefundOfferBreakdownItem;
pub mod refund_offer_collection_response;
pub use self::refund_offer_collection_response::RefundOfferCollectionResponse;
pub mod refund_offer_patch_request;
pub use self::refund_offer_patch_request::RefundOfferPatchRequest;
pub mod refund_offer_request;
pub use self::refund_offer_request::RefundOfferRequest;
pub mod refund_offer_response;
pub use self::refund_offer_response::RefundOfferResponse;
pub mod refund_specification;
pub use self::refund_specification::RefundSpecification;
pub mod refund_status;
pub use self::refund_status::RefundStatus;
pub mod refund_type;
pub use self::refund_type::RefundType;
pub mod regional_constraint;
pub use self::regional_constraint::RegionalConstraint;
pub mod regional_validity;
pub use self::regional_validity::RegionalValidity;
pub mod regional_validity_summary;
pub use self::regional_validity_summary::RegionalValiditySummary;
pub mod regulatory_condition;
pub use self::regulatory_condition::RegulatoryCondition;
pub mod reimbursement;
pub use self::reimbursement::Reimbursement;
pub mod reimbursement_decision;
pub use self::reimbursement_decision::ReimbursementDecision;
pub mod reimbursement_method;
pub use self::reimbursement_method::ReimbursementMethod;
pub mod reimbursement_patch_request;
pub use self::reimbursement_patch_request::ReimbursementPatchRequest;
pub mod reimbursement_request;
pub use self::reimbursement_request::ReimbursementRequest;
pub mod reimbursement_response;
pub use self::reimbursement_response::ReimbursementResponse;
pub mod reimbursement_status;
pub use self::reimbursement_status::ReimbursementStatus;
pub mod release_offer;
pub use self::release_offer::ReleaseOffer;
pub mod release_offer_collection_response;
pub use self::release_offer_collection_response::ReleaseOfferCollectionResponse;
pub mod release_offer_patch_request;
pub use self::release_offer_patch_request::ReleaseOfferPatchRequest;
pub mod release_offer_request;
pub use self::release_offer_request::ReleaseOfferRequest;
pub mod release_offer_request_async_response;
pub use self::release_offer_request_async_response::ReleaseOfferRequestAsyncResponse;
pub mod release_offer_response;
pub use self::release_offer_response::ReleaseOfferResponse;
pub mod release_status;
pub use self::release_status::ReleaseStatus;
pub mod reservation;
pub use self::reservation::Reservation;
pub mod reservation_group;
pub use self::reservation_group::ReservationGroup;
pub mod reservation_offer_part;
pub use self::reservation_offer_part::ReservationOfferPart;
pub mod reservation_reference;
pub use self::reservation_reference::ReservationReference;
pub mod reservation_relation;
pub use self::reservation_relation::ReservationRelation;
pub mod reservation_selection;
pub use self::reservation_selection::ReservationSelection;
pub mod reserved_place;
pub use self::reserved_place::ReservedPlace;
pub mod resource;
pub use self::resource::Resource;
pub mod resource_type;
pub use self::resource_type::ResourceType;
pub mod return_constraint;
pub use self::return_constraint::ReturnConstraint;
pub mod return_search_parameters;
pub use self::return_search_parameters::ReturnSearchParameters;
pub mod route;
pub use self::route::Route;
pub mod route_item;
pub use self::route_item::RouteItem;
pub mod route_specification;
pub use self::route_specification::RouteSpecification;
pub mod section;
pub use self::section::Section;
pub mod security_element_format;
pub use self::security_element_format::SecurityElementFormat;
pub mod security_element_type;
pub use self::security_element_type::SecurityElementType;
pub mod security_feature_type;
pub use self::security_feature_type::SecurityFeatureType;
pub mod selected_accommodation;
pub use self::selected_accommodation::SelectedAccommodation;
pub mod selected_place;
pub use self::selected_place::SelectedPlace;
pub mod selected_reference_place;
pub use self::selected_reference_place::SelectedReferencePlace;
pub mod selection_fee;
pub use self::selection_fee::SelectionFee;
pub mod service_brand_filter;
pub use self::service_brand_filter::ServiceBrandFilter;
pub mod service_class;
pub use self::service_class::ServiceClass;
pub mod service_constraint;
pub use self::service_constraint::ServiceConstraint;
pub mod service_icon;
pub use self::service_icon::ServiceIcon;
pub mod service_status;
pub use self::service_status::ServiceStatus;
pub mod service_time;
pub use self::service_time::ServiceTime;
pub mod specific_place_availability;
pub use self::specific_place_availability::SpecificPlaceAvailability;
pub mod station_set;
pub use self::station_set::StationSet;
pub mod stop_behavior;
pub use self::stop_behavior::StopBehavior;
pub mod stop_call_status;
pub use self::stop_call_status::StopCallStatus;
pub mod stop_place;
pub use self::stop_place::StopPlace;
pub mod stop_place_ref;
pub use self::stop_place_ref::StopPlaceRef;
pub mod supporting_document;
pub use self::supporting_document::SupportingDocument;
pub mod symbology;
pub use self::symbology::Symbology;
pub mod text;
pub use self::text::Text;
pub mod text_element;
pub use self::text_element::TextElement;
pub mod text_element_type;
pub use self::text_element_type::TextElementType;
pub mod time_frame_segmentation;
pub use self::time_frame_segmentation::TimeFrameSegmentation;
pub mod time_unit;
pub use self::time_unit::TimeUnit;
pub mod timed_leg;
pub use self::timed_leg::TimedLeg;
pub mod timed_leg_specification;
pub use self::timed_leg_specification::TimedLegSpecification;
pub mod tip;
pub use self::tip::Tip;
pub mod train_link;
pub use self::train_link::TrainLink;
pub mod train_validity;
pub use self::train_validity::TrainValidity;
pub mod train_validity_scope;
pub use self::train_validity_scope::TrainValidityScope;
pub mod transfer_leg;
pub use self::transfer_leg::TransferLeg;
pub mod translation;
pub use self::translation::Translation;
pub mod transportable;
pub use self::transportable::Transportable;
pub mod transportable_specification;
pub use self::transportable_specification::TransportableSpecification;
pub mod travel_account_consumption;
pub use self::travel_account_consumption::TravelAccountConsumption;
pub mod travel_account_response;
pub use self::travel_account_response::TravelAccountResponse;
pub mod travel_account_response_content;
pub use self::travel_account_response_content::TravelAccountResponseContent;
pub mod travel_account_type;
pub use self::travel_account_type::TravelAccountType;
pub mod travel_pass_account;
pub use self::travel_pass_account::TravelPassAccount;
pub mod travel_validity;
pub use self::travel_validity::TravelValidity;
pub mod travel_validity_range;
pub use self::travel_validity_range::TravelValidityRange;
pub mod trip;
pub use self::trip::Trip;
pub mod trip_allocation_constraint;
pub use self::trip_allocation_constraint::TripAllocationConstraint;
pub mod trip_change_criteria;
pub use self::trip_change_criteria::TripChangeCriteria;
pub mod trip_collection_response;
pub use self::trip_collection_response::TripCollectionResponse;
pub mod trip_coverage;
pub use self::trip_coverage::TripCoverage;
pub mod trip_data_filter;
pub use self::trip_data_filter::TripDataFilter;
pub mod trip_direction_type;
pub use self::trip_direction_type::TripDirectionType;
pub mod trip_interruption_constraint;
pub use self::trip_interruption_constraint::TripInterruptionConstraint;
pub mod trip_leg;
pub use self::trip_leg::TripLeg;
pub mod trip_leg_coverage;
pub use self::trip_leg_coverage::TripLegCoverage;
pub mod trip_leg_specification;
pub use self::trip_leg_specification::TripLegSpecification;
pub mod trip_mobility_filter;
pub use self::trip_mobility_filter::TripMobilityFilter;
pub mod trip_parameters;
pub use self::trip_parameters::TripParameters;
pub mod trip_response;
pub use self::trip_response::TripResponse;
pub mod trip_response_content;
pub use self::trip_response_content::TripResponseContent;
pub mod trip_response_parameters;
pub use self::trip_response_parameters::TripResponseParameters;
pub mod trip_result;
pub use self::trip_result::TripResult;
pub mod trip_search_criteria;
pub use self::trip_search_criteria::TripSearchCriteria;
pub mod trip_section;
pub use self::trip_section::TripSection;
pub mod trip_specification;
pub use self::trip_specification::TripSpecification;
pub mod trip_specification_summary;
pub use self::trip_specification_summary::TripSpecificationSummary;
pub mod trip_status;
pub use self::trip_status::TripStatus;
pub mod trip_summary;
pub use self::trip_summary::TripSummary;
pub mod trip_travel_account_unit;
pub use self::trip_travel_account_unit::TripTravelAccountUnit;
pub mod trip_via;
pub use self::trip_via::TripVia;
pub mod trips_collection_response_content;
pub use self::trips_collection_response_content::TripsCollectionResponseContent;
pub mod validity_range;
pub use self::validity_range::ValidityRange;
pub mod vat;
pub use self::vat::Vat;
pub mod vehicle;
pub use self::vehicle::Vehicle;
pub mod vehicle_availability;
pub use self::vehicle_availability::VehicleAvailability;
pub mod vehicle_filter;
pub use self::vehicle_filter::VehicleFilter;
pub mod voucher_information;
pub use self::voucher_information::VoucherInformation;
pub mod warning;
pub use self::warning::Warning;
pub mod warning_collection;
pub use self::warning_collection::WarningCollection;
pub mod zone;
pub use self::zone::Zone;
pub mod zone_collection_response;
pub use self::zone_collection_response::ZoneCollectionResponse;
pub mod zone_definition;
pub use self::zone_definition::ZoneDefinition;
use serde::{Deserialize, Deserializer, Serializer};
use serde_with::{de::DeserializeAsWrap, ser::SerializeAsWrap, DeserializeAs, SerializeAs};
use std::marker::PhantomData;
pub(crate) struct DoubleOption<T>(PhantomData<T>);
impl<T, TAs> SerializeAs<Option<Option<T>>> for DoubleOption<TAs>
where
TAs: SerializeAs<T>,
{
fn serialize_as<S>(values: &Option<Option<T>>, serializer: S) -> Result<S::Ok, S::Error>
where
S: Serializer,
{
match values {
None => serializer.serialize_unit(),
Some(None) => serializer.serialize_none(),
Some(Some(v)) => serializer.serialize_some(&SerializeAsWrap::<T, TAs>::new(v)),
}
}
}
impl<'de, T, TAs> DeserializeAs<'de, Option<Option<T>>> for DoubleOption<TAs>
where
TAs: DeserializeAs<'de, T>,
T: std::fmt::Debug,
{
fn deserialize_as<D>(deserializer: D) -> Result<Option<Option<T>>, D::Error>
where
D: Deserializer<'de>,
{
Ok(Some(
DeserializeAsWrap::<Option<T>, Option<TAs>>::deserialize(deserializer)?
.into_inner(),
))
}
}