# coding: utf-8

# flake8: noqa

"""
    STACKIT IaaS API

    This API allows you to create and modify IaaS resources.

    The version of the OpenAPI document: 2
    Contact: stackit-iaas@mail.schwarz
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


__version__ = "1.0.0"

# Define package exports
__all__ = [
    "DefaultApi",
    "ApiResponse",
    "ApiClient",
    "HostConfiguration",
    "OpenApiException",
    "ApiTypeError",
    "ApiValueError",
    "ApiKeyError",
    "ApiAttributeError",
    "ApiException",
    "AddRoutesToRoutingTablePayload",
    "AddRoutingTableToAreaPayload",
    "AddVolumeToServerPayload",
    "AffinityGroup",
    "AffinityGroupListResponse",
    "AllowedAddressesInner",
    "AreaId",
    "AvailabilityZoneListResponse",
    "Backup",
    "BackupListResponse",
    "BackupSource",
    "BaseSecurityGroupRule",
    "BootVolume",
    "BootVolumeSource",
    "CreateAffinityGroupPayload",
    "CreateBackupPayload",
    "CreateImagePayload",
    "CreateIsolatedNetworkPayload",
    "CreateKeyPairPayload",
    "CreateNetworkAreaPayload",
    "CreateNetworkAreaRangePayload",
    "CreateNetworkAreaRegionPayload",
    "CreateNetworkAreaRoutePayload",
    "CreateNetworkIPv4",
    "CreateNetworkIPv4WithPrefix",
    "CreateNetworkIPv4WithPrefixLength",
    "CreateNetworkIPv6",
    "CreateNetworkIPv6WithPrefix",
    "CreateNetworkIPv6WithPrefixLength",
    "CreateNetworkPayload",
    "CreateNicPayload",
    "CreateProtocol",
    "CreatePublicIPPayload",
    "CreateSecurityGroupPayload",
    "CreateSecurityGroupRulePayload",
    "CreateSecurityGroupRuleProtocol",
    "CreateServerNetworking",
    "CreateServerNetworkingWithNics",
    "CreateServerPayload",
    "CreateServerPayloadAllOfNetworking",
    "CreateSnapshotPayload",
    "CreateVolumePayload",
    "DestinationCIDRv4",
    "DestinationCIDRv6",
    "Error",
    "GetServerLog200Response",
    "ICMPParameters",
    "Image",
    "ImageAgent",
    "ImageChecksum",
    "ImageConfig",
    "ImageCreateResponse",
    "ImageFromVolumePayload",
    "ImageListResponse",
    "ImageShare",
    "ImageShareConsumer",
    "KeyPairListResponse",
    "Keypair",
    "MachineType",
    "MachineTypeListResponse",
    "NIC",
    "NICListResponse",
    "Network",
    "NetworkArea",
    "NetworkAreaListResponse",
    "NetworkIPv4",
    "NetworkIPv6",
    "NetworkListResponse",
    "NetworkRange",
    "NetworkRangeListResponse",
    "NexthopBlackhole",
    "NexthopIPv4",
    "NexthopIPv6",
    "NexthopInternet",
    "PartialUpdateNetworkAreaPayload",
    "PartialUpdateNetworkPayload",
    "PortRange",
    "Project",
    "ProjectListResponse",
    "Protocol",
    "PublicIp",
    "PublicIpListResponse",
    "PublicNetwork",
    "PublicNetworkListResponse",
    "Quota",
    "QuotaList",
    "QuotaListResponse",
    "RegionalArea",
    "RegionalAreaIPv4",
    "RegionalAreaListResponse",
    "Request",
    "RequestResource",
    "RescueServerPayload",
    "ResizeServerPayload",
    "ResizeVolumePayload",
    "Route",
    "RouteDestination",
    "RouteListResponse",
    "RouteNexthop",
    "RoutingTable",
    "RoutingTableListResponse",
    "SecurityGroup",
    "SecurityGroupListResponse",
    "SecurityGroupRule",
    "SecurityGroupRuleListResponse",
    "SecurityGroupRuleProtocol",
    "Server",
    "ServerAgent",
    "ServerConsoleUrl",
    "ServerListResponse",
    "ServerMaintenance",
    "ServerNetwork",
    "ServerNetworking",
    "ServiceAccountMailListResponse",
    "SetImageSharePayload",
    "Snapshot",
    "SnapshotListResponse",
    "StaticAreaID",
    "UpdateAttachedVolumePayload",
    "UpdateBackupPayload",
    "UpdateImagePayload",
    "UpdateImageSharePayload",
    "UpdateKeyPairPayload",
    "UpdateNetworkAreaRegionPayload",
    "UpdateNetworkAreaRoutePayload",
    "UpdateNetworkIPv4Body",
    "UpdateNetworkIPv6Body",
    "UpdateNicPayload",
    "UpdatePublicIPPayload",
    "UpdateRegionalAreaIPv4",
    "UpdateRouteOfRoutingTablePayload",
    "UpdateRoutingTableOfAreaPayload",
    "UpdateSecurityGroupPayload",
    "UpdateServerPayload",
    "UpdateSnapshotPayload",
    "UpdateVolumePayload",
    "Volume",
    "VolumeAttachment",
    "VolumeAttachmentListResponse",
    "VolumeEncryptionParameter",
    "VolumeListResponse",
    "VolumePerformanceClass",
    "VolumePerformanceClassListResponse",
    "VolumeSource",
]

# import apis into sdk package
from stackit.iaas.api.default_api import DefaultApi as DefaultApi
from stackit.iaas.api_client import ApiClient as ApiClient

# import ApiClient
from stackit.iaas.api_response import ApiResponse as ApiResponse
from stackit.iaas.configuration import HostConfiguration as HostConfiguration
from stackit.iaas.exceptions import ApiAttributeError as ApiAttributeError
from stackit.iaas.exceptions import ApiException as ApiException
from stackit.iaas.exceptions import ApiKeyError as ApiKeyError
from stackit.iaas.exceptions import ApiTypeError as ApiTypeError
from stackit.iaas.exceptions import ApiValueError as ApiValueError
from stackit.iaas.exceptions import OpenApiException as OpenApiException

# import models into sdk package
from stackit.iaas.models.add_routes_to_routing_table_payload import (
    AddRoutesToRoutingTablePayload as AddRoutesToRoutingTablePayload,
)
from stackit.iaas.models.add_routing_table_to_area_payload import (
    AddRoutingTableToAreaPayload as AddRoutingTableToAreaPayload,
)
from stackit.iaas.models.add_volume_to_server_payload import (
    AddVolumeToServerPayload as AddVolumeToServerPayload,
)
from stackit.iaas.models.affinity_group import AffinityGroup as AffinityGroup
from stackit.iaas.models.affinity_group_list_response import (
    AffinityGroupListResponse as AffinityGroupListResponse,
)
from stackit.iaas.models.allowed_addresses_inner import (
    AllowedAddressesInner as AllowedAddressesInner,
)
from stackit.iaas.models.area_id import AreaId as AreaId
from stackit.iaas.models.availability_zone_list_response import (
    AvailabilityZoneListResponse as AvailabilityZoneListResponse,
)
from stackit.iaas.models.backup import Backup as Backup
from stackit.iaas.models.backup_list_response import (
    BackupListResponse as BackupListResponse,
)
from stackit.iaas.models.backup_source import BackupSource as BackupSource
from stackit.iaas.models.base_security_group_rule import (
    BaseSecurityGroupRule as BaseSecurityGroupRule,
)
from stackit.iaas.models.boot_volume import BootVolume as BootVolume
from stackit.iaas.models.boot_volume_source import BootVolumeSource as BootVolumeSource
from stackit.iaas.models.create_affinity_group_payload import (
    CreateAffinityGroupPayload as CreateAffinityGroupPayload,
)
from stackit.iaas.models.create_backup_payload import (
    CreateBackupPayload as CreateBackupPayload,
)
from stackit.iaas.models.create_image_payload import (
    CreateImagePayload as CreateImagePayload,
)
from stackit.iaas.models.create_isolated_network_payload import (
    CreateIsolatedNetworkPayload as CreateIsolatedNetworkPayload,
)
from stackit.iaas.models.create_key_pair_payload import (
    CreateKeyPairPayload as CreateKeyPairPayload,
)
from stackit.iaas.models.create_network_area_payload import (
    CreateNetworkAreaPayload as CreateNetworkAreaPayload,
)
from stackit.iaas.models.create_network_area_range_payload import (
    CreateNetworkAreaRangePayload as CreateNetworkAreaRangePayload,
)
from stackit.iaas.models.create_network_area_region_payload import (
    CreateNetworkAreaRegionPayload as CreateNetworkAreaRegionPayload,
)
from stackit.iaas.models.create_network_area_route_payload import (
    CreateNetworkAreaRoutePayload as CreateNetworkAreaRoutePayload,
)
from stackit.iaas.models.create_network_ipv4 import (
    CreateNetworkIPv4 as CreateNetworkIPv4,
)
from stackit.iaas.models.create_network_ipv4_with_prefix import (
    CreateNetworkIPv4WithPrefix as CreateNetworkIPv4WithPrefix,
)
from stackit.iaas.models.create_network_ipv4_with_prefix_length import (
    CreateNetworkIPv4WithPrefixLength as CreateNetworkIPv4WithPrefixLength,
)
from stackit.iaas.models.create_network_ipv6 import (
    CreateNetworkIPv6 as CreateNetworkIPv6,
)
from stackit.iaas.models.create_network_ipv6_with_prefix import (
    CreateNetworkIPv6WithPrefix as CreateNetworkIPv6WithPrefix,
)
from stackit.iaas.models.create_network_ipv6_with_prefix_length import (
    CreateNetworkIPv6WithPrefixLength as CreateNetworkIPv6WithPrefixLength,
)
from stackit.iaas.models.create_network_payload import (
    CreateNetworkPayload as CreateNetworkPayload,
)
from stackit.iaas.models.create_nic_payload import CreateNicPayload as CreateNicPayload
from stackit.iaas.models.create_protocol import CreateProtocol as CreateProtocol
from stackit.iaas.models.create_public_ip_payload import (
    CreatePublicIPPayload as CreatePublicIPPayload,
)
from stackit.iaas.models.create_security_group_payload import (
    CreateSecurityGroupPayload as CreateSecurityGroupPayload,
)
from stackit.iaas.models.create_security_group_rule_payload import (
    CreateSecurityGroupRulePayload as CreateSecurityGroupRulePayload,
)
from stackit.iaas.models.create_security_group_rule_protocol import (
    CreateSecurityGroupRuleProtocol as CreateSecurityGroupRuleProtocol,
)
from stackit.iaas.models.create_server_networking import (
    CreateServerNetworking as CreateServerNetworking,
)
from stackit.iaas.models.create_server_networking_with_nics import (
    CreateServerNetworkingWithNics as CreateServerNetworkingWithNics,
)
from stackit.iaas.models.create_server_payload import (
    CreateServerPayload as CreateServerPayload,
)
from stackit.iaas.models.create_server_payload_all_of_networking import (
    CreateServerPayloadAllOfNetworking as CreateServerPayloadAllOfNetworking,
)
from stackit.iaas.models.create_snapshot_payload import (
    CreateSnapshotPayload as CreateSnapshotPayload,
)
from stackit.iaas.models.create_volume_payload import (
    CreateVolumePayload as CreateVolumePayload,
)
from stackit.iaas.models.destination_cidrv4 import (
    DestinationCIDRv4 as DestinationCIDRv4,
)
from stackit.iaas.models.destination_cidrv6 import (
    DestinationCIDRv6 as DestinationCIDRv6,
)
from stackit.iaas.models.error import Error as Error
from stackit.iaas.models.get_server_log200_response import (
    GetServerLog200Response as GetServerLog200Response,
)
from stackit.iaas.models.icmp_parameters import ICMPParameters as ICMPParameters
from stackit.iaas.models.image import Image as Image
from stackit.iaas.models.image_agent import ImageAgent as ImageAgent
from stackit.iaas.models.image_checksum import ImageChecksum as ImageChecksum
from stackit.iaas.models.image_config import ImageConfig as ImageConfig
from stackit.iaas.models.image_create_response import (
    ImageCreateResponse as ImageCreateResponse,
)
from stackit.iaas.models.image_from_volume_payload import (
    ImageFromVolumePayload as ImageFromVolumePayload,
)
from stackit.iaas.models.image_list_response import (
    ImageListResponse as ImageListResponse,
)
from stackit.iaas.models.image_share import ImageShare as ImageShare
from stackit.iaas.models.image_share_consumer import (
    ImageShareConsumer as ImageShareConsumer,
)
from stackit.iaas.models.key_pair_list_response import (
    KeyPairListResponse as KeyPairListResponse,
)
from stackit.iaas.models.keypair import Keypair as Keypair
from stackit.iaas.models.machine_type import MachineType as MachineType
from stackit.iaas.models.machine_type_list_response import (
    MachineTypeListResponse as MachineTypeListResponse,
)
from stackit.iaas.models.network import Network as Network
from stackit.iaas.models.network_area import NetworkArea as NetworkArea
from stackit.iaas.models.network_area_list_response import (
    NetworkAreaListResponse as NetworkAreaListResponse,
)
from stackit.iaas.models.network_ipv4 import NetworkIPv4 as NetworkIPv4
from stackit.iaas.models.network_ipv6 import NetworkIPv6 as NetworkIPv6
from stackit.iaas.models.network_list_response import (
    NetworkListResponse as NetworkListResponse,
)
from stackit.iaas.models.network_range import NetworkRange as NetworkRange
from stackit.iaas.models.network_range_list_response import (
    NetworkRangeListResponse as NetworkRangeListResponse,
)
from stackit.iaas.models.nexthop_blackhole import NexthopBlackhole as NexthopBlackhole
from stackit.iaas.models.nexthop_internet import NexthopInternet as NexthopInternet
from stackit.iaas.models.nexthop_ipv4 import NexthopIPv4 as NexthopIPv4
from stackit.iaas.models.nexthop_ipv6 import NexthopIPv6 as NexthopIPv6
from stackit.iaas.models.nic import NIC as NIC
from stackit.iaas.models.nic_list_response import NICListResponse as NICListResponse
from stackit.iaas.models.partial_update_network_area_payload import (
    PartialUpdateNetworkAreaPayload as PartialUpdateNetworkAreaPayload,
)
from stackit.iaas.models.partial_update_network_payload import (
    PartialUpdateNetworkPayload as PartialUpdateNetworkPayload,
)
from stackit.iaas.models.port_range import PortRange as PortRange
from stackit.iaas.models.project import Project as Project
from stackit.iaas.models.project_list_response import (
    ProjectListResponse as ProjectListResponse,
)
from stackit.iaas.models.protocol import Protocol as Protocol
from stackit.iaas.models.public_ip import PublicIp as PublicIp
from stackit.iaas.models.public_ip_list_response import (
    PublicIpListResponse as PublicIpListResponse,
)
from stackit.iaas.models.public_network import PublicNetwork as PublicNetwork
from stackit.iaas.models.public_network_list_response import (
    PublicNetworkListResponse as PublicNetworkListResponse,
)
from stackit.iaas.models.quota import Quota as Quota
from stackit.iaas.models.quota_list import QuotaList as QuotaList
from stackit.iaas.models.quota_list_response import (
    QuotaListResponse as QuotaListResponse,
)
from stackit.iaas.models.regional_area import RegionalArea as RegionalArea
from stackit.iaas.models.regional_area_ipv4 import RegionalAreaIPv4 as RegionalAreaIPv4
from stackit.iaas.models.regional_area_list_response import (
    RegionalAreaListResponse as RegionalAreaListResponse,
)
from stackit.iaas.models.request import Request as Request
from stackit.iaas.models.request_resource import RequestResource as RequestResource
from stackit.iaas.models.rescue_server_payload import (
    RescueServerPayload as RescueServerPayload,
)
from stackit.iaas.models.resize_server_payload import (
    ResizeServerPayload as ResizeServerPayload,
)
from stackit.iaas.models.resize_volume_payload import (
    ResizeVolumePayload as ResizeVolumePayload,
)
from stackit.iaas.models.route import Route as Route
from stackit.iaas.models.route_destination import RouteDestination as RouteDestination
from stackit.iaas.models.route_list_response import (
    RouteListResponse as RouteListResponse,
)
from stackit.iaas.models.route_nexthop import RouteNexthop as RouteNexthop
from stackit.iaas.models.routing_table import RoutingTable as RoutingTable
from stackit.iaas.models.routing_table_list_response import (
    RoutingTableListResponse as RoutingTableListResponse,
)
from stackit.iaas.models.security_group import SecurityGroup as SecurityGroup
from stackit.iaas.models.security_group_list_response import (
    SecurityGroupListResponse as SecurityGroupListResponse,
)
from stackit.iaas.models.security_group_rule import (
    SecurityGroupRule as SecurityGroupRule,
)
from stackit.iaas.models.security_group_rule_list_response import (
    SecurityGroupRuleListResponse as SecurityGroupRuleListResponse,
)
from stackit.iaas.models.security_group_rule_protocol import (
    SecurityGroupRuleProtocol as SecurityGroupRuleProtocol,
)
from stackit.iaas.models.server import Server as Server
from stackit.iaas.models.server_agent import ServerAgent as ServerAgent
from stackit.iaas.models.server_console_url import ServerConsoleUrl as ServerConsoleUrl
from stackit.iaas.models.server_list_response import (
    ServerListResponse as ServerListResponse,
)
from stackit.iaas.models.server_maintenance import (
    ServerMaintenance as ServerMaintenance,
)
from stackit.iaas.models.server_network import ServerNetwork as ServerNetwork
from stackit.iaas.models.server_networking import ServerNetworking as ServerNetworking
from stackit.iaas.models.service_account_mail_list_response import (
    ServiceAccountMailListResponse as ServiceAccountMailListResponse,
)
from stackit.iaas.models.set_image_share_payload import (
    SetImageSharePayload as SetImageSharePayload,
)
from stackit.iaas.models.snapshot import Snapshot as Snapshot
from stackit.iaas.models.snapshot_list_response import (
    SnapshotListResponse as SnapshotListResponse,
)
from stackit.iaas.models.static_area_id import StaticAreaID as StaticAreaID
from stackit.iaas.models.update_attached_volume_payload import (
    UpdateAttachedVolumePayload as UpdateAttachedVolumePayload,
)
from stackit.iaas.models.update_backup_payload import (
    UpdateBackupPayload as UpdateBackupPayload,
)
from stackit.iaas.models.update_image_payload import (
    UpdateImagePayload as UpdateImagePayload,
)
from stackit.iaas.models.update_image_share_payload import (
    UpdateImageSharePayload as UpdateImageSharePayload,
)
from stackit.iaas.models.update_key_pair_payload import (
    UpdateKeyPairPayload as UpdateKeyPairPayload,
)
from stackit.iaas.models.update_network_area_region_payload import (
    UpdateNetworkAreaRegionPayload as UpdateNetworkAreaRegionPayload,
)
from stackit.iaas.models.update_network_area_route_payload import (
    UpdateNetworkAreaRoutePayload as UpdateNetworkAreaRoutePayload,
)
from stackit.iaas.models.update_network_ipv4_body import (
    UpdateNetworkIPv4Body as UpdateNetworkIPv4Body,
)
from stackit.iaas.models.update_network_ipv6_body import (
    UpdateNetworkIPv6Body as UpdateNetworkIPv6Body,
)
from stackit.iaas.models.update_nic_payload import UpdateNicPayload as UpdateNicPayload
from stackit.iaas.models.update_public_ip_payload import (
    UpdatePublicIPPayload as UpdatePublicIPPayload,
)
from stackit.iaas.models.update_regional_area_ipv4 import (
    UpdateRegionalAreaIPv4 as UpdateRegionalAreaIPv4,
)
from stackit.iaas.models.update_route_of_routing_table_payload import (
    UpdateRouteOfRoutingTablePayload as UpdateRouteOfRoutingTablePayload,
)
from stackit.iaas.models.update_routing_table_of_area_payload import (
    UpdateRoutingTableOfAreaPayload as UpdateRoutingTableOfAreaPayload,
)
from stackit.iaas.models.update_security_group_payload import (
    UpdateSecurityGroupPayload as UpdateSecurityGroupPayload,
)
from stackit.iaas.models.update_server_payload import (
    UpdateServerPayload as UpdateServerPayload,
)
from stackit.iaas.models.update_snapshot_payload import (
    UpdateSnapshotPayload as UpdateSnapshotPayload,
)
from stackit.iaas.models.update_volume_payload import (
    UpdateVolumePayload as UpdateVolumePayload,
)
from stackit.iaas.models.volume import Volume as Volume
from stackit.iaas.models.volume_attachment import VolumeAttachment as VolumeAttachment
from stackit.iaas.models.volume_attachment_list_response import (
    VolumeAttachmentListResponse as VolumeAttachmentListResponse,
)
from stackit.iaas.models.volume_encryption_parameter import (
    VolumeEncryptionParameter as VolumeEncryptionParameter,
)
from stackit.iaas.models.volume_list_response import (
    VolumeListResponse as VolumeListResponse,
)
from stackit.iaas.models.volume_performance_class import (
    VolumePerformanceClass as VolumePerformanceClass,
)
from stackit.iaas.models.volume_performance_class_list_response import (
    VolumePerformanceClassListResponse as VolumePerformanceClassListResponse,
)
from stackit.iaas.models.volume_source import VolumeSource as VolumeSource
