"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.SuppressionListAddress = exports.SuppressionList = exports.SmtpUsername = exports.SenderUsername = exports.listCommunicationServiceKeysOutput = exports.listCommunicationServiceKeys = exports.getSuppressionListAddressOutput = exports.getSuppressionListAddress = exports.getSuppressionListOutput = exports.getSuppressionList = exports.getSmtpUsernameOutput = exports.getSmtpUsername = exports.getSenderUsernameOutput = exports.getSenderUsername = exports.getEmailServiceOutput = exports.getEmailService = exports.getDomainOutput = exports.getDomain = exports.getCommunicationServiceOutput = exports.getCommunicationService = exports.EmailService = exports.Domain = exports.CommunicationService = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
exports.CommunicationService = null;
utilities.lazyLoad(exports, ["CommunicationService"], () => require("./communicationService"));
exports.Domain = null;
utilities.lazyLoad(exports, ["Domain"], () => require("./domain"));
exports.EmailService = null;
utilities.lazyLoad(exports, ["EmailService"], () => require("./emailService"));
exports.getCommunicationService = null;
exports.getCommunicationServiceOutput = null;
utilities.lazyLoad(exports, ["getCommunicationService", "getCommunicationServiceOutput"], () => require("./getCommunicationService"));
exports.getDomain = null;
exports.getDomainOutput = null;
utilities.lazyLoad(exports, ["getDomain", "getDomainOutput"], () => require("./getDomain"));
exports.getEmailService = null;
exports.getEmailServiceOutput = null;
utilities.lazyLoad(exports, ["getEmailService", "getEmailServiceOutput"], () => require("./getEmailService"));
exports.getSenderUsername = null;
exports.getSenderUsernameOutput = null;
utilities.lazyLoad(exports, ["getSenderUsername", "getSenderUsernameOutput"], () => require("./getSenderUsername"));
exports.getSmtpUsername = null;
exports.getSmtpUsernameOutput = null;
utilities.lazyLoad(exports, ["getSmtpUsername", "getSmtpUsernameOutput"], () => require("./getSmtpUsername"));
exports.getSuppressionList = null;
exports.getSuppressionListOutput = null;
utilities.lazyLoad(exports, ["getSuppressionList", "getSuppressionListOutput"], () => require("./getSuppressionList"));
exports.getSuppressionListAddress = null;
exports.getSuppressionListAddressOutput = null;
utilities.lazyLoad(exports, ["getSuppressionListAddress", "getSuppressionListAddressOutput"], () => require("./getSuppressionListAddress"));
exports.listCommunicationServiceKeys = null;
exports.listCommunicationServiceKeysOutput = null;
utilities.lazyLoad(exports, ["listCommunicationServiceKeys", "listCommunicationServiceKeysOutput"], () => require("./listCommunicationServiceKeys"));
exports.SenderUsername = null;
utilities.lazyLoad(exports, ["SenderUsername"], () => require("./senderUsername"));
exports.SmtpUsername = null;
utilities.lazyLoad(exports, ["SmtpUsername"], () => require("./smtpUsername"));
exports.SuppressionList = null;
utilities.lazyLoad(exports, ["SuppressionList"], () => require("./suppressionList"));
exports.SuppressionListAddress = null;
utilities.lazyLoad(exports, ["SuppressionListAddress"], () => require("./suppressionListAddress"));
// Export enums:
__exportStar(require("../types/enums/communication"), exports);
const _module = {
    version: utilities.getVersion(),
    construct: (name, type, urn) => {
        switch (type) {
            case "azure-native:communication:CommunicationService":
                return new exports.CommunicationService(name, undefined, { urn });
            case "azure-native:communication:Domain":
                return new exports.Domain(name, undefined, { urn });
            case "azure-native:communication:EmailService":
                return new exports.EmailService(name, undefined, { urn });
            case "azure-native:communication:SenderUsername":
                return new exports.SenderUsername(name, undefined, { urn });
            case "azure-native:communication:SmtpUsername":
                return new exports.SmtpUsername(name, undefined, { urn });
            case "azure-native:communication:SuppressionList":
                return new exports.SuppressionList(name, undefined, { urn });
            case "azure-native:communication:SuppressionListAddress":
                return new exports.SuppressionListAddress(name, undefined, { urn });
            default:
                throw new Error(`unknown resource type ${type}`);
        }
    },
};
pulumi.runtime.registerResourceModule("azure-native", "communication", _module);
//# sourceMappingURL=data:application/json;base64, 