import { Value } from '../../../cloudformation/Value';
/**
  <strong>[Snapshot and AMI policies only]</strong> Specifies a retention rule for snapshots created by snapshot policies, or for AMIs created by AMI policies.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html">the AWS Docs</a>
*/
export interface RetainRuleProps {
    /** <code>IntervalUnit</code>  <a name="cfn-dlm-lifecyclepolicy-retainrule-intervalunit"></a>
  The unit of time for time-based retention. For example, to retain snapshots for 3 months, specify <code>Interval=3</code> and <code>IntervalUnit=MONTHS</code>. Once the snapshot has been retained for 3 months, it is deleted, or it is moved to the archive tier if you have specified an <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-archiverule">ArchiveRule</a>.<br />
  
  Required: No<br />
  
  Allowed values: <code>DAYS | MONTHS | WEEKS | YEARS</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    intervalUnit?: Value<'DAYS' | 'MONTHS' | 'WEEKS' | 'YEARS'>;
    /** <code>Count</code>  <a name="cfn-dlm-lifecyclepolicy-retainrule-count"></a>
  The number of snapshots to retain for each volume, up to a maximum of 1000. For example if you want to retain a maximum of three snapshots, specify <code>3</code>. When the fourth snapshot is created, the oldest retained snapshot is deleted, or it is moved to the archive tier if you have specified an <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-archiverule">ArchiveRule</a>.<br />
  
  Required: No<br />
  
  Minimum: <code>0</code><br />
  
  Maximum: <code>1000</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    count?: Value<number>;
    /** <code>Interval</code>  <a name="cfn-dlm-lifecyclepolicy-retainrule-interval"></a>
  The amount of time to retain each snapshot. The maximum is 100 years. This is equivalent to 1200 months, 5200 weeks, or 36500 days.<br />
  
  Required: No<br />
  
  Minimum: <code>0</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    interval?: Value<number>;
}
