@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
813 lines • 75.9 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DlmLifecyclePolicyConfig extends cdktf.TerraformMetaArguments {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#default_policy DlmLifecyclePolicy#default_policy}
*/
readonly defaultPolicy?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#description DlmLifecyclePolicy#description}
*/
readonly description: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#execution_role_arn DlmLifecyclePolicy#execution_role_arn}
*/
readonly executionRoleArn: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#id DlmLifecyclePolicy#id}
*
* Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
* If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
*/
readonly id?: string;
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the [provider configuration](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#aws-configuration-reference).
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#region DlmLifecyclePolicy#region}
*/
readonly region?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#state DlmLifecyclePolicy#state}
*/
readonly state?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#tags DlmLifecyclePolicy#tags}
*/
readonly tags?: {
[key: string]: string;
};
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#tags_all DlmLifecyclePolicy#tags_all}
*/
readonly tagsAll?: {
[key: string]: string;
};
/**
* policy_details block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#policy_details DlmLifecyclePolicy#policy_details}
*/
readonly policyDetails: DlmLifecyclePolicyPolicyDetails;
}
export interface DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfiguration {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#cmk_arn DlmLifecyclePolicy#cmk_arn}
*/
readonly cmkArn?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#encrypted DlmLifecyclePolicy#encrypted}
*/
readonly encrypted?: boolean | cdktf.IResolvable;
}
export declare function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference | DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfiguration): any;
export declare function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference | DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfiguration): any;
export declare class DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfiguration | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfiguration | undefined);
private _cmkArn?;
get cmkArn(): string;
set cmkArn(value: string);
resetCmkArn(): void;
get cmkArnInput(): string | undefined;
private _encrypted?;
get encrypted(): boolean | cdktf.IResolvable;
set encrypted(value: boolean | cdktf.IResolvable);
resetEncrypted(): void;
get encryptedInput(): boolean | cdktf.IResolvable | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval DlmLifecyclePolicy#interval}
*/
readonly interval: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval_unit DlmLifecyclePolicy#interval_unit}
*/
readonly intervalUnit: string;
}
export declare function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference | DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRule): any;
export declare function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference | DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRule): any;
export declare class DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRule | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRule | undefined);
private _interval?;
get interval(): number;
set interval(value: number);
get intervalInput(): number | undefined;
private _intervalUnit?;
get intervalUnit(): string;
set intervalUnit(value: string);
get intervalUnitInput(): string | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#target DlmLifecyclePolicy#target}
*/
readonly target: string;
/**
* encryption_configuration block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#encryption_configuration DlmLifecyclePolicy#encryption_configuration}
*/
readonly encryptionConfiguration: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfiguration;
/**
* retain_rule block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#retain_rule DlmLifecyclePolicy#retain_rule}
*/
readonly retainRule?: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRule;
}
export declare function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy | cdktf.IResolvable): any;
export declare function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy | cdktf.IResolvable): any;
export declare class DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy | cdktf.IResolvable | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy | cdktf.IResolvable | undefined);
private _target?;
get target(): string;
set target(value: string);
get targetInput(): string | undefined;
private _encryptionConfiguration;
get encryptionConfiguration(): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference;
putEncryptionConfiguration(value: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfiguration): void;
get encryptionConfigurationInput(): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfiguration | undefined;
private _retainRule;
get retainRule(): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference;
putRetainRule(value: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRule): void;
resetRetainRule(): void;
get retainRuleInput(): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRule | undefined;
}
export declare class DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference;
}
export interface DlmLifecyclePolicyPolicyDetailsAction {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#name DlmLifecyclePolicy#name}
*/
readonly name: string;
/**
* cross_region_copy block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#cross_region_copy DlmLifecyclePolicy#cross_region_copy}
*/
readonly crossRegionCopy: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy[] | cdktf.IResolvable;
}
export declare function dlmLifecyclePolicyPolicyDetailsActionToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsActionOutputReference | DlmLifecyclePolicyPolicyDetailsAction): any;
export declare function dlmLifecyclePolicyPolicyDetailsActionToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsActionOutputReference | DlmLifecyclePolicyPolicyDetailsAction): any;
export declare class DlmLifecyclePolicyPolicyDetailsActionOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsAction | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsAction | undefined);
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _crossRegionCopy;
get crossRegionCopy(): DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList;
putCrossRegionCopy(value: DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy[] | cdktf.IResolvable): void;
get crossRegionCopyInput(): cdktf.IResolvable | DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopy[] | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsEventSourceParameters {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#description_regex DlmLifecyclePolicy#description_regex}
*/
readonly descriptionRegex: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#event_type DlmLifecyclePolicy#event_type}
*/
readonly eventType: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#snapshot_owner DlmLifecyclePolicy#snapshot_owner}
*/
readonly snapshotOwner: string[];
}
export declare function dlmLifecyclePolicyPolicyDetailsEventSourceParametersToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference | DlmLifecyclePolicyPolicyDetailsEventSourceParameters): any;
export declare function dlmLifecyclePolicyPolicyDetailsEventSourceParametersToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference | DlmLifecyclePolicyPolicyDetailsEventSourceParameters): any;
export declare class DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsEventSourceParameters | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsEventSourceParameters | undefined);
private _descriptionRegex?;
get descriptionRegex(): string;
set descriptionRegex(value: string);
get descriptionRegexInput(): string | undefined;
private _eventType?;
get eventType(): string;
set eventType(value: string);
get eventTypeInput(): string | undefined;
private _snapshotOwner?;
get snapshotOwner(): string[];
set snapshotOwner(value: string[]);
get snapshotOwnerInput(): string[] | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsEventSource {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#type DlmLifecyclePolicy#type}
*/
readonly type: string;
/**
* parameters block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#parameters DlmLifecyclePolicy#parameters}
*/
readonly parameters: DlmLifecyclePolicyPolicyDetailsEventSourceParameters;
}
export declare function dlmLifecyclePolicyPolicyDetailsEventSourceToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference | DlmLifecyclePolicyPolicyDetailsEventSource): any;
export declare function dlmLifecyclePolicyPolicyDetailsEventSourceToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference | DlmLifecyclePolicyPolicyDetailsEventSource): any;
export declare class DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsEventSource | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsEventSource | undefined);
private _type?;
get type(): string;
set type(value: string);
get typeInput(): string | undefined;
private _parameters;
get parameters(): DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference;
putParameters(value: DlmLifecyclePolicyPolicyDetailsEventSourceParameters): void;
get parametersInput(): DlmLifecyclePolicyPolicyDetailsEventSourceParameters | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsExclusions {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#exclude_boot_volumes DlmLifecyclePolicy#exclude_boot_volumes}
*/
readonly excludeBootVolumes?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#exclude_tags DlmLifecyclePolicy#exclude_tags}
*/
readonly excludeTags?: {
[key: string]: string;
};
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#exclude_volume_types DlmLifecyclePolicy#exclude_volume_types}
*/
readonly excludeVolumeTypes?: string[];
}
export declare function dlmLifecyclePolicyPolicyDetailsExclusionsToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsExclusionsOutputReference | DlmLifecyclePolicyPolicyDetailsExclusions): any;
export declare function dlmLifecyclePolicyPolicyDetailsExclusionsToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsExclusionsOutputReference | DlmLifecyclePolicyPolicyDetailsExclusions): any;
export declare class DlmLifecyclePolicyPolicyDetailsExclusionsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsExclusions | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsExclusions | undefined);
private _excludeBootVolumes?;
get excludeBootVolumes(): boolean | cdktf.IResolvable;
set excludeBootVolumes(value: boolean | cdktf.IResolvable);
resetExcludeBootVolumes(): void;
get excludeBootVolumesInput(): boolean | cdktf.IResolvable | undefined;
private _excludeTags?;
get excludeTags(): {
[key: string]: string;
};
set excludeTags(value: {
[key: string]: string;
});
resetExcludeTags(): void;
get excludeTagsInput(): {
[key: string]: string;
} | undefined;
private _excludeVolumeTypes?;
get excludeVolumeTypes(): string[];
set excludeVolumeTypes(value: string[]);
resetExcludeVolumeTypes(): void;
get excludeVolumeTypesInput(): string[] | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsParameters {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#exclude_boot_volume DlmLifecyclePolicy#exclude_boot_volume}
*/
readonly excludeBootVolume?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#no_reboot DlmLifecyclePolicy#no_reboot}
*/
readonly noReboot?: boolean | cdktf.IResolvable;
}
export declare function dlmLifecyclePolicyPolicyDetailsParametersToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsParametersOutputReference | DlmLifecyclePolicyPolicyDetailsParameters): any;
export declare function dlmLifecyclePolicyPolicyDetailsParametersToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsParametersOutputReference | DlmLifecyclePolicyPolicyDetailsParameters): any;
export declare class DlmLifecyclePolicyPolicyDetailsParametersOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsParameters | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsParameters | undefined);
private _excludeBootVolume?;
get excludeBootVolume(): boolean | cdktf.IResolvable;
set excludeBootVolume(value: boolean | cdktf.IResolvable);
resetExcludeBootVolume(): void;
get excludeBootVolumeInput(): boolean | cdktf.IResolvable | undefined;
private _noReboot?;
get noReboot(): boolean | cdktf.IResolvable;
set noReboot(value: boolean | cdktf.IResolvable);
resetNoReboot(): void;
get noRebootInput(): boolean | cdktf.IResolvable | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTier {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#count DlmLifecyclePolicy#count}
*/
readonly count?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval DlmLifecyclePolicy#interval}
*/
readonly interval?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval_unit DlmLifecyclePolicy#interval_unit}
*/
readonly intervalUnit?: string;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTierToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTierOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTier): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTierToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTierOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTier): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTierOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTier | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTier | undefined);
private _count?;
get count(): number;
set count(value: number);
resetCount(): void;
get countInput(): number | undefined;
private _interval?;
get interval(): number;
set interval(value: number);
resetInterval(): void;
get intervalInput(): number | undefined;
private _intervalUnit?;
get intervalUnit(): string;
set intervalUnit(value: string);
resetIntervalUnit(): void;
get intervalUnitInput(): string | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRule {
/**
* retention_archive_tier block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#retention_archive_tier DlmLifecyclePolicy#retention_archive_tier}
*/
readonly retentionArchiveTier: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTier;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRule): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRule): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRule | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRule | undefined);
private _retentionArchiveTier;
get retentionArchiveTier(): DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTierOutputReference;
putRetentionArchiveTier(value: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTier): void;
get retentionArchiveTierInput(): DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleRetentionArchiveTier | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleArchiveRule {
/**
* archive_retain_rule block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#archive_retain_rule DlmLifecyclePolicy#archive_retain_rule}
*/
readonly archiveRetainRule: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRule;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleArchiveRule): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleArchiveRule): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleArchiveRule | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRule | undefined);
private _archiveRetainRule;
get archiveRetainRule(): DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRuleOutputReference;
putArchiveRetainRule(value: DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRule): void;
get archiveRetainRuleInput(): DlmLifecyclePolicyPolicyDetailsScheduleArchiveRuleArchiveRetainRule | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScripts {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#execute_operation_on_script_failure DlmLifecyclePolicy#execute_operation_on_script_failure}
*/
readonly executeOperationOnScriptFailure?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#execution_handler DlmLifecyclePolicy#execution_handler}
*/
readonly executionHandler: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#execution_handler_service DlmLifecyclePolicy#execution_handler_service}
*/
readonly executionHandlerService?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#execution_timeout DlmLifecyclePolicy#execution_timeout}
*/
readonly executionTimeout?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#maximum_retry_count DlmLifecyclePolicy#maximum_retry_count}
*/
readonly maximumRetryCount?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#stages DlmLifecyclePolicy#stages}
*/
readonly stages?: string[];
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScriptsToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScriptsOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScripts): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScriptsToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScriptsOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScripts): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScriptsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScripts | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScripts | undefined);
private _executeOperationOnScriptFailure?;
get executeOperationOnScriptFailure(): boolean | cdktf.IResolvable;
set executeOperationOnScriptFailure(value: boolean | cdktf.IResolvable);
resetExecuteOperationOnScriptFailure(): void;
get executeOperationOnScriptFailureInput(): boolean | cdktf.IResolvable | undefined;
private _executionHandler?;
get executionHandler(): string;
set executionHandler(value: string);
get executionHandlerInput(): string | undefined;
private _executionHandlerService?;
get executionHandlerService(): string;
set executionHandlerService(value: string);
resetExecutionHandlerService(): void;
get executionHandlerServiceInput(): string | undefined;
private _executionTimeout?;
get executionTimeout(): number;
set executionTimeout(value: number);
resetExecutionTimeout(): void;
get executionTimeoutInput(): number | undefined;
private _maximumRetryCount?;
get maximumRetryCount(): number;
set maximumRetryCount(value: number);
resetMaximumRetryCount(): void;
get maximumRetryCountInput(): number | undefined;
private _stages?;
get stages(): string[];
set stages(value: string[]);
resetStages(): void;
get stagesInput(): string[] | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleCreateRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#cron_expression DlmLifecyclePolicy#cron_expression}
*/
readonly cronExpression?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval DlmLifecyclePolicy#interval}
*/
readonly interval?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval_unit DlmLifecyclePolicy#interval_unit}
*/
readonly intervalUnit?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#location DlmLifecyclePolicy#location}
*/
readonly location?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#times DlmLifecyclePolicy#times}
*/
readonly times?: string[];
/**
* scripts block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#scripts DlmLifecyclePolicy#scripts}
*/
readonly scripts?: DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScripts;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleCreateRule): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleCreateRule): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleCreateRule | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleCreateRule | undefined);
private _cronExpression?;
get cronExpression(): string;
set cronExpression(value: string);
resetCronExpression(): void;
get cronExpressionInput(): string | undefined;
private _interval?;
get interval(): number;
set interval(value: number);
resetInterval(): void;
get intervalInput(): number | undefined;
private _intervalUnit?;
get intervalUnit(): string;
set intervalUnit(value: string);
resetIntervalUnit(): void;
get intervalUnitInput(): string | undefined;
private _location?;
get location(): string;
set location(value: string);
resetLocation(): void;
get locationInput(): string | undefined;
private _times?;
get times(): string[];
set times(value: string[]);
resetTimes(): void;
get timesInput(): string[] | undefined;
private _scripts;
get scripts(): DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScriptsOutputReference;
putScripts(value: DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScripts): void;
resetScripts(): void;
get scriptsInput(): DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleScripts | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval DlmLifecyclePolicy#interval}
*/
readonly interval: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval_unit DlmLifecyclePolicy#interval_unit}
*/
readonly intervalUnit: string;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRule): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRule): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRule | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRule | undefined);
private _interval?;
get interval(): number;
set interval(value: number);
get intervalInput(): number | undefined;
private _intervalUnit?;
get intervalUnit(): string;
set intervalUnit(value: string);
get intervalUnitInput(): string | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval DlmLifecyclePolicy#interval}
*/
readonly interval: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval_unit DlmLifecyclePolicy#interval_unit}
*/
readonly intervalUnit: string;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRule): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRule): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRule | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRule | undefined);
private _interval?;
get interval(): number;
set interval(value: number);
get intervalInput(): number | undefined;
private _intervalUnit?;
get intervalUnit(): string;
set intervalUnit(value: string);
get intervalUnitInput(): string | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#cmk_arn DlmLifecyclePolicy#cmk_arn}
*/
readonly cmkArn?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#copy_tags DlmLifecyclePolicy#copy_tags}
*/
readonly copyTags?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#encrypted DlmLifecyclePolicy#encrypted}
*/
readonly encrypted: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#target DlmLifecyclePolicy#target}
*/
readonly target?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#target_region DlmLifecyclePolicy#target_region}
*/
readonly targetRegion?: string;
/**
* deprecate_rule block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#deprecate_rule DlmLifecyclePolicy#deprecate_rule}
*/
readonly deprecateRule?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRule;
/**
* retain_rule block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#retain_rule DlmLifecyclePolicy#retain_rule}
*/
readonly retainRule?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRule;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRule | cdktf.IResolvable): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRule | cdktf.IResolvable): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRule | cdktf.IResolvable | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRule | cdktf.IResolvable | undefined);
private _cmkArn?;
get cmkArn(): string;
set cmkArn(value: string);
resetCmkArn(): void;
get cmkArnInput(): string | undefined;
private _copyTags?;
get copyTags(): boolean | cdktf.IResolvable;
set copyTags(value: boolean | cdktf.IResolvable);
resetCopyTags(): void;
get copyTagsInput(): boolean | cdktf.IResolvable | undefined;
private _encrypted?;
get encrypted(): boolean | cdktf.IResolvable;
set encrypted(value: boolean | cdktf.IResolvable);
get encryptedInput(): boolean | cdktf.IResolvable | undefined;
private _target?;
get target(): string;
set target(value: string);
resetTarget(): void;
get targetInput(): string | undefined;
private _targetRegion?;
get targetRegion(): string;
set targetRegion(value: string);
resetTargetRegion(): void;
get targetRegionInput(): string | undefined;
private _deprecateRule;
get deprecateRule(): DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference;
putDeprecateRule(value: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRule): void;
resetDeprecateRule(): void;
get deprecateRuleInput(): DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRule | undefined;
private _retainRule;
get retainRule(): DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleOutputReference;
putRetainRule(value: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRule): void;
resetRetainRule(): void;
get retainRuleInput(): DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRule | undefined;
}
export declare class DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRule[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleOutputReference;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#count DlmLifecyclePolicy#count}
*/
readonly count?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval DlmLifecyclePolicy#interval}
*/
readonly interval?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval_unit DlmLifecyclePolicy#interval_unit}
*/
readonly intervalUnit?: string;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleDeprecateRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRule): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleDeprecateRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRule): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRule | undefined;
set internalValue(value: DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRule | undefined);
private _count?;
get count(): number;
set count(value: number);
resetCount(): void;
get countInput(): number | undefined;
private _interval?;
get interval(): number;
set interval(value: number);
resetInterval(): void;
get intervalInput(): number | undefined;
private _intervalUnit?;
get intervalUnit(): string;
set intervalUnit(value: string);
resetIntervalUnit(): void;
get intervalUnitInput(): string | undefined;
}
export interface DlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#availability_zones DlmLifecyclePolicy#availability_zones}
*/
readonly availabilityZones: string[];
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#count DlmLifecyclePolicy#count}
*/
readonly count?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval DlmLifecyclePolicy#interval}
*/
readonly interval?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/dlm_lifecycle_policy#interval_unit DlmLifecyclePolicy#interval_unit}
*/
readonly intervalUnit?: string;
}
export declare function dlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRuleToTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRule): any;
export declare function dlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRuleToHclTerraform(struct?: DlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRuleOutputReference | DlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRule): any;
export declare class DlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttr