"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from typing import TYPE_CHECKING

from train_travel.utils.dynamic_imports import lazy_getattr, lazy_dir

if TYPE_CHECKING:
    from .booking import (
        Booking,
        BookingInput,
        BookingInputTypedDict,
        BookingTypedDict,
        SeatPreference,
    )
    from .bookingpayment import (
        AccountType,
        BankAccount,
        BankAccountTypedDict,
        BookingPayment,
        BookingPaymentTypedDict,
        Card,
        CardTypedDict,
        Currency,
        Source,
        SourceTypedDict,
    )
    from .create_booking_paymentop import (
        CreateBookingPaymentAccountType,
        CreateBookingPaymentBankAccount,
        CreateBookingPaymentBankAccountTypedDict,
        CreateBookingPaymentCard,
        CreateBookingPaymentCardTypedDict,
        CreateBookingPaymentCurrency,
        CreateBookingPaymentRequest,
        CreateBookingPaymentRequestTypedDict,
        CreateBookingPaymentResponse,
        CreateBookingPaymentResponseBody,
        CreateBookingPaymentResponseBodyTypedDict,
        CreateBookingPaymentResponseTypedDict,
        CreateBookingPaymentSource,
        CreateBookingPaymentSourceTypedDict,
        Status,
    )
    from .create_booking_rawop import (
        CreateBookingRawResponse,
        CreateBookingRawResponseBody,
        CreateBookingRawResponseBodyTypedDict,
        CreateBookingRawResponseResult,
        CreateBookingRawResponseResultTypedDict,
        CreateBookingRawResponseTypedDict,
        CreateBookingRawSeatPreference,
        CreateBookingRawXMLResponseBody,
        CreateBookingRawXMLResponseBodyTypedDict,
        CreateBookingRawXMLSeatPreference,
    )
    from .create_bookingop import (
        CreateBookingResponse,
        CreateBookingResponseBody,
        CreateBookingResponseBodyTypedDict,
        CreateBookingResponseResult,
        CreateBookingResponseResultTypedDict,
        CreateBookingResponseTypedDict,
        CreateBookingSeatPreference,
        CreateBookingXMLResponseBody,
        CreateBookingXMLResponseBodyTypedDict,
        CreateBookingXMLSeatPreference,
    )
    from .delete_bookingop import (
        DeleteBookingRequest,
        DeleteBookingRequestTypedDict,
        DeleteBookingResponse,
        DeleteBookingResponseTypedDict,
    )
    from .get_bookingop import (
        GetBookingRequest,
        GetBookingRequestTypedDict,
        GetBookingResponse,
        GetBookingResponseBody,
        GetBookingResponseBodyTypedDict,
        GetBookingResponseResult,
        GetBookingResponseResultTypedDict,
        GetBookingResponseTypedDict,
        GetBookingSeatPreference,
        GetBookingXMLResponseBody,
        GetBookingXMLResponseBodyTypedDict,
        GetBookingXMLSeatPreference,
    )
    from .get_bookingsop import (
        GetBookingsLinks,
        GetBookingsLinksTypedDict,
        GetBookingsRequest,
        GetBookingsRequestTypedDict,
        GetBookingsResponse,
        GetBookingsResponseBody,
        GetBookingsResponseBodyTypedDict,
        GetBookingsResponseResult,
        GetBookingsResponseResultTypedDict,
        GetBookingsResponseTypedDict,
        GetBookingsXMLLinks,
        GetBookingsXMLLinksTypedDict,
        GetBookingsXMLResponseBody,
        GetBookingsXMLResponseBodyTypedDict,
    )
    from .get_stationsop import (
        GetStationsLinks,
        GetStationsLinksTypedDict,
        GetStationsRequest,
        GetStationsRequestTypedDict,
        GetStationsResponse,
        GetStationsResponseBody,
        GetStationsResponseBodyTypedDict,
        GetStationsResponseResult,
        GetStationsResponseResultTypedDict,
        GetStationsResponseTypedDict,
        GetStationsXMLLinks,
        GetStationsXMLLinksTypedDict,
        GetStationsXMLResponseBody,
        GetStationsXMLResponseBodyTypedDict,
    )
    from .get_tripsop import (
        Data,
        DataTypedDict,
        GetTripsLinks,
        GetTripsLinksTypedDict,
        GetTripsRequest,
        GetTripsRequestTypedDict,
        GetTripsResponse,
        GetTripsResponseBody,
        GetTripsResponseBodyTypedDict,
        GetTripsResponseResult,
        GetTripsResponseResultTypedDict,
        GetTripsResponseTypedDict,
        GetTripsXMLLinks,
        GetTripsXMLLinksTypedDict,
        GetTripsXMLResponseBody,
        GetTripsXMLResponseBodyTypedDict,
    )
    from .links_booking import LinksBooking, LinksBookingTypedDict
    from .links_self import LinksSelf, LinksSelfTypedDict
    from .new_bookingop import (
        NewBookingLinks,
        NewBookingLinksTypedDict,
        NewBookingRequest,
        NewBookingRequestTypedDict,
        NewBookingSeatPreference,
    )
    from .security import Security, SecurityTypedDict
    from .station import Station, StationTypedDict
    from .trip import Trip, TripTypedDict

