import { MetricToRetainProps } from './securityprofile/MetricToRetainProps';
import { Value } from '../../cloudformation/Value';
import { BehaviorProps } from './securityprofile/BehaviorProps';
import { AlertTargetProps } from './securityprofile/AlertTargetProps';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type SecurityProfileAttributes = {
    SecurityProfileArn: Attribute<string>;
};
export type SecurityProfile = AwsResource<'AWS::IoT::SecurityProfile', SecurityProfileProperties, SecurityProfileAttributes>;
/**
  Use the <code>AWS::IoT::SecurityProfile</code> resource to create a Device Defender security profile. For API reference, see <a href="https://docs.aws.amazon.com/iot/latest/apireference/API_CreateSecurityProfile.html">CreateSecurityProfile</a> and for general information, see <a href="https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html">Detect</a>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html">the AWS Docs</a>
*/
export declare function securityProfile(securityProfileProps?: SecurityProfileProperties): SecurityProfile;
/**
  Use the <code>AWS::IoT::SecurityProfile</code> resource to create a Device Defender security profile. For API reference, see <a href="https://docs.aws.amazon.com/iot/latest/apireference/API_CreateSecurityProfile.html">CreateSecurityProfile</a> and for general information, see <a href="https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html">Detect</a>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html">the AWS Docs</a>
*/
export interface SecurityProfileProperties {
    /** <code>AdditionalMetricsToRetainV2</code>  <a name="cfn-iot-securityprofile-additionalmetricstoretainv2"></a>
  A list of metrics whose data is retained (stored). By default, data is retained for any metric used in the profile’s <code>behaviors</code>, but it’s also retained for any metric specified here. Can be used with custom metrics; can’t be used with dimensions.<br />
  
  Required: No<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> */
    additionalMetricsToRetainV2?: MetricToRetainProps[];
    /** <code>SecurityProfileDescription</code>  <a name="cfn-iot-securityprofile-securityprofiledescription"></a>
  A description of the security profile.<br />
  
  Required: No<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> */
    securityProfileDescription?: Value<string>;
    /** <code>Behaviors</code>  <a name="cfn-iot-securityprofile-behaviors"></a>
  Specifies the behaviors that, when violated by a device (thing), cause an alert.<br />
  
  Required: No<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> */
    behaviors?: BehaviorProps[];
    /** <code>SecurityProfileName</code>  <a name="cfn-iot-securityprofile-securityprofilename"></a>
  The name you gave to the security profile.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    securityProfileName?: Value<string>;
    /** <code>AlertTargets</code>  <a name="cfn-iot-securityprofile-alerttargets"></a>
  Specifies the destinations to which alerts are sent. (Alerts are always sent to the console.) Alerts are generated when a device (thing) violates a behavior.<br />
  
  Required: No<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> */
    alertTargets?: {
        [key: string]: AlertTargetProps;
    };
    /** <code>TargetArns</code>  <a name="cfn-iot-securityprofile-targetarns"></a>
  The ARN of the target (thing group) to which the security profile is attached.<br />
  
  Required: No<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> */
    targetArns?: Value<Value<string>[]>;
    /** <code>Tags</code>  <a name="cfn-iot-securityprofile-tags"></a>
  Metadata that can be used to manage the security profile.<br />
  
  Required: No<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> */
    tags?: Tag[];
}
