# 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! ***

# Export this package's modules as members:
from .alidns_domain import *
from .alidns_domain_attachment import *
from .alidns_instance import *
from .alidns_record import *
from .ddos_bgp_instance import *
from .ddos_coo_instance import *
from .dns_domain import *
from .domain import *
from .domain_attachment import *
from .domain_group import *
from .get_alidns_domain_groups import *
from .get_alidns_domains import *
from .get_alidns_instances import *
from .get_alidns_records import *
from .get_domain_groups import *
from .get_domain_records import *
from .get_domain_txt_guid import *
from .get_domains import *
from .get_groups import *
from .get_instances import *
from .get_records import *
from .get_resolution_lines import *
from .group import *
from .instance import *
from .record import *
from . import outputs

def _register_module():
    import pulumi
    from .. import _utilities


    class Module(pulumi.runtime.ResourceModule):
        _version = _utilities.get_semver_version()

        def version(self):
            return Module._version

        def construct(self, name: str, typ: str, urn: str) -> pulumi.Resource:
            if typ == "alicloud:dns/alidnsDomain:AlidnsDomain":
                return AlidnsDomain(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/alidnsDomainAttachment:AlidnsDomainAttachment":
                return AlidnsDomainAttachment(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/alidnsInstance:AlidnsInstance":
                return AlidnsInstance(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/alidnsRecord:AlidnsRecord":
                return AlidnsRecord(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/ddosBgpInstance:DdosBgpInstance":
                return DdosBgpInstance(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/ddosCooInstance:DdosCooInstance":
                return DdosCooInstance(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/dnsDomain:DnsDomain":
                return DnsDomain(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/domain:Domain":
                return Domain(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/domainAttachment:DomainAttachment":
                return DomainAttachment(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/domainGroup:DomainGroup":
                return DomainGroup(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/group:Group":
                return Group(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/instance:Instance":
                return Instance(name, pulumi.ResourceOptions(urn=urn))
            elif typ == "alicloud:dns/record:Record":
                return Record(name, pulumi.ResourceOptions(urn=urn))
            else:
                raise Exception(f"unknown resource type {typ}")


    _module_instance = Module()
    pulumi.runtime.register_resource_module("alicloud", "dns/alidnsDomain", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/alidnsDomainAttachment", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/alidnsInstance", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/alidnsRecord", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/ddosBgpInstance", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/ddosCooInstance", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/dnsDomain", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/domain", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/domainAttachment", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/domainGroup", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/group", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/instance", _module_instance)
    pulumi.runtime.register_resource_module("alicloud", "dns/record", _module_instance)

_register_module()
