"use strict";
// *** 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! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.volumesOutput = exports.volumes = exports.VolumeAttach = exports.Volume = exports.snapshotsOutput = exports.snapshots = exports.snapshotGroupsOutput = exports.snapshotGroups = exports.SnapshotGroup = exports.Snapshot = exports.maxExtraPerformancesOutput = exports.maxExtraPerformances = exports.getVolumesOutput = exports.getVolumes = exports.getSnapshotsOutput = exports.getSnapshots = exports.getSnapshotGroupsOutput = exports.getSnapshotGroups = exports.getMaxExtraPerformancesOutput = exports.getMaxExtraPerformances = exports.getAutoSnapshotPoliciesOutput = exports.getAutoSnapshotPolicies = exports.AutoSnapshotPolicyAttachment = exports.AutoSnapshotPolicy = exports.autoSnapshotPoliciesOutput = exports.autoSnapshotPolicies = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
exports.autoSnapshotPolicies = null;
exports.autoSnapshotPoliciesOutput = null;
utilities.lazyLoad(exports, ["autoSnapshotPolicies", "autoSnapshotPoliciesOutput"], () => require("./autoSnapshotPolicies"));
exports.AutoSnapshotPolicy = null;
utilities.lazyLoad(exports, ["AutoSnapshotPolicy"], () => require("./autoSnapshotPolicy"));
exports.AutoSnapshotPolicyAttachment = null;
utilities.lazyLoad(exports, ["AutoSnapshotPolicyAttachment"], () => require("./autoSnapshotPolicyAttachment"));
exports.getAutoSnapshotPolicies = null;
exports.getAutoSnapshotPoliciesOutput = null;
utilities.lazyLoad(exports, ["getAutoSnapshotPolicies", "getAutoSnapshotPoliciesOutput"], () => require("./getAutoSnapshotPolicies"));
exports.getMaxExtraPerformances = null;
exports.getMaxExtraPerformancesOutput = null;
utilities.lazyLoad(exports, ["getMaxExtraPerformances", "getMaxExtraPerformancesOutput"], () => require("./getMaxExtraPerformances"));
exports.getSnapshotGroups = null;
exports.getSnapshotGroupsOutput = null;
utilities.lazyLoad(exports, ["getSnapshotGroups", "getSnapshotGroupsOutput"], () => require("./getSnapshotGroups"));
exports.getSnapshots = null;
exports.getSnapshotsOutput = null;
utilities.lazyLoad(exports, ["getSnapshots", "getSnapshotsOutput"], () => require("./getSnapshots"));
exports.getVolumes = null;
exports.getVolumesOutput = null;
utilities.lazyLoad(exports, ["getVolumes", "getVolumesOutput"], () => require("./getVolumes"));
exports.maxExtraPerformances = null;
exports.maxExtraPerformancesOutput = null;
utilities.lazyLoad(exports, ["maxExtraPerformances", "maxExtraPerformancesOutput"], () => require("./maxExtraPerformances"));
exports.Snapshot = null;
utilities.lazyLoad(exports, ["Snapshot"], () => require("./snapshot"));
exports.SnapshotGroup = null;
utilities.lazyLoad(exports, ["SnapshotGroup"], () => require("./snapshotGroup"));
exports.snapshotGroups = null;
exports.snapshotGroupsOutput = null;
utilities.lazyLoad(exports, ["snapshotGroups", "snapshotGroupsOutput"], () => require("./snapshotGroups"));
exports.snapshots = null;
exports.snapshotsOutput = null;
utilities.lazyLoad(exports, ["snapshots", "snapshotsOutput"], () => require("./snapshots"));
exports.Volume = null;
utilities.lazyLoad(exports, ["Volume"], () => require("./volume"));
exports.VolumeAttach = null;
utilities.lazyLoad(exports, ["VolumeAttach"], () => require("./volumeAttach"));
exports.volumes = null;
exports.volumesOutput = null;
utilities.lazyLoad(exports, ["volumes", "volumesOutput"], () => require("./volumes"));
const _module = {
    version: utilities.getVersion(),
    construct: (name, type, urn) => {
        switch (type) {
            case "volcengine:ebs/autoSnapshotPolicy:AutoSnapshotPolicy":
                return new exports.AutoSnapshotPolicy(name, undefined, { urn });
            case "volcengine:ebs/autoSnapshotPolicyAttachment:AutoSnapshotPolicyAttachment":
                return new exports.AutoSnapshotPolicyAttachment(name, undefined, { urn });
            case "volcengine:ebs/snapshot:Snapshot":
                return new exports.Snapshot(name, undefined, { urn });
            case "volcengine:ebs/snapshotGroup:SnapshotGroup":
                return new exports.SnapshotGroup(name, undefined, { urn });
            case "volcengine:ebs/volume:Volume":
                return new exports.Volume(name, undefined, { urn });
            case "volcengine:ebs/volumeAttach:VolumeAttach":
                return new exports.VolumeAttach(name, undefined, { urn });
            default:
                throw new Error(`unknown resource type ${type}`);
        }
    },
};
pulumi.runtime.registerResourceModule("volcengine", "ebs/autoSnapshotPolicy", _module);
pulumi.runtime.registerResourceModule("volcengine", "ebs/autoSnapshotPolicyAttachment", _module);
pulumi.runtime.registerResourceModule("volcengine", "ebs/snapshot", _module);
pulumi.runtime.registerResourceModule("volcengine", "ebs/snapshotGroup", _module);
pulumi.runtime.registerResourceModule("volcengine", "ebs/volume", _module);
pulumi.runtime.registerResourceModule("volcengine", "ebs/volumeAttach", _module);
//# sourceMappingURL=index.js.map