"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.listBillingAccountInvoiceSectionsByCreateSubscriptionPermissionOutput = exports.listBillingAccountInvoiceSectionsByCreateSubscriptionPermission = exports.InvoiceSection = exports.getInvoiceSectionOutput = exports.getInvoiceSection = exports.getBillingRoleAssignmentByEnrollmentAccountOutput = exports.getBillingRoleAssignmentByEnrollmentAccount = exports.getBillingRoleAssignmentByDepartmentOutput = exports.getBillingRoleAssignmentByDepartment = exports.getBillingRoleAssignmentByBillingAccountOutput = exports.getBillingRoleAssignmentByBillingAccount = exports.getBillingProfileOutput = exports.getBillingProfile = exports.getAssociatedTenantOutput = exports.getAssociatedTenant = exports.BillingRoleAssignmentByEnrollmentAccount = exports.BillingRoleAssignmentByDepartment = exports.BillingRoleAssignmentByBillingAccount = exports.BillingProfile = exports.AssociatedTenant = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
exports.AssociatedTenant = null;
utilities.lazyLoad(exports, ["AssociatedTenant"], () => require("./associatedTenant"));
exports.BillingProfile = null;
utilities.lazyLoad(exports, ["BillingProfile"], () => require("./billingProfile"));
exports.BillingRoleAssignmentByBillingAccount = null;
utilities.lazyLoad(exports, ["BillingRoleAssignmentByBillingAccount"], () => require("./billingRoleAssignmentByBillingAccount"));
exports.BillingRoleAssignmentByDepartment = null;
utilities.lazyLoad(exports, ["BillingRoleAssignmentByDepartment"], () => require("./billingRoleAssignmentByDepartment"));
exports.BillingRoleAssignmentByEnrollmentAccount = null;
utilities.lazyLoad(exports, ["BillingRoleAssignmentByEnrollmentAccount"], () => require("./billingRoleAssignmentByEnrollmentAccount"));
exports.getAssociatedTenant = null;
exports.getAssociatedTenantOutput = null;
utilities.lazyLoad(exports, ["getAssociatedTenant", "getAssociatedTenantOutput"], () => require("./getAssociatedTenant"));
exports.getBillingProfile = null;
exports.getBillingProfileOutput = null;
utilities.lazyLoad(exports, ["getBillingProfile", "getBillingProfileOutput"], () => require("./getBillingProfile"));
exports.getBillingRoleAssignmentByBillingAccount = null;
exports.getBillingRoleAssignmentByBillingAccountOutput = null;
utilities.lazyLoad(exports, ["getBillingRoleAssignmentByBillingAccount", "getBillingRoleAssignmentByBillingAccountOutput"], () => require("./getBillingRoleAssignmentByBillingAccount"));
exports.getBillingRoleAssignmentByDepartment = null;
exports.getBillingRoleAssignmentByDepartmentOutput = null;
utilities.lazyLoad(exports, ["getBillingRoleAssignmentByDepartment", "getBillingRoleAssignmentByDepartmentOutput"], () => require("./getBillingRoleAssignmentByDepartment"));
exports.getBillingRoleAssignmentByEnrollmentAccount = null;
exports.getBillingRoleAssignmentByEnrollmentAccountOutput = null;
utilities.lazyLoad(exports, ["getBillingRoleAssignmentByEnrollmentAccount", "getBillingRoleAssignmentByEnrollmentAccountOutput"], () => require("./getBillingRoleAssignmentByEnrollmentAccount"));
exports.getInvoiceSection = null;
exports.getInvoiceSectionOutput = null;
utilities.lazyLoad(exports, ["getInvoiceSection", "getInvoiceSectionOutput"], () => require("./getInvoiceSection"));
exports.InvoiceSection = null;
utilities.lazyLoad(exports, ["InvoiceSection"], () => require("./invoiceSection"));
exports.listBillingAccountInvoiceSectionsByCreateSubscriptionPermission = null;
exports.listBillingAccountInvoiceSectionsByCreateSubscriptionPermissionOutput = null;
utilities.lazyLoad(exports, ["listBillingAccountInvoiceSectionsByCreateSubscriptionPermission", "listBillingAccountInvoiceSectionsByCreateSubscriptionPermissionOutput"], () => require("./listBillingAccountInvoiceSectionsByCreateSubscriptionPermission"));
// Export enums:
__exportStar(require("../types/enums/billing"), exports);
const _module = {
    version: utilities.getVersion(),
    construct: (name, type, urn) => {
        switch (type) {
            case "azure-native:billing:AssociatedTenant":
                return new exports.AssociatedTenant(name, undefined, { urn });
            case "azure-native:billing:BillingProfile":
                return new exports.BillingProfile(name, undefined, { urn });
            case "azure-native:billing:BillingRoleAssignmentByBillingAccount":
                return new exports.BillingRoleAssignmentByBillingAccount(name, undefined, { urn });
            case "azure-native:billing:BillingRoleAssignmentByDepartment":
                return new exports.BillingRoleAssignmentByDepartment(name, undefined, { urn });
            case "azure-native:billing:BillingRoleAssignmentByEnrollmentAccount":
                return new exports.BillingRoleAssignmentByEnrollmentAccount(name, undefined, { urn });
            case "azure-native:billing:InvoiceSection":
                return new exports.InvoiceSection(name, undefined, { urn });
            default:
                throw new Error(`unknown resource type ${type}`);
        }
    },
};
pulumi.runtime.registerResourceModule("azure-native", "billing", _module);
//# sourceMappingURL=data:application/json;base64, 