import * as core from "@terrascript/core"; export interface LifecycleArgs extends core.SchemaArgs { coldStorageAfter?: number | core.NumberOut; deleteAfter?: number | core.NumberOut; } export declare class Lifecycle extends core.Schema { coldStorageAfter?: number | core.NumberOut; deleteAfter?: number | core.NumberOut; } export interface CopyActionArgs extends core.SchemaArgs { destinationVaultArn: string | core.StringOut; lifecycle?: Lifecycle; } export declare class CopyAction extends core.Schema { destinationVaultArn: string | core.StringOut; lifecycle?: Lifecycle; } export interface RuleArgs extends core.SchemaArgs { completionWindow?: number | core.NumberOut; copyAction?: core.Array | core.ArrayOut; enableContinuousBackup?: boolean | core.BooleanOut; lifecycle?: Lifecycle; recoveryPointTags?: core.Map | core.MapOut; ruleName: string | core.StringOut; schedule?: string | core.StringOut; startWindow?: number | core.NumberOut; targetVaultName: string | core.StringOut; } export declare class Rule extends core.Schema { completionWindow?: number | core.NumberOut; copyAction?: core.Array | core.ArrayOut; enableContinuousBackup?: boolean | core.BooleanOut; lifecycle?: Lifecycle; recoveryPointTags?: core.Map | core.MapOut; ruleName: string | core.StringOut; schedule?: string | core.StringOut; startWindow?: number | core.NumberOut; targetVaultName: string | core.StringOut; } export interface AdvancedBackupSettingArgs extends core.SchemaArgs { backupOptions: core.Map | core.MapOut; resourceType: string | core.StringOut; } export declare class AdvancedBackupSetting extends core.Schema { backupOptions: core.Map | core.MapOut; resourceType: string | core.StringOut; } export interface PlanArgs extends core.ResourceArgs { /** * (Optional) An object that specifies backup options for each resource type. */ advancedBackupSetting?: core.Array | core.ArrayOut; /** * (Required) The display name of a backup plan. */ name: string | core.StringOut; /** * (Required) A rule object that specifies a scheduled task that is used to back up a selection of reso * urces. */ rule: core.Array | core.ArrayOut; /** * (Optional) Metadata that you can assign to help organize the plans you create. If configured with a * provider [`default_tags` configuration block](https://registry.terraform.io/providers/hashicorp/aws/ * latest/docs#default_tags-configuration-block) present, tags with matching keys will overwrite those * defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; } export declare class Plan extends core.Resource { /** * (Optional) An object that specifies backup options for each resource type. */ advancedBackupSetting?: core.Array | core.ArrayOut; /** * The ARN of the backup plan. */ arn: string | core.StringOut; /** * The id of the backup plan. */ id: string | core.StringOut; /** * (Required) The display name of a backup plan. */ name: string | core.StringOut; /** * (Required) A rule object that specifies a scheduled task that is used to back up a selection of reso * urces. */ rule: core.Array | core.ArrayOut; /** * (Optional) Metadata that you can assign to help organize the plans you create. If configured with a * provider [`default_tags` configuration block](https://registry.terraform.io/providers/hashicorp/aws/ * latest/docs#default_tags-configuration-block) present, tags with matching keys will overwrite those * defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; /** * Unique, randomly generated, Unicode, UTF-8 encoded string that serves as the version ID of the backu * p plan. */ version: string | core.StringOut; constructor(name: string, args?: PlanArgs); getNamespace(): string; } //# sourceMappingURL=plan.d.ts.map