import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault */ export declare class LogicallyAirGappedBackupVault extends pulumi.CustomResource { /** * Get an existing LogicallyAirGappedBackupVault resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): LogicallyAirGappedBackupVault; /** * Returns true if the given object is an instance of LogicallyAirGappedBackupVault. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is LogicallyAirGappedBackupVault; /** * The backup vault access policy document in JSON format. * * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Backup::LogicallyAirGappedBackupVault` for more information about the expected schema for this property. */ readonly accessPolicy: pulumi.Output; /** * The ARN of the backup vault. */ readonly backupVaultArn: pulumi.Output; /** * The name of a logical container where backups are stored. Logically air-gapped backup vaults are identified by names that are unique to the account used to create them and the Region where they are created. */ readonly backupVaultName: pulumi.Output; /** * The tags to assign to the vault. */ readonly backupVaultTags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The server-side encryption key that is used to protect your backups; for example, `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab` . * * If this field is left blank, AWS Backup will create an AWS owned key to be used to encrypt the content of the logically air-gapped vault. The ARN of this created key will be available as `Fn::GetAtt` output. */ readonly encryptionKeyArn: pulumi.Output; /** * The maximum retention period that the vault retains its recovery points. */ readonly maxRetentionDays: pulumi.Output; /** * This setting specifies the minimum retention period that the vault retains its recovery points. * * The minimum value accepted is 7 days. */ readonly minRetentionDays: pulumi.Output; /** * The Amazon Resource Name (ARN) of the MPA approval team to associate with the backup vault. This cannot be changed after it is set from the CloudFormation template. */ readonly mpaApprovalTeamArn: pulumi.Output; /** * Returns event notifications for the specified backup vault. */ readonly notifications: pulumi.Output; /** * The vault state. The possible values are `CREATING` , `AVAILABLE` , and `FAILED` . */ readonly vaultState: pulumi.Output; /** * The vault type. The possible values are `BACKUP_VAULT` and `LOGICALLY_AIR_GAPPED_BACKUP_VAULT` . */ readonly vaultType: pulumi.Output; /** * Create a LogicallyAirGappedBackupVault resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: LogicallyAirGappedBackupVaultArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a LogicallyAirGappedBackupVault resource. */ export interface LogicallyAirGappedBackupVaultArgs { /** * The backup vault access policy document in JSON format. * * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Backup::LogicallyAirGappedBackupVault` for more information about the expected schema for this property. */ accessPolicy?: any; /** * The name of a logical container where backups are stored. Logically air-gapped backup vaults are identified by names that are unique to the account used to create them and the Region where they are created. */ backupVaultName?: pulumi.Input; /** * The tags to assign to the vault. */ backupVaultTags?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The server-side encryption key that is used to protect your backups; for example, `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab` . * * If this field is left blank, AWS Backup will create an AWS owned key to be used to encrypt the content of the logically air-gapped vault. The ARN of this created key will be available as `Fn::GetAtt` output. */ encryptionKeyArn?: pulumi.Input; /** * The maximum retention period that the vault retains its recovery points. */ maxRetentionDays: pulumi.Input; /** * This setting specifies the minimum retention period that the vault retains its recovery points. * * The minimum value accepted is 7 days. */ minRetentionDays: pulumi.Input; /** * The Amazon Resource Name (ARN) of the MPA approval team to associate with the backup vault. This cannot be changed after it is set from the CloudFormation template. */ mpaApprovalTeamArn?: pulumi.Input; /** * Returns event notifications for the specified backup vault. */ notifications?: pulumi.Input; }