# coding=utf-8
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import warnings
import pulumi
import pulumi.runtime
from typing import Any, Dict, List, Mapping, Optional, Tuple, Union
from .. import _utilities, _tables

__all__ = [
    'GetBastionHostInstancesInstanceResult',
    'GetDBAuditInstanceInstanceResult',
]

@pulumi.output_type
class GetBastionHostInstancesInstanceResult(dict):
    def __init__(__self__, *,
                 description: str,
                 id: str,
                 instance_status: str,
                 license_code: str,
                 private_domain: str,
                 public_domain: str,
                 public_network_access: bool,
                 security_group_ids: List[str],
                 user_vswitch_id: str,
                 tags: Optional[Mapping[str, Any]] = None):
        """
        :param str description: The instance's remark.
        :param str id: The instance's id.
        :param str instance_status: The instance's status.
        :param str private_domain: The instance's private domain name.
        :param str public_domain: The instance's public domain name.
        :param bool public_network_access: The instance's public network access configuration.
        :param List[str] security_group_ids: The instance's security group configuration.
        :param str user_vswitch_id: The instance's vSwitch ID.
        :param Mapping[str, Any] tags: A map of tags assigned to the bastionhost instance. It must be in the format:
               ```python
               import pulumi
               import pulumi_alicloud as alicloud
               
               instance = alicloud.yundun.get_bastion_host_instances(tags={
                   "tagKey1": "tagValue1",
               })
               ```
        """
        pulumi.set(__self__, "description", description)
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "instance_status", instance_status)
        pulumi.set(__self__, "license_code", license_code)
        pulumi.set(__self__, "private_domain", private_domain)
        pulumi.set(__self__, "public_domain", public_domain)
        pulumi.set(__self__, "public_network_access", public_network_access)
        pulumi.set(__self__, "security_group_ids", security_group_ids)
        pulumi.set(__self__, "user_vswitch_id", user_vswitch_id)
        if tags is not None:
            pulumi.set(__self__, "tags", tags)

    @property
    @pulumi.getter
    def description(self) -> str:
        """
        The instance's remark.
        """
        return pulumi.get(self, "description")

    @property
    @pulumi.getter
    def id(self) -> str:
        """
        The instance's id.
        """
        return pulumi.get(self, "id")

    @property
    @pulumi.getter(name="instanceStatus")
    def instance_status(self) -> str:
        """
        The instance's status.
        """
        return pulumi.get(self, "instance_status")

    @property
    @pulumi.getter(name="licenseCode")
    def license_code(self) -> str:
        return pulumi.get(self, "license_code")

    @property
    @pulumi.getter(name="privateDomain")
    def private_domain(self) -> str:
        """
        The instance's private domain name.
        """
        return pulumi.get(self, "private_domain")

    @property
    @pulumi.getter(name="publicDomain")
    def public_domain(self) -> str:
        """
        The instance's public domain name.
        """
        return pulumi.get(self, "public_domain")

    @property
    @pulumi.getter(name="publicNetworkAccess")
    def public_network_access(self) -> bool:
        """
        The instance's public network access configuration.
        """
        return pulumi.get(self, "public_network_access")

    @property
    @pulumi.getter(name="securityGroupIds")
    def security_group_ids(self) -> List[str]:
        """
        The instance's security group configuration.
        """
        return pulumi.get(self, "security_group_ids")

    @property
    @pulumi.getter(name="userVswitchId")
    def user_vswitch_id(self) -> str:
        """
        The instance's vSwitch ID.
        """
        return pulumi.get(self, "user_vswitch_id")

    @property
    @pulumi.getter
    def tags(self) -> Optional[Mapping[str, Any]]:
        """
        A map of tags assigned to the bastionhost instance. It must be in the format:
        ```python
        import pulumi
        import pulumi_alicloud as alicloud

        instance = alicloud.yundun.get_bastion_host_instances(tags={
            "tagKey1": "tagValue1",
        })
        ```
        """
        return pulumi.get(self, "tags")


@pulumi.output_type
class GetDBAuditInstanceInstanceResult(dict):
    def __init__(__self__, *,
                 description: str,
                 id: str,
                 instance_status: str,
                 license_code: str,
                 private_domain: str,
                 public_domain: str,
                 public_network_access: bool,
                 user_vswitch_id: str,
                 tags: Optional[Mapping[str, Any]] = None):
        pulumi.set(__self__, "description", description)
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "instance_status", instance_status)
        pulumi.set(__self__, "license_code", license_code)
        pulumi.set(__self__, "private_domain", private_domain)
        pulumi.set(__self__, "public_domain", public_domain)
        pulumi.set(__self__, "public_network_access", public_network_access)
        pulumi.set(__self__, "user_vswitch_id", user_vswitch_id)
        if tags is not None:
            pulumi.set(__self__, "tags", tags)

    @property
    @pulumi.getter
    def description(self) -> str:
        return pulumi.get(self, "description")

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @property
    @pulumi.getter(name="instanceStatus")
    def instance_status(self) -> str:
        return pulumi.get(self, "instance_status")

    @property
    @pulumi.getter(name="licenseCode")
    def license_code(self) -> str:
        return pulumi.get(self, "license_code")

    @property
    @pulumi.getter(name="privateDomain")
    def private_domain(self) -> str:
        return pulumi.get(self, "private_domain")

    @property
    @pulumi.getter(name="publicDomain")
    def public_domain(self) -> str:
        return pulumi.get(self, "public_domain")

    @property
    @pulumi.getter(name="publicNetworkAccess")
    def public_network_access(self) -> bool:
        return pulumi.get(self, "public_network_access")

    @property
    @pulumi.getter(name="userVswitchId")
    def user_vswitch_id(self) -> str:
        return pulumi.get(self, "user_vswitch_id")

    @property
    @pulumi.getter
    def tags(self) -> Optional[Mapping[str, Any]]:
        return pulumi.get(self, "tags")