__all__ = [
    "AccountType",
    "BankAccount",
    "BankAccountTypedDict",
    "Booking",
    "BookingInput",
    "BookingInputTypedDict",
    "BookingPayment",
    "BookingPaymentTypedDict",
    "BookingTypedDict",
    "Card",
    "CardTypedDict",
    "CreateBookingPaymentAccountType",
    "CreateBookingPaymentBankAccount",
    "CreateBookingPaymentBankAccountTypedDict",
    "CreateBookingPaymentCard",
    "CreateBookingPaymentCardTypedDict",
    "CreateBookingPaymentCurrency",
    "CreateBookingPaymentRequest",
    "CreateBookingPaymentRequestTypedDict",
    "CreateBookingPaymentResponse",
    "CreateBookingPaymentResponseBody",
    "CreateBookingPaymentResponseBodyTypedDict",
    "CreateBookingPaymentResponseTypedDict",
    "CreateBookingPaymentSource",
    "CreateBookingPaymentSourceTypedDict",
    "CreateBookingRawResponse",
    "CreateBookingRawResponseBody",
    "CreateBookingRawResponseBodyTypedDict",
    "CreateBookingRawResponseResult",
    "CreateBookingRawResponseResultTypedDict",
    "CreateBookingRawResponseTypedDict",
    "CreateBookingRawSeatPreference",
    "CreateBookingRawXMLResponseBody",
    "CreateBookingRawXMLResponseBodyTypedDict",
    "CreateBookingRawXMLSeatPreference",
    "CreateBookingResponse",
    "CreateBookingResponseBody",
    "CreateBookingResponseBodyTypedDict",
    "CreateBookingResponseResult",
    "CreateBookingResponseResultTypedDict",
    "CreateBookingResponseTypedDict",
    "CreateBookingSeatPreference",
    "CreateBookingXMLResponseBody",
    "CreateBookingXMLResponseBodyTypedDict",
    "CreateBookingXMLSeatPreference",
    "Currency",
    "Data",
    "DataTypedDict",
    "DeleteBookingRequest",
    "DeleteBookingRequestTypedDict",
    "DeleteBookingResponse",
    "DeleteBookingResponseTypedDict",
    "GetBookingRequest",
    "GetBookingRequestTypedDict",
    "GetBookingResponse",
    "GetBookingResponseBody",
    "GetBookingResponseBodyTypedDict",
    "GetBookingResponseResult",
    "GetBookingResponseResultTypedDict",
    "GetBookingResponseTypedDict",
    "GetBookingSeatPreference",
    "GetBookingXMLResponseBody",
    "GetBookingXMLResponseBodyTypedDict",
    "GetBookingXMLSeatPreference",
    "GetBookingsLinks",
    "GetBookingsLinksTypedDict",
    "GetBookingsRequest",
    "GetBookingsRequestTypedDict",
    "GetBookingsResponse",
    "GetBookingsResponseBody",
    "GetBookingsResponseBodyTypedDict",
    "GetBookingsResponseResult",
    "GetBookingsResponseResultTypedDict",
    "GetBookingsResponseTypedDict",
    "GetBookingsXMLLinks",
    "GetBookingsXMLLinksTypedDict",
    "GetBookingsXMLResponseBody",
    "GetBookingsXMLResponseBodyTypedDict",
    "GetStationsLinks",
    "GetStationsLinksTypedDict",
    "GetStationsRequest",
    "GetStationsRequestTypedDict",
    "GetStationsResponse",
    "GetStationsResponseBody",
    "GetStationsResponseBodyTypedDict",
    "GetStationsResponseResult",
    "GetStationsResponseResultTypedDict",
    "GetStationsResponseTypedDict",
    "GetStationsXMLLinks",
    "GetStationsXMLLinksTypedDict",
    "GetStationsXMLResponseBody",
    "GetStationsXMLResponseBodyTypedDict",
    "GetTripsLinks",
    "GetTripsLinksTypedDict",
    "GetTripsRequest",
    "GetTripsRequestTypedDict",
    "GetTripsResponse",
    "GetTripsResponseBody",
    "GetTripsResponseBodyTypedDict",
    "GetTripsResponseResult",
    "GetTripsResponseResultTypedDict",
    "GetTripsResponseTypedDict",
    "GetTripsXMLLinks",
    "GetTripsXMLLinksTypedDict",
    "GetTripsXMLResponseBody",
    "GetTripsXMLResponseBodyTypedDict",
    "LinksBooking",
    "LinksBookingTypedDict",
    "LinksSelf",
    "LinksSelfTypedDict",
    "NewBookingLinks",
    "NewBookingLinksTypedDict",
    "NewBookingRequest",
    "NewBookingRequestTypedDict",
    "NewBookingSeatPreference",
    "SeatPreference",
    "Security",
    "SecurityTypedDict",
    "Source",
    "SourceTypedDict",
    "Station",
    "StationTypedDict",
    "Status",
    "Trip",
    "TripTypedDict",
]

