"use strict";
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
    for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.HostedZoneAssociation = exports.GlobalResolver = exports.getHostedZoneAssociationOutput = exports.getHostedZoneAssociation = exports.getGlobalResolverOutput = exports.getGlobalResolver = exports.getFirewallRuleOutput = exports.getFirewallRule = exports.getFirewallDomainListOutput = exports.getFirewallDomainList = exports.getDnsViewOutput = exports.getDnsView = exports.getAccessTokenOutput = exports.getAccessToken = exports.getAccessSourceOutput = exports.getAccessSource = exports.FirewallRule = exports.FirewallDomainList = exports.DnsView = exports.AccessToken = exports.AccessSource = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
exports.AccessSource = null;
utilities.lazyLoad(exports, ["AccessSource"], () => require("./accessSource"));
exports.AccessToken = null;
utilities.lazyLoad(exports, ["AccessToken"], () => require("./accessToken"));
exports.DnsView = null;
utilities.lazyLoad(exports, ["DnsView"], () => require("./dnsView"));
exports.FirewallDomainList = null;
utilities.lazyLoad(exports, ["FirewallDomainList"], () => require("./firewallDomainList"));
exports.FirewallRule = null;
utilities.lazyLoad(exports, ["FirewallRule"], () => require("./firewallRule"));
exports.getAccessSource = null;
exports.getAccessSourceOutput = null;
utilities.lazyLoad(exports, ["getAccessSource", "getAccessSourceOutput"], () => require("./getAccessSource"));
exports.getAccessToken = null;
exports.getAccessTokenOutput = null;
utilities.lazyLoad(exports, ["getAccessToken", "getAccessTokenOutput"], () => require("./getAccessToken"));
exports.getDnsView = null;
exports.getDnsViewOutput = null;
utilities.lazyLoad(exports, ["getDnsView", "getDnsViewOutput"], () => require("./getDnsView"));
exports.getFirewallDomainList = null;
exports.getFirewallDomainListOutput = null;
utilities.lazyLoad(exports, ["getFirewallDomainList", "getFirewallDomainListOutput"], () => require("./getFirewallDomainList"));
exports.getFirewallRule = null;
exports.getFirewallRuleOutput = null;
utilities.lazyLoad(exports, ["getFirewallRule", "getFirewallRuleOutput"], () => require("./getFirewallRule"));
exports.getGlobalResolver = null;
exports.getGlobalResolverOutput = null;
utilities.lazyLoad(exports, ["getGlobalResolver", "getGlobalResolverOutput"], () => require("./getGlobalResolver"));
exports.getHostedZoneAssociation = null;
exports.getHostedZoneAssociationOutput = null;
utilities.lazyLoad(exports, ["getHostedZoneAssociation", "getHostedZoneAssociationOutput"], () => require("./getHostedZoneAssociation"));
exports.GlobalResolver = null;
utilities.lazyLoad(exports, ["GlobalResolver"], () => require("./globalResolver"));
exports.HostedZoneAssociation = null;
utilities.lazyLoad(exports, ["HostedZoneAssociation"], () => require("./hostedZoneAssociation"));
// Export enums:
__exportStar(require("../types/enums/route53globalresolver"), exports);
const _module = {
    version: utilities.getVersion(),
    construct: (name, type, urn) => {
        switch (type) {
            case "aws-native:route53globalresolver:AccessSource":
                return new exports.AccessSource(name, undefined, { urn });
            case "aws-native:route53globalresolver:AccessToken":
                return new exports.AccessToken(name, undefined, { urn });
            case "aws-native:route53globalresolver:DnsView":
                return new exports.DnsView(name, undefined, { urn });
            case "aws-native:route53globalresolver:FirewallDomainList":
                return new exports.FirewallDomainList(name, undefined, { urn });
            case "aws-native:route53globalresolver:FirewallRule":
                return new exports.FirewallRule(name, undefined, { urn });
            case "aws-native:route53globalresolver:GlobalResolver":
                return new exports.GlobalResolver(name, undefined, { urn });
            case "aws-native:route53globalresolver:HostedZoneAssociation":
                return new exports.HostedZoneAssociation(name, undefined, { urn });
            default:
                throw new Error(`unknown resource type ${type}`);
        }
    },
};
pulumi.runtime.registerResourceModule("aws-native", "route53globalresolver", _module);
//# sourceMappingURL=index.js.map