"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.BackupResource=exports.TagOperation=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core");var TagOperation;(function(TagOperation2){TagOperation2.STRING_EQUALS="STRINGEQUALS",TagOperation2.DUMMY="dummy"})(TagOperation=exports.TagOperation||(exports.TagOperation={}));class BackupResource{constructor(resource,tagCondition,construct){jsiiDeprecationWarnings.aws_cdk_lib_aws_backup_TagCondition(tagCondition),this.resource=resource,this.tagCondition=tagCondition,this.construct=construct}static fromConstruct(construct){return new BackupResource(void 0,void 0,construct)}static fromDynamoDbTable(table){return jsiiDeprecationWarnings.aws_cdk_lib_aws_dynamodb_ITable(table),BackupResource.fromArn(table.tableArn)}static fromEc2Instance(instance){return jsiiDeprecationWarnings.aws_cdk_lib_aws_ec2_IInstance(instance),BackupResource.fromArn(core_1.Stack.of(instance).formatArn({service:"ec2",resource:"instance",resourceName:instance.instanceId}))}static fromEfsFileSystem(fileSystem){return jsiiDeprecationWarnings.aws_cdk_lib_aws_efs_IFileSystem(fileSystem),BackupResource.fromArn(core_1.Stack.of(fileSystem).formatArn({service:"elasticfilesystem",resource:"file-system",resourceName:fileSystem.fileSystemId}))}static fromRdsDatabaseInstance(instance){return jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_IDatabaseInstance(instance),BackupResource.fromArn(instance.instanceArn)}static fromArn(arn){return new BackupResource(arn)}static fromTag(key,value,operation){return jsiiDeprecationWarnings.aws_cdk_lib_aws_backup_TagOperation(operation),new BackupResource(void 0,{key,value,operation})}}exports.BackupResource=BackupResource,_a=JSII_RTTI_SYMBOL_1,BackupResource[_a]={fqn:"aws-cdk-lib.aws_backup.BackupResource",version:"2.13.0"};
//# sourceMappingURL=resource.js.map
