"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.ResolverRuleAssociation = exports.ResolverRule = exports.ResolverQueryLoggingConfigAssociation = exports.ResolverQueryLoggingConfig = exports.ResolverEndpoint = exports.ResolverDnssecConfig = exports.ResolverConfig = exports.OutpostResolver = exports.getResolverRuleAssociationOutput = exports.getResolverRuleAssociation = exports.getResolverRuleOutput = exports.getResolverRule = exports.getResolverQueryLoggingConfigAssociationOutput = exports.getResolverQueryLoggingConfigAssociation = exports.getResolverQueryLoggingConfigOutput = exports.getResolverQueryLoggingConfig = exports.getResolverEndpointOutput = exports.getResolverEndpoint = exports.getResolverDnssecConfigOutput = exports.getResolverDnssecConfig = exports.getResolverConfigOutput = exports.getResolverConfig = exports.getOutpostResolverOutput = exports.getOutpostResolver = exports.getFirewallRuleGroupAssociationOutput = exports.getFirewallRuleGroupAssociation = exports.getFirewallRuleGroupOutput = exports.getFirewallRuleGroup = exports.getFirewallDomainListOutput = exports.getFirewallDomainList = exports.FirewallRuleGroupAssociation = exports.FirewallRuleGroup = exports.FirewallDomainList = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
exports.FirewallDomainList = null;
utilities.lazyLoad(exports, ["FirewallDomainList"], () => require("./firewallDomainList"));
exports.FirewallRuleGroup = null;
utilities.lazyLoad(exports, ["FirewallRuleGroup"], () => require("./firewallRuleGroup"));
exports.FirewallRuleGroupAssociation = null;
utilities.lazyLoad(exports, ["FirewallRuleGroupAssociation"], () => require("./firewallRuleGroupAssociation"));
exports.getFirewallDomainList = null;
exports.getFirewallDomainListOutput = null;
utilities.lazyLoad(exports, ["getFirewallDomainList", "getFirewallDomainListOutput"], () => require("./getFirewallDomainList"));
exports.getFirewallRuleGroup = null;
exports.getFirewallRuleGroupOutput = null;
utilities.lazyLoad(exports, ["getFirewallRuleGroup", "getFirewallRuleGroupOutput"], () => require("./getFirewallRuleGroup"));
exports.getFirewallRuleGroupAssociation = null;
exports.getFirewallRuleGroupAssociationOutput = null;
utilities.lazyLoad(exports, ["getFirewallRuleGroupAssociation", "getFirewallRuleGroupAssociationOutput"], () => require("./getFirewallRuleGroupAssociation"));
exports.getOutpostResolver = null;
exports.getOutpostResolverOutput = null;
utilities.lazyLoad(exports, ["getOutpostResolver", "getOutpostResolverOutput"], () => require("./getOutpostResolver"));
exports.getResolverConfig = null;
exports.getResolverConfigOutput = null;
utilities.lazyLoad(exports, ["getResolverConfig", "getResolverConfigOutput"], () => require("./getResolverConfig"));
exports.getResolverDnssecConfig = null;
exports.getResolverDnssecConfigOutput = null;
utilities.lazyLoad(exports, ["getResolverDnssecConfig", "getResolverDnssecConfigOutput"], () => require("./getResolverDnssecConfig"));
exports.getResolverEndpoint = null;
exports.getResolverEndpointOutput = null;
utilities.lazyLoad(exports, ["getResolverEndpoint", "getResolverEndpointOutput"], () => require("./getResolverEndpoint"));
exports.getResolverQueryLoggingConfig = null;
exports.getResolverQueryLoggingConfigOutput = null;
utilities.lazyLoad(exports, ["getResolverQueryLoggingConfig", "getResolverQueryLoggingConfigOutput"], () => require("./getResolverQueryLoggingConfig"));
exports.getResolverQueryLoggingConfigAssociation = null;
exports.getResolverQueryLoggingConfigAssociationOutput = null;
utilities.lazyLoad(exports, ["getResolverQueryLoggingConfigAssociation", "getResolverQueryLoggingConfigAssociationOutput"], () => require("./getResolverQueryLoggingConfigAssociation"));
exports.getResolverRule = null;
exports.getResolverRuleOutput = null;
utilities.lazyLoad(exports, ["getResolverRule", "getResolverRuleOutput"], () => require("./getResolverRule"));
exports.getResolverRuleAssociation = null;
exports.getResolverRuleAssociationOutput = null;
utilities.lazyLoad(exports, ["getResolverRuleAssociation", "getResolverRuleAssociationOutput"], () => require("./getResolverRuleAssociation"));
exports.OutpostResolver = null;
utilities.lazyLoad(exports, ["OutpostResolver"], () => require("./outpostResolver"));
exports.ResolverConfig = null;
utilities.lazyLoad(exports, ["ResolverConfig"], () => require("./resolverConfig"));
exports.ResolverDnssecConfig = null;
utilities.lazyLoad(exports, ["ResolverDnssecConfig"], () => require("./resolverDnssecConfig"));
exports.ResolverEndpoint = null;
utilities.lazyLoad(exports, ["ResolverEndpoint"], () => require("./resolverEndpoint"));
exports.ResolverQueryLoggingConfig = null;
utilities.lazyLoad(exports, ["ResolverQueryLoggingConfig"], () => require("./resolverQueryLoggingConfig"));
exports.ResolverQueryLoggingConfigAssociation = null;
utilities.lazyLoad(exports, ["ResolverQueryLoggingConfigAssociation"], () => require("./resolverQueryLoggingConfigAssociation"));
exports.ResolverRule = null;
utilities.lazyLoad(exports, ["ResolverRule"], () => require("./resolverRule"));
exports.ResolverRuleAssociation = null;
utilities.lazyLoad(exports, ["ResolverRuleAssociation"], () => require("./resolverRuleAssociation"));
// Export enums:
__exportStar(require("../types/enums/route53resolver"), exports);
const _module = {
    version: utilities.getVersion(),
    construct: (name, type, urn) => {
        switch (type) {
            case "aws-native:route53resolver:FirewallDomainList":
                return new exports.FirewallDomainList(name, undefined, { urn });
            case "aws-native:route53resolver:FirewallRuleGroup":
                return new exports.FirewallRuleGroup(name, undefined, { urn });
            case "aws-native:route53resolver:FirewallRuleGroupAssociation":
                return new exports.FirewallRuleGroupAssociation(name, undefined, { urn });
            case "aws-native:route53resolver:OutpostResolver":
                return new exports.OutpostResolver(name, undefined, { urn });
            case "aws-native:route53resolver:ResolverConfig":
                return new exports.ResolverConfig(name, undefined, { urn });
            case "aws-native:route53resolver:ResolverDnssecConfig":
                return new exports.ResolverDnssecConfig(name, undefined, { urn });
            case "aws-native:route53resolver:ResolverEndpoint":
                return new exports.ResolverEndpoint(name, undefined, { urn });
            case "aws-native:route53resolver:ResolverQueryLoggingConfig":
                return new exports.ResolverQueryLoggingConfig(name, undefined, { urn });
            case "aws-native:route53resolver:ResolverQueryLoggingConfigAssociation":
                return new exports.ResolverQueryLoggingConfigAssociation(name, undefined, { urn });
            case "aws-native:route53resolver:ResolverRule":
                return new exports.ResolverRule(name, undefined, { urn });
            case "aws-native:route53resolver:ResolverRuleAssociation":
                return new exports.ResolverRuleAssociation(name, undefined, { urn });
            default:
                throw new Error(`unknown resource type ${type}`);
        }
    },
};
pulumi.runtime.registerResourceModule("aws-native", "route53resolver", _module);
//# sourceMappingURL=index.js.map