UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1,032 lines 129 kB
import * as cdk from "../../core"; import * as constructs from "constructs"; import * as cfn_parse from "../../core/lib/helpers-internal"; /** * A calculated attribute definition for Customer Profiles. * * @cloudformationResource AWS::CustomerProfiles::CalculatedAttributeDefinition * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html */ export declare class CfnCalculatedAttributeDefinition extends cdk.CfnResource implements cdk.IInspectable, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnCalculatedAttributeDefinition from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnCalculatedAttributeDefinition; /** * The timestamp of when the calculated attribute definition was created. * * @cloudformationAttribute CreatedAt */ readonly attrCreatedAt: string; /** * The timestamp of when the calculated attribute definition was most recently edited. * * @cloudformationAttribute LastUpdatedAt */ readonly attrLastUpdatedAt: string; /** * Mathematical expression and a list of attribute items specified in that expression. */ attributeDetails: CfnCalculatedAttributeDefinition.AttributeDetailsProperty | cdk.IResolvable; /** * The name of an attribute defined in a profile object type. */ calculatedAttributeName: string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The conditions including range, object count, and threshold for the calculated attribute. */ conditions?: CfnCalculatedAttributeDefinition.ConditionsProperty | cdk.IResolvable; /** * The description of the calculated attribute. */ description?: string; /** * The display name of the calculated attribute. */ displayName?: string; /** * The unique name of the domain. */ domainName: string; /** * The aggregation operation to perform for the calculated attribute. */ statistic: string; /** * An array of key-value pairs to apply to this resource. */ tags?: Array<cdk.CfnTag>; /** * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnCalculatedAttributeDefinitionProps); protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnCalculatedAttributeDefinition { /** * Mathematical expression and a list of attribute items specified in that expression. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-attributedetails.html */ interface AttributeDetailsProperty { /** * Mathematical expression and a list of attribute items specified in that expression. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-attributedetails.html#cfn-customerprofiles-calculatedattributedefinition-attributedetails-attributes */ readonly attributes: Array<CfnCalculatedAttributeDefinition.AttributeItemProperty | cdk.IResolvable> | cdk.IResolvable; /** * Mathematical expression that is performed on attribute items provided in the attribute list. * * Each element in the expression should follow the structure of \"{ObjectTypeName.AttributeName}\". * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-attributedetails.html#cfn-customerprofiles-calculatedattributedefinition-attributedetails-expression */ readonly expression: string; } /** * The details of a single attribute item specified in the mathematical expression. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-attributeitem.html */ interface AttributeItemProperty { /** * The unique name of the calculated attribute. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-attributeitem.html#cfn-customerprofiles-calculatedattributedefinition-attributeitem-name */ readonly name: string; } /** * The conditions including range, object count, and threshold for the calculated attribute. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-conditions.html */ interface ConditionsProperty { /** * The number of profile objects used for the calculated attribute. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-conditions.html#cfn-customerprofiles-calculatedattributedefinition-conditions-objectcount */ readonly objectCount?: number; /** * The relative time period over which data is included in the aggregation. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-conditions.html#cfn-customerprofiles-calculatedattributedefinition-conditions-range */ readonly range?: cdk.IResolvable | CfnCalculatedAttributeDefinition.RangeProperty; /** * The threshold for the calculated attribute. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-conditions.html#cfn-customerprofiles-calculatedattributedefinition-conditions-threshold */ readonly threshold?: cdk.IResolvable | CfnCalculatedAttributeDefinition.ThresholdProperty; } /** * The relative time period over which data is included in the aggregation. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-range.html */ interface RangeProperty { /** * The unit of time. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-range.html#cfn-customerprofiles-calculatedattributedefinition-range-unit */ readonly unit: string; /** * The amount of time of the specified unit. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-range.html#cfn-customerprofiles-calculatedattributedefinition-range-value */ readonly value: number; } /** * The threshold for the calculated attribute. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-threshold.html */ interface ThresholdProperty { /** * The operator of the threshold. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-threshold.html#cfn-customerprofiles-calculatedattributedefinition-threshold-operator */ readonly operator: string; /** * The value of the threshold. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-calculatedattributedefinition-threshold.html#cfn-customerprofiles-calculatedattributedefinition-threshold-value */ readonly value: string; } } /** * Properties for defining a `CfnCalculatedAttributeDefinition` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html */ export interface CfnCalculatedAttributeDefinitionProps { /** * Mathematical expression and a list of attribute items specified in that expression. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html#cfn-customerprofiles-calculatedattributedefinition-attributedetails */ readonly attributeDetails: CfnCalculatedAttributeDefinition.AttributeDetailsProperty | cdk.IResolvable; /** * The name of an attribute defined in a profile object type. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html#cfn-customerprofiles-calculatedattributedefinition-calculatedattributename */ readonly calculatedAttributeName: string; /** * The conditions including range, object count, and threshold for the calculated attribute. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html#cfn-customerprofiles-calculatedattributedefinition-conditions */ readonly conditions?: CfnCalculatedAttributeDefinition.ConditionsProperty | cdk.IResolvable; /** * The description of the calculated attribute. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html#cfn-customerprofiles-calculatedattributedefinition-description */ readonly description?: string; /** * The display name of the calculated attribute. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html#cfn-customerprofiles-calculatedattributedefinition-displayname */ readonly displayName?: string; /** * The unique name of the domain. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html#cfn-customerprofiles-calculatedattributedefinition-domainname */ readonly domainName: string; /** * The aggregation operation to perform for the calculated attribute. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html#cfn-customerprofiles-calculatedattributedefinition-statistic */ readonly statistic: string; /** * An array of key-value pairs to apply to this resource. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html#cfn-customerprofiles-calculatedattributedefinition-tags */ readonly tags?: Array<cdk.CfnTag>; } /** * Specifies an Amazon Connect Customer Profiles Domain. * * @cloudformationResource AWS::CustomerProfiles::Domain * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html */ export declare class CfnDomain extends cdk.CfnResource implements cdk.IInspectable, cdk.ITaggable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnDomain from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDomain; /** * The timestamp of when the domain was created. * * @cloudformationAttribute CreatedAt */ readonly attrCreatedAt: string; /** * The timestamp of when the domain was most recently edited. * * @cloudformationAttribute LastUpdatedAt */ readonly attrLastUpdatedAt: string; /** * The status of rule-based matching rule. * * @cloudformationAttribute RuleBasedMatching.Status */ readonly attrRuleBasedMatchingStatus: string; /** * Usage-specific statistics about the domain. * * @cloudformationAttribute Stats */ readonly attrStats: cdk.IResolvable; /** * The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications. */ deadLetterQueueUrl?: string; /** * The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. */ defaultEncryptionKey?: string; /** * The default number of days until the data within the domain expires. */ defaultExpirationDays: number; /** * The unique name of the domain. */ domainName: string; /** * The process of matching duplicate profiles. */ matching?: cdk.IResolvable | CfnDomain.MatchingProperty; /** * The process of matching duplicate profiles using Rule-Based matching. */ ruleBasedMatching?: cdk.IResolvable | CfnDomain.RuleBasedMatchingProperty; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * The tags used to organize, track, or control access for this resource. */ tagsRaw?: Array<cdk.CfnTag>; /** * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnDomainProps); protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnDomain { /** * The process of matching duplicate profiles. * * If `Matching = true` , Amazon Connect Customer Profiles starts a weekly batch process called *Identity Resolution Job* . If you do not specify a date and time for the *Identity Resolution Job* to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the *Identity Resolution Job* completes, use the `GetMatches` API to return and review the results. Or, if you have configured `ExportingConfig` in the `MatchingRequest` , you can download the results from S3. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-matching.html */ interface MatchingProperty { /** * Configuration information about the auto-merging process. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-matching.html#cfn-customerprofiles-domain-matching-automerging */ readonly autoMerging?: CfnDomain.AutoMergingProperty | cdk.IResolvable; /** * The flag that enables the matching process of duplicate profiles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-matching.html#cfn-customerprofiles-domain-matching-enabled */ readonly enabled: boolean | cdk.IResolvable; /** * The S3 location where Identity Resolution Jobs write result files. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-matching.html#cfn-customerprofiles-domain-matching-exportingconfig */ readonly exportingConfig?: CfnDomain.ExportingConfigProperty | cdk.IResolvable; /** * The day and time when do you want to start the Identity Resolution Job every week. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-matching.html#cfn-customerprofiles-domain-matching-jobschedule */ readonly jobSchedule?: cdk.IResolvable | CfnDomain.JobScheduleProperty; } /** * Configuration information about the auto-merging process. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-automerging.html */ interface AutoMergingProperty { /** * Determines how the auto-merging process should resolve conflicts between different profiles. * * For example, if Profile A and Profile B have the same `FirstName` and `LastName` , `ConflictResolution` specifies which `EmailAddress` should be used. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-automerging.html#cfn-customerprofiles-domain-automerging-conflictresolution */ readonly conflictResolution?: CfnDomain.ConflictResolutionProperty | cdk.IResolvable; /** * A list of matching attributes that represent matching criteria. * * If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-automerging.html#cfn-customerprofiles-domain-automerging-consolidation */ readonly consolidation?: CfnDomain.ConsolidationProperty | cdk.IResolvable; /** * The flag that enables the auto-merging of duplicate profiles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-automerging.html#cfn-customerprofiles-domain-automerging-enabled */ readonly enabled: boolean | cdk.IResolvable; /** * A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. * * A higher score means that a higher similarity is required to merge profiles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-automerging.html#cfn-customerprofiles-domain-automerging-minallowedconfidencescoreformerging */ readonly minAllowedConfidenceScoreForMerging?: number; } /** * Determines how the auto-merging process should resolve conflicts between different profiles. * * For example, if Profile A and Profile B have the same `FirstName` and `LastName` , `ConflictResolution` specifies which `EmailAddress` should be used. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-conflictresolution.html */ interface ConflictResolutionProperty { /** * How the auto-merging process should resolve conflicts between different profiles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-conflictresolution.html#cfn-customerprofiles-domain-conflictresolution-conflictresolvingmodel */ readonly conflictResolvingModel: string; /** * The `ObjectType` name that is used to resolve profile merging conflicts when choosing `SOURCE` as the `ConflictResolvingModel` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-conflictresolution.html#cfn-customerprofiles-domain-conflictresolution-sourcename */ readonly sourceName?: string; } /** * A list of matching attributes that represent matching criteria. * * If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-consolidation.html */ interface ConsolidationProperty { /** * A list of matching criteria. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-consolidation.html#cfn-customerprofiles-domain-consolidation-matchingattributeslist */ readonly matchingAttributesList: Array<Array<string>> | cdk.IResolvable; } /** * Configuration information for exporting Identity Resolution results, for example, to an S3 bucket. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-exportingconfig.html */ interface ExportingConfigProperty { /** * The S3 location where Identity Resolution Jobs write result files. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-exportingconfig.html#cfn-customerprofiles-domain-exportingconfig-s3exporting */ readonly s3Exporting?: cdk.IResolvable | CfnDomain.S3ExportingConfigProperty; } /** * The S3 location where Identity Resolution Jobs write result files. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-s3exportingconfig.html */ interface S3ExportingConfigProperty { /** * The name of the S3 bucket where Identity Resolution Jobs write result files. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-s3exportingconfig.html#cfn-customerprofiles-domain-s3exportingconfig-s3bucketname */ readonly s3BucketName: string; /** * The S3 key name of the location where Identity Resolution Jobs write result files. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-s3exportingconfig.html#cfn-customerprofiles-domain-s3exportingconfig-s3keyname */ readonly s3KeyName?: string; } /** * The day and time when do you want to start the Identity Resolution Job every week. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-jobschedule.html */ interface JobScheduleProperty { /** * The day when the Identity Resolution Job should run every week. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-jobschedule.html#cfn-customerprofiles-domain-jobschedule-dayoftheweek */ readonly dayOfTheWeek: string; /** * The time when the Identity Resolution Job should run every week. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-jobschedule.html#cfn-customerprofiles-domain-jobschedule-time */ readonly time: string; } /** * The process of matching duplicate profiles using Rule-Based matching. * * If `RuleBasedMatching = true` , Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the `RuleBasedMatchingRequest` . You can use the `ListRuleBasedMatches` and `GetSimilarProfiles` API to return and review the results. Also, if you have configured `ExportingConfig` in the `RuleBasedMatchingRequest` , you can download the results from S3. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html */ interface RuleBasedMatchingProperty { /** * Configures information about the `AttributeTypesSelector` where the rule-based identity resolution uses to match profiles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html#cfn-customerprofiles-domain-rulebasedmatching-attributetypesselector */ readonly attributeTypesSelector?: CfnDomain.AttributeTypesSelectorProperty | cdk.IResolvable; /** * Determines how the auto-merging process should resolve conflicts between different profiles. * * For example, if Profile A and Profile B have the same `FirstName` and `LastName` , `ConflictResolution` specifies which `EmailAddress` should be used. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html#cfn-customerprofiles-domain-rulebasedmatching-conflictresolution */ readonly conflictResolution?: CfnDomain.ConflictResolutionProperty | cdk.IResolvable; /** * The flag that enables the matching process of duplicate profiles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html#cfn-customerprofiles-domain-rulebasedmatching-enabled */ readonly enabled: boolean | cdk.IResolvable; /** * The S3 location where Identity Resolution Jobs write result files. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html#cfn-customerprofiles-domain-rulebasedmatching-exportingconfig */ readonly exportingConfig?: CfnDomain.ExportingConfigProperty | cdk.IResolvable; /** * Configures how the rule-based matching process should match profiles. * * You can have up to 15 `MatchingRule` in the `MatchingRules` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html#cfn-customerprofiles-domain-rulebasedmatching-matchingrules */ readonly matchingRules?: Array<cdk.IResolvable | CfnDomain.MatchingRuleProperty> | cdk.IResolvable; /** * Indicates the maximum allowed rule level for matching. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html#cfn-customerprofiles-domain-rulebasedmatching-maxallowedrulelevelformatching */ readonly maxAllowedRuleLevelForMatching?: number; /** * Indicates the maximum allowed rule level for merging. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html#cfn-customerprofiles-domain-rulebasedmatching-maxallowedrulelevelformerging */ readonly maxAllowedRuleLevelForMerging?: number; /** * The status of rule-based matching rule. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-rulebasedmatching.html#cfn-customerprofiles-domain-rulebasedmatching-status */ readonly status?: string; } /** * Configures information about the `AttributeTypesSelector` which rule-based identity resolution uses to match profiles. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-attributetypesselector.html */ interface AttributeTypesSelectorProperty { /** * The `Address` type. * * You can choose from `Address` , `BusinessAddress` , `MaillingAddress` , and `ShippingAddress` . You only can use the `Address` type in the `MatchingRule` . For example, if you want to match a profile based on `BusinessAddress.City` or `MaillingAddress.City` , you can choose the `BusinessAddress` and the `MaillingAddress` to represent the `Address` type and specify the `Address.City` on the matching rule. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-attributetypesselector.html#cfn-customerprofiles-domain-attributetypesselector-address */ readonly address?: Array<string>; /** * Configures the `AttributeMatchingModel` , you can either choose `ONE_TO_ONE` or `MANY_TO_MANY` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-attributetypesselector.html#cfn-customerprofiles-domain-attributetypesselector-attributematchingmodel */ readonly attributeMatchingModel: string; /** * The Email type. * * You can choose from `EmailAddress` , `BusinessEmailAddress` and `PersonalEmailAddress` . You only can use the `EmailAddress` type in the `MatchingRule` . For example, if you want to match profile based on `PersonalEmailAddress` or `BusinessEmailAddress` , you can choose the `PersonalEmailAddress` and the `BusinessEmailAddress` to represent the `EmailAddress` type and only specify the `EmailAddress` on the matching rule. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-attributetypesselector.html#cfn-customerprofiles-domain-attributetypesselector-emailaddress */ readonly emailAddress?: Array<string>; /** * The `PhoneNumber` type. * * You can choose from `PhoneNumber` , `HomePhoneNumber` , and `MobilePhoneNumber` . You only can use the `PhoneNumber` type in the `MatchingRule` . For example, if you want to match a profile based on `Phone` or `HomePhone` , you can choose the `Phone` and the `HomePhone` to represent the `PhoneNumber` type and only specify the `PhoneNumber` on the matching rule. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-attributetypesselector.html#cfn-customerprofiles-domain-attributetypesselector-phonenumber */ readonly phoneNumber?: Array<string>; } /** * Specifies how the rule-based matching process should match profiles. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-matchingrule.html */ interface MatchingRuleProperty { /** * A single rule level of the `MatchRules` . * * Configures how the rule-based matching process should match profiles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-matchingrule.html#cfn-customerprofiles-domain-matchingrule-rule */ readonly rule: Array<string>; } /** * Usage-specific statistics about the domain. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-domainstats.html */ interface DomainStatsProperty { /** * The number of profiles that you are currently paying for in the domain. * * If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-domainstats.html#cfn-customerprofiles-domain-domainstats-meteringprofilecount */ readonly meteringProfileCount?: number; /** * The total number of objects in domain. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-domainstats.html#cfn-customerprofiles-domain-domainstats-objectcount */ readonly objectCount?: number; /** * The total number of profiles currently in the domain. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-domainstats.html#cfn-customerprofiles-domain-domainstats-profilecount */ readonly profileCount?: number; /** * The total size, in bytes, of all objects in the domain. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-domainstats.html#cfn-customerprofiles-domain-domainstats-totalsize */ readonly totalSize?: number; } } /** * Properties for defining a `CfnDomain` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html */ export interface CfnDomainProps { /** * The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications. * * You must set up a policy on the `DeadLetterQueue` for the `SendMessage` operation to enable Amazon Connect Customer Profiles to send messages to the `DeadLetterQueue` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html#cfn-customerprofiles-domain-deadletterqueueurl */ readonly deadLetterQueueUrl?: string; /** * The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. * * It is used to encrypt all data before it is placed in permanent or semi-permanent storage. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html#cfn-customerprofiles-domain-defaultencryptionkey */ readonly defaultEncryptionKey?: string; /** * The default number of days until the data within the domain expires. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html#cfn-customerprofiles-domain-defaultexpirationdays */ readonly defaultExpirationDays: number; /** * The unique name of the domain. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html#cfn-customerprofiles-domain-domainname */ readonly domainName: string; /** * The process of matching duplicate profiles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html#cfn-customerprofiles-domain-matching */ readonly matching?: cdk.IResolvable | CfnDomain.MatchingProperty; /** * The process of matching duplicate profiles using Rule-Based matching. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html#cfn-customerprofiles-domain-rulebasedmatching */ readonly ruleBasedMatching?: cdk.IResolvable | CfnDomain.RuleBasedMatchingProperty; /** * The tags used to organize, track, or control access for this resource. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html#cfn-customerprofiles-domain-tags */ readonly tags?: Array<cdk.CfnTag>; } /** * An Event Stream resource of Amazon Connect Customer Profiles. * * @cloudformationResource AWS::CustomerProfiles::EventStream * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html */ export declare class CfnEventStream extends cdk.CfnResource implements cdk.IInspectable, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnEventStream from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnEventStream; /** * The timestamp of when the export was created. * * @cloudformationAttribute CreatedAt */ readonly attrCreatedAt: string; /** * Details regarding the Kinesis stream. * * @cloudformationAttribute DestinationDetails */ readonly attrDestinationDetails: cdk.IResolvable; /** * @cloudformationAttribute DestinationDetails.Status */ readonly attrDestinationDetailsStatus: string; /** * @cloudformationAttribute DestinationDetails.Uri */ readonly attrDestinationDetailsUri: string; /** * A unique identifier for the event stream. * * @cloudformationAttribute EventStreamArn */ readonly attrEventStreamArn: string; /** * The operational state of destination stream for export. * * @cloudformationAttribute State */ readonly attrState: string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The unique name of the domain. */ domainName: string; /** * The name of the event stream. */ eventStreamName: string; /** * The tags used to organize, track, or control access for this resource. */ tags?: Array<cdk.CfnTag>; /** * The StreamARN of the destination to deliver profile events to. */ uri: string; /** * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnEventStreamProps); protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnEventStream { /** * Details regarding the Kinesis stream. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-eventstream-destinationdetails.html */ interface DestinationDetailsProperty { /** * The status of enabling the Kinesis stream as a destination for export. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-eventstream-destinationdetails.html#cfn-customerprofiles-eventstream-destinationdetails-status */ readonly status: string; /** * The StreamARN of the destination to deliver profile events to. * * For example, arn:aws:kinesis:region:account-id:stream/stream-name. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-eventstream-destinationdetails.html#cfn-customerprofiles-eventstream-destinationdetails-uri */ readonly uri: string; } } /** * Properties for defining a `CfnEventStream` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html */ export interface CfnEventStreamProps { /** * The unique name of the domain. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html#cfn-customerprofiles-eventstream-domainname */ readonly domainName: string; /** * The name of the event stream. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html#cfn-customerprofiles-eventstream-eventstreamname */ readonly eventStreamName: string; /** * The tags used to organize, track, or control access for this resource. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html#cfn-customerprofiles-eventstream-tags */ readonly tags?: Array<cdk.CfnTag>; /** * The StreamARN of the destination to deliver profile events to. * * For example, arn:aws:kinesis:region:account-id:stream/stream-name. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html#cfn-customerprofiles-eventstream-uri */ readonly uri: string; } /** * Specifies an Amazon Connect Customer Profiles Integration. * * @cloudformationResource AWS::CustomerProfiles::Integration * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-integration.html */ export declare class CfnIntegration extends cdk.CfnResource implements cdk.IInspectable, cdk.ITaggable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnIntegration from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnIntegration; /** * The timestamp of when the integration was created. * * @cloudformationAttribute CreatedAt */ readonly attrCreatedAt: string; /** * The timestamp of when the integration was most recently edited. * * @cloudformationAttribute LastUpdatedAt */ readonly attrLastUpdatedAt: string; /** * The unique name of the domain. */ domainName: string; /** * A list of unique names for active event triggers associated with the integration. */ eventTriggerNames?: Array<string>; /** * The configuration that controls how Customer Profiles retrieves data from the source. */ flowDefinition?: CfnIntegration.FlowDefinitionProperty | cdk.IResolvable; /** * The name of the profile object type mapping to use. */ objectTypeName?: string; /** * The object type mapping. */ objectTypeNames?: Array<cdk.IResolvable | CfnIntegration.ObjectTypeMappingProperty> | cdk.IResolvable; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * The tags used to organize, track, or control access for this resource. */ tagsRaw?: Array<cdk.CfnTag>; /** * The URI of the S3 bucket or any other type of data source. */ uri?: string; /** * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnIntegrationProps); protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnIntegration { /** * A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an `ObjectTypeName` (template) used to ingest the event. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-objecttypemapping.html */ interface ObjectTypeMappingProperty { /** * The key. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-objecttypemapping.html#cfn-customerprofiles-integration-objecttypemapping-key */ readonly key: string; /** * The value. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-objecttypemapping.html#cfn-customerprofiles-integration-objecttypemapping-value */ readonly value: string; } /** * The configurations that control how Customer Profiles retrieves data from the source, Amazon AppFlow. * * Customer Profiles uses this information to create an AppFlow flow on behalf of customers. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-flowdefinition.html */ interface FlowDefinitionProperty { /** * A description of the flow you want to create. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-flowdefinition.html#cfn-customerprofiles-integration-flowdefinition-description */ readonly description?: string; /** * The specified name of the flow. * * Use underscores (_) or hyphens (-) only. Spaces are not allowed. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-flowdefinition.html#cfn-customerprofiles-integration-flowdefinition-flowname */ readonly flowName: string; /** * The Amazon Resource Name (ARN) of the AWS Key Management Service (KMS) key you provide for encryption. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-flowdefinition.html#cfn-customerprofiles-integration-flowdefinition-kmsarn */ readonly kmsArn: string; /** * The configuration that controls how Customer Profiles retrieves data from the source. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-flowdefinition.html#cfn-customerprofiles-integration-flowdefinition-sourceflowconfig */ readonly sourceFlowConfig: cdk.IResolvable | CfnIntegration.SourceFlowConfigProperty; /** * A list of tasks that Customer Profiles performs while transferring the data in the flow run. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-flowdefinition.html#cfn-customerprofiles-integration-flowdefinition-tasks */ readonly tasks: Array<cdk.IResolvable | CfnIntegration.TaskProperty> | cdk.IResolvable; /** * The trigger settings that determine how and when the flow runs. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-integration-flowdefinition.html#cfn-customerprofiles-integration-flowdefinition-triggerconfig */ readonly triggerConfig: cdk.IResolvable | CfnIntegration.TriggerConfigProperty; } /** * The `Task` property type specifies the class for mode