_dynamic_imports: dict[str, str] = {
    "Booking": ".booking",
    "BookingInput": ".booking",
    "BookingInputTypedDict": ".booking",
    "BookingTypedDict": ".booking",
    "SeatPreference": ".booking",
    "AccountType": ".bookingpayment",
    "BankAccount": ".bookingpayment",
    "BankAccountTypedDict": ".bookingpayment",
    "BookingPayment": ".bookingpayment",
    "BookingPaymentTypedDict": ".bookingpayment",
    "Card": ".bookingpayment",
    "CardTypedDict": ".bookingpayment",
    "Currency": ".bookingpayment",
    "Source": ".bookingpayment",
    "SourceTypedDict": ".bookingpayment",
    "CreateBookingPaymentAccountType": ".create_booking_paymentop",
    "CreateBookingPaymentBankAccount": ".create_booking_paymentop",
    "CreateBookingPaymentBankAccountTypedDict": ".create_booking_paymentop",
    "CreateBookingPaymentCard": ".create_booking_paymentop",
    "CreateBookingPaymentCardTypedDict": ".create_booking_paymentop",
    "CreateBookingPaymentCurrency": ".create_booking_paymentop",
    "CreateBookingPaymentRequest": ".create_booking_paymentop",
    "CreateBookingPaymentRequestTypedDict": ".create_booking_paymentop",
    "CreateBookingPaymentResponse": ".create_booking_paymentop",
    "CreateBookingPaymentResponseBody": ".create_booking_paymentop",
    "CreateBookingPaymentResponseBodyTypedDict": ".create_booking_paymentop",
    "CreateBookingPaymentResponseTypedDict": ".create_booking_paymentop",
    "CreateBookingPaymentSource": ".create_booking_paymentop",
    "CreateBookingPaymentSourceTypedDict": ".create_booking_paymentop",
    "Status": ".create_booking_paymentop",
    "CreateBookingRawResponse": ".create_booking_rawop",
    "CreateBookingRawResponseBody": ".create_booking_rawop",
    "CreateBookingRawResponseBodyTypedDict": ".create_booking_rawop",
    "CreateBookingRawResponseResult": ".create_booking_rawop",
    "CreateBookingRawResponseResultTypedDict": ".create_booking_rawop",
    "CreateBookingRawResponseTypedDict": ".create_booking_rawop",
    "CreateBookingRawSeatPreference": ".create_booking_rawop",
    "CreateBookingRawXMLResponseBody": ".create_booking_rawop",
    "CreateBookingRawXMLResponseBodyTypedDict": ".create_booking_rawop",
    "CreateBookingRawXMLSeatPreference": ".create_booking_rawop",
    "CreateBookingResponse": ".create_bookingop",
    "CreateBookingResponseBody": ".create_bookingop",
    "CreateBookingResponseBodyTypedDict": ".create_bookingop",
    "CreateBookingResponseResult": ".create_bookingop",
    "CreateBookingResponseResultTypedDict": ".create_bookingop",
    "CreateBookingResponseTypedDict": ".create_bookingop",
    "CreateBookingSeatPreference": ".create_bookingop",
    "CreateBookingXMLResponseBody": ".create_bookingop",
    "CreateBookingXMLResponseBodyTypedDict": ".create_bookingop",
    "CreateBookingXMLSeatPreference": ".create_bookingop",
    "DeleteBookingRequest": ".delete_bookingop",
    "DeleteBookingRequestTypedDict": ".delete_bookingop",
    "DeleteBookingResponse": ".delete_bookingop",
    "DeleteBookingResponseTypedDict": ".delete_bookingop",
    "GetBookingRequest": ".get_bookingop",
    "GetBookingRequestTypedDict": ".get_bookingop",
    "GetBookingResponse": ".get_bookingop",
    "GetBookingResponseBody": ".get_bookingop",
    "GetBookingResponseBodyTypedDict": ".get_bookingop",
    "GetBookingResponseResult": ".get_bookingop",
    "GetBookingResponseResultTypedDict": ".get_bookingop",
    "GetBookingResponseTypedDict": ".get_bookingop",
    "GetBookingSeatPreference": ".get_bookingop",
    "GetBookingXMLResponseBody": ".get_bookingop",
    "GetBookingXMLResponseBodyTypedDict": ".get_bookingop",
    "GetBookingXMLSeatPreference": ".get_bookingop",
    "GetBookingsLinks": ".get_bookingsop",
    "GetBookingsLinksTypedDict": ".get_bookingsop",
    "GetBookingsRequest": ".get_bookingsop",
    "GetBookingsRequestTypedDict": ".get_bookingsop",
    "GetBookingsResponse": ".get_bookingsop",
    "GetBookingsResponseBody": ".get_bookingsop",
    "GetBookingsResponseBodyTypedDict": ".get_bookingsop",
    "GetBookingsResponseResult": ".get_bookingsop",
    "GetBookingsResponseResultTypedDict": ".get_bookingsop",
    "GetBookingsResponseTypedDict": ".get_bookingsop",
    "GetBookingsXMLLinks": ".get_bookingsop",
    "GetBookingsXMLLinksTypedDict": ".get_bookingsop",
    "GetBookingsXMLResponseBody": ".get_bookingsop",
    "GetBookingsXMLResponseBodyTypedDict": ".get_bookingsop",
    "GetStationsLinks": ".get_stationsop",
    "GetStationsLinksTypedDict": ".get_stationsop",
    "GetStationsRequest": ".get_stationsop",
    "GetStationsRequestTypedDict": ".get_stationsop",
    "GetStationsResponse": ".get_stationsop",
    "GetStationsResponseBody": ".get_stationsop",
    "GetStationsResponseBodyTypedDict": ".get_stationsop",
    "GetStationsResponseResult": ".get_stationsop",
    "GetStationsResponseResultTypedDict": ".get_stationsop",
    "GetStationsResponseTypedDict": ".get_stationsop",
    "GetStationsXMLLinks": ".get_stationsop",
    "GetStationsXMLLinksTypedDict": ".get_stationsop",
    "GetStationsXMLResponseBody": ".get_stationsop",
    "GetStationsXMLResponseBodyTypedDict": ".get_stationsop",
    "Data": ".get_tripsop",
    "DataTypedDict": ".get_tripsop",
    "GetTripsLinks": ".get_tripsop",
    "GetTripsLinksTypedDict": ".get_tripsop",
    "GetTripsRequest": ".get_tripsop",
    "GetTripsRequestTypedDict": ".get_tripsop",
    "GetTripsResponse": ".get_tripsop",
    "GetTripsResponseBody": ".get_tripsop",
    "GetTripsResponseBodyTypedDict": ".get_tripsop",
    "GetTripsResponseResult": ".get_tripsop",
    "GetTripsResponseResultTypedDict": ".get_tripsop",
    "GetTripsResponseTypedDict": ".get_tripsop",
    "GetTripsXMLLinks": ".get_tripsop",
    "GetTripsXMLLinksTypedDict": ".get_tripsop",
    "GetTripsXMLResponseBody": ".get_tripsop",
    "GetTripsXMLResponseBodyTypedDict": ".get_tripsop",
    "LinksBooking": ".links_booking",
    "LinksBookingTypedDict": ".links_booking",
    "LinksSelf": ".links_self",
    "LinksSelfTypedDict": ".links_self",
    "NewBookingLinks": ".new_bookingop",
    "NewBookingLinksTypedDict": ".new_bookingop",
    "NewBookingRequest": ".new_bookingop",
    "NewBookingRequestTypedDict": ".new_bookingop",
    "NewBookingSeatPreference": ".new_bookingop",
    "Security": ".security",
    "SecurityTypedDict": ".security",
    "Station": ".station",
    "StationTypedDict": ".station",
    "Trip": ".trip",
    "TripTypedDict": ".trip",
}


def __getattr__(attr_name: str) -> object:
    return lazy_getattr(
        attr_name, package=__package__, dynamic_imports=_dynamic_imports
    )


def __dir__():
    return lazy_dir(dynamic_imports=_dynamic_imports)
