aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1,036 lines (1,035 loc) • 42.4 kB
TypeScript
import * as cdk from "../../core/lib";
import * as constructs from "constructs";
import * as cfn_parse from "../../core/lib/helpers-internal";
import { CaseRuleReference, DomainReference, FieldReference, ICaseRuleRef, IDomainRef, IFieldRef, ILayoutRef, ITemplateRef, LayoutReference, TemplateReference } from "../../interfaces/generated/aws-cases-interfaces.generated";
/**
* Creates a new case rule.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @cloudformationResource AWS::Cases::CaseRule
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-caserule.html
*/
export declare class CfnCaseRule extends cdk.CfnResource implements cdk.IInspectable, ICaseRuleRef, cdk.ITaggableV2 {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnCaseRule 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): CfnCaseRule;
/**
* Checks whether the given object is a CfnCaseRule
*/
static isCfnCaseRule(x: any): x is CfnCaseRule;
static arnForCaseRule(resource: ICaseRuleRef): string;
/**
* The Amazon Resource Name (ARN) of the case rule.
*
* @cloudformationAttribute CaseRuleArn
*/
readonly attrCaseRuleArn: string;
/**
* Unique identifier of a case rule.
*
* @cloudformationAttribute CaseRuleId
*/
readonly attrCaseRuleId: string;
/**
* Timestamp when the resource was created.
*
* @cloudformationAttribute CreatedTime
*/
readonly attrCreatedTime: string;
/**
* Timestamp when the resource was created or last modified.
*
* @cloudformationAttribute LastModifiedTime
*/
readonly attrLastModifiedTime: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
/**
* Description of a case rule.
*/
description?: string;
/**
* Unique identifier of a Cases domain.
*/
domainId?: string;
/**
* Name of the case rule.
*/
name: string;
/**
* Represents what rule type should take place, under what conditions.
*/
rule: CfnCaseRule.CaseRuleDetailsProperty | cdk.IResolvable;
/**
* An array of key-value pairs to apply to this resource.
*/
tags?: Array<cdk.CfnTag>;
/**
* Create a new `AWS::Cases::CaseRule`.
*
* @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: CfnCaseRuleProps);
get caseRuleRef(): CaseRuleReference;
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 CfnCaseRule {
/**
* Represents what rule type should take place, under what conditions.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-caseruledetails.html
*/
interface CaseRuleDetailsProperty {
/**
* Whether a field is visible, based on values in other fields.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-caseruledetails.html#cfn-cases-caserule-caseruledetails-hidden
*/
readonly hidden?: CfnCaseRule.HiddenCaseRuleProperty | cdk.IResolvable;
/**
* Required rule type, used to indicate whether a field is required.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-caseruledetails.html#cfn-cases-caserule-caseruledetails-required
*/
readonly required?: cdk.IResolvable | CfnCaseRule.RequiredCaseRuleProperty;
}
/**
* Required rule type, used to indicate whether a field is required.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-requiredcaserule.html
*/
interface RequiredCaseRuleProperty {
/**
* List of conditions for the required rule;
*
* the first condition to evaluate to true dictates the value of the rule.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-requiredcaserule.html#cfn-cases-caserule-requiredcaserule-conditions
*/
readonly conditions: Array<CfnCaseRule.BooleanConditionProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* The value of the rule (that is, whether the field is required) should none of the conditions evaluate to true.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-requiredcaserule.html#cfn-cases-caserule-requiredcaserule-defaultvalue
*/
readonly defaultValue: boolean | cdk.IResolvable;
}
/**
* Boolean condition for a rule.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-booleancondition.html
*/
interface BooleanConditionProperty {
/**
* Tests that operandOne is equal to operandTwo.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-booleancondition.html#cfn-cases-caserule-booleancondition-equalto
*/
readonly equalTo?: CfnCaseRule.BooleanOperandsProperty | cdk.IResolvable;
/**
* Tests that operandOne is not equal to operandTwo.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-booleancondition.html#cfn-cases-caserule-booleancondition-notequalto
*/
readonly notEqualTo?: CfnCaseRule.BooleanOperandsProperty | cdk.IResolvable;
}
/**
* Boolean operands for a condition.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-booleanoperands.html
*/
interface BooleanOperandsProperty {
/**
* Represents the left hand operand in the condition.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-booleanoperands.html#cfn-cases-caserule-booleanoperands-operandone
*/
readonly operandOne: cdk.IResolvable | CfnCaseRule.OperandOneProperty;
/**
* Represents the right hand operand in the condition.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-booleanoperands.html#cfn-cases-caserule-booleanoperands-operandtwo
*/
readonly operandTwo: cdk.IResolvable | CfnCaseRule.OperandTwoProperty;
/**
* The value of the outer rule if the condition evaluates to true.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-booleanoperands.html#cfn-cases-caserule-booleanoperands-result
*/
readonly result: boolean | cdk.IResolvable;
}
/**
* Represents the left hand operand in the condition.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-operandone.html
*/
interface OperandOneProperty {
/**
* The field ID that this operand should take the value of.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-operandone.html#cfn-cases-caserule-operandone-fieldid
*/
readonly fieldId: string;
}
/**
* Represents the right hand operand in the condition.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-operandtwo.html
*/
interface OperandTwoProperty {
/**
* Boolean value type.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-operandtwo.html#cfn-cases-caserule-operandtwo-booleanvalue
*/
readonly booleanValue?: boolean | cdk.IResolvable;
/**
* Double value type.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-operandtwo.html#cfn-cases-caserule-operandtwo-doublevalue
*/
readonly doubleValue?: number;
/**
* Represents an empty operand value.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-operandtwo.html#cfn-cases-caserule-operandtwo-emptyvalue
*/
readonly emptyValue?: any | cdk.IResolvable;
/**
* String value type.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-operandtwo.html#cfn-cases-caserule-operandtwo-stringvalue
*/
readonly stringValue?: string;
}
/**
* A rule that controls field visibility based on conditions.
*
* Fields can be shown or hidden dynamically based on values in other fields.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-hiddencaserule.html
*/
interface HiddenCaseRuleProperty {
/**
* A list of conditions that determine field visibility.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-hiddencaserule.html#cfn-cases-caserule-hiddencaserule-conditions
*/
readonly conditions: Array<CfnCaseRule.BooleanConditionProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* Whether the field is hidden when no conditions match.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-caserule-hiddencaserule.html#cfn-cases-caserule-hiddencaserule-defaultvalue
*/
readonly defaultValue: boolean | cdk.IResolvable;
}
}
/**
* Properties for defining a `CfnCaseRule`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-caserule.html
*/
export interface CfnCaseRuleProps {
/**
* Description of a case rule.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-caserule.html#cfn-cases-caserule-description
*/
readonly description?: string;
/**
* Unique identifier of a Cases domain.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-caserule.html#cfn-cases-caserule-domainid
*/
readonly domainId?: string;
/**
* Name of the case rule.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-caserule.html#cfn-cases-caserule-name
*/
readonly name: string;
/**
* Represents what rule type should take place, under what conditions.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-caserule.html#cfn-cases-caserule-rule
*/
readonly rule: CfnCaseRule.CaseRuleDetailsProperty | cdk.IResolvable;
/**
* An array of key-value pairs to apply to this resource.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-caserule.html#cfn-cases-caserule-tags
*/
readonly tags?: Array<cdk.CfnTag>;
}
/**
* Creates a domain, which is a container for all case data, such as cases, fields, templates and layouts.
*
* Each Amazon Connect instance can be associated with only one Cases domain.
*
* > This will not associate your connect instance to Cases domain. Instead, use the Amazon Connect [CreateIntegrationAssociation](https://docs.aws.amazon.com/connect/latest/APIReference/API_CreateIntegrationAssociation.html) API. You need specific IAM permissions to successfully associate the Cases domain. For more information, see [Onboard to Cases](https://docs.aws.amazon.com/connect/latest/adminguide/required-permissions-iam-cases.html#onboard-cases-iam) .
*
* @cloudformationResource AWS::Cases::Domain
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-domain.html
*/
export declare class CfnDomain extends cdk.CfnResource implements cdk.IInspectable, IDomainRef, cdk.ITaggableV2 {
/**
* 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;
/**
* Checks whether the given object is a CfnDomain
*/
static isCfnDomain(x: any): x is CfnDomain;
static arnForDomain(resource: IDomainRef): string;
/**
* The timestamp when the Cases domain was created.
*
* @cloudformationAttribute CreatedTime
*/
readonly attrCreatedTime: string;
/**
* The Amazon Resource Name (ARN) for the Cases domain.
*
* @cloudformationAttribute DomainArn
*/
readonly attrDomainArn: string;
/**
* The unique identifier of the Cases domain.
*
* @cloudformationAttribute DomainId
*/
readonly attrDomainId: string;
/**
* The status of the Cases domain.
*
* @cloudformationAttribute DomainStatus
*/
readonly attrDomainStatus: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
/**
* The name of the domain.
*/
name: string;
/**
* An array of key-value pairs to apply to this resource.
*/
tags?: Array<cdk.CfnTag>;
/**
* Create a new `AWS::Cases::Domain`.
*
* @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);
get domainRef(): DomainReference;
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>;
}
/**
* Properties for defining a `CfnDomain`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-domain.html
*/
export interface CfnDomainProps {
/**
* The name of the domain.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-domain.html#cfn-cases-domain-name
*/
readonly name: string;
/**
* An array of key-value pairs to apply to this resource.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-domain.html#cfn-cases-domain-tags
*/
readonly tags?: Array<cdk.CfnTag>;
}
/**
* Creates a field in the Cases domain.
*
* This field is used to define the case object model (that is, defines what data can be captured on cases) in a Cases domain.
*
* @cloudformationResource AWS::Cases::Field
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-field.html
*/
export declare class CfnField extends cdk.CfnResource implements cdk.IInspectable, IFieldRef, cdk.ITaggableV2 {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnField 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): CfnField;
/**
* Checks whether the given object is a CfnField
*/
static isCfnField(x: any): x is CfnField;
static arnForField(resource: IFieldRef): string;
/**
* Timestamp at which the resource was created.
*
* @cloudformationAttribute CreatedTime
*/
readonly attrCreatedTime: string;
/**
* The Amazon Resource Name (ARN) of the field.
*
* @cloudformationAttribute FieldArn
*/
readonly attrFieldArn: string;
/**
* Unique identifier of the field.
*
* @cloudformationAttribute FieldId
*/
readonly attrFieldId: string;
/**
* Timestamp at which the resource was created or last modified.
*
* @cloudformationAttribute LastModifiedTime
*/
readonly attrLastModifiedTime: string;
/**
* Namespace of the field.
*
* @cloudformationAttribute Namespace
*/
readonly attrNamespace: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
/**
* Description of the field.
*/
description?: string;
/**
* The unique identifier of the Cases domain.
*/
domainId?: string;
/**
* Name of the field.
*/
name: string;
/**
* An array of key-value pairs to apply to this resource.
*/
tags?: Array<cdk.CfnTag>;
/**
* Type of the field.
*/
type: string;
/**
* Create a new `AWS::Cases::Field`.
*
* @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: CfnFieldProps);
get fieldRef(): FieldReference;
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>;
}
/**
* Properties for defining a `CfnField`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-field.html
*/
export interface CfnFieldProps {
/**
* Description of the field.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-field.html#cfn-cases-field-description
*/
readonly description?: string;
/**
* The unique identifier of the Cases domain.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-field.html#cfn-cases-field-domainid
*/
readonly domainId?: string;
/**
* Name of the field.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-field.html#cfn-cases-field-name
*/
readonly name: string;
/**
* An array of key-value pairs to apply to this resource.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-field.html#cfn-cases-field-tags
*/
readonly tags?: Array<cdk.CfnTag>;
/**
* Type of the field.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-field.html#cfn-cases-field-type
*/
readonly type: string;
}
/**
* Creates a layout in the Cases domain.
*
* Layouts define the following configuration in the top section and More Info tab of the Cases user interface:
*
* - Fields to display to the users
* - Field ordering
*
* > Title and Status fields cannot be part of layouts since they are not configurable.
*
* @cloudformationResource AWS::Cases::Layout
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-layout.html
*/
export declare class CfnLayout extends cdk.CfnResource implements cdk.IInspectable, ILayoutRef, cdk.ITaggableV2 {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnLayout 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): CfnLayout;
/**
* Checks whether the given object is a CfnLayout
*/
static isCfnLayout(x: any): x is CfnLayout;
static arnForLayout(resource: ILayoutRef): string;
/**
* Timestamp at which the resource was created.
*
* @cloudformationAttribute CreatedTime
*/
readonly attrCreatedTime: string;
/**
* Timestamp at which the resource was created or last modified.
*
* @cloudformationAttribute LastModifiedTime
*/
readonly attrLastModifiedTime: string;
/**
* The Amazon Resource Name (ARN) of the newly created layout.
*
* @cloudformationAttribute LayoutArn
*/
readonly attrLayoutArn: string;
/**
* The unique identifier of the layout.
*
* @cloudformationAttribute LayoutId
*/
readonly attrLayoutId: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
/**
* Object to store union of different versions of layout content.
*/
content: cdk.IResolvable | CfnLayout.LayoutContentProperty;
/**
* The unique identifier of the Cases domain.
*/
domainId?: string;
/**
* The name of the layout.
*/
name: string;
/**
* An array of key-value pairs to apply to this resource.
*/
tags?: Array<cdk.CfnTag>;
/**
* Create a new `AWS::Cases::Layout`.
*
* @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: CfnLayoutProps);
get layoutRef(): LayoutReference;
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 CfnLayout {
/**
* Object to store union of different versions of layout content.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-layoutcontent.html
*/
interface LayoutContentProperty {
/**
* Content specific to `BasicLayout` type.
*
* It configures fields in the top panel and More Info tab of agent application.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-layoutcontent.html#cfn-cases-layout-layoutcontent-basic
*/
readonly basic: CfnLayout.BasicLayoutProperty | cdk.IResolvable;
}
/**
* Content specific to `BasicLayout` type.
*
* It configures fields in the top panel and More Info tab of agent application.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-basiclayout.html
*/
interface BasicLayoutProperty {
/**
* This represents sections in a tab of the page layout.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-basiclayout.html#cfn-cases-layout-basiclayout-moreinfo
*/
readonly moreInfo?: cdk.IResolvable | CfnLayout.LayoutSectionsProperty;
/**
* This represents sections in a panel of the page layout.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-basiclayout.html#cfn-cases-layout-basiclayout-toppanel
*/
readonly topPanel?: cdk.IResolvable | CfnLayout.LayoutSectionsProperty;
}
/**
* Ordered list containing different kinds of sections that can be added.
*
* A LayoutSections object can only contain one section.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-layoutsections.html
*/
interface LayoutSectionsProperty {
/**
* Ordered list containing different kinds of sections that can be added.
*
* A LayoutSections object can only contain one section.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-layoutsections.html#cfn-cases-layout-layoutsections-sections
*/
readonly sections?: Array<cdk.IResolvable | CfnLayout.SectionProperty> | cdk.IResolvable;
}
/**
* This represents a sections within a panel or tab of the page layout.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-section.html
*/
interface SectionProperty {
/**
* Consists of a group of fields and associated properties.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-section.html#cfn-cases-layout-section-fieldgroup
*/
readonly fieldGroup: CfnLayout.FieldGroupProperty | cdk.IResolvable;
}
/**
* Object for a group of fields and associated properties.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-fieldgroup.html
*/
interface FieldGroupProperty {
/**
* Represents an ordered list containing field related information.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-fieldgroup.html#cfn-cases-layout-fieldgroup-fields
*/
readonly fields: Array<CfnLayout.FieldItemProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* Name of the field group.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-fieldgroup.html#cfn-cases-layout-fieldgroup-name
*/
readonly name?: string;
}
/**
* Object for field related information.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-fielditem.html
*/
interface FieldItemProperty {
/**
* Unique identifier of a field.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-layout-fielditem.html#cfn-cases-layout-fielditem-id
*/
readonly id: string;
}
}
/**
* Properties for defining a `CfnLayout`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-layout.html
*/
export interface CfnLayoutProps {
/**
* Object to store union of different versions of layout content.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-layout.html#cfn-cases-layout-content
*/
readonly content: cdk.IResolvable | CfnLayout.LayoutContentProperty;
/**
* The unique identifier of the Cases domain.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-layout.html#cfn-cases-layout-domainid
*/
readonly domainId?: string;
/**
* The name of the layout.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-layout.html#cfn-cases-layout-name
*/
readonly name: string;
/**
* An array of key-value pairs to apply to this resource.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-layout.html#cfn-cases-layout-tags
*/
readonly tags?: Array<cdk.CfnTag>;
}
/**
* Creates a template in the Cases domain.
*
* This template is used to define the case object model (that is, to define what data can be captured on cases) in a Cases domain. A template must have a unique name within a domain, and it must reference existing field IDs and layout IDs. Additionally, multiple fields with same IDs are not allowed within the same Template. A template can be either Active or Inactive, as indicated by its status. Inactive templates cannot be used to create cases.
*
* Other template APIs are:
*
* - [DeleteTemplate](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-cases_DeleteTemplate.html)
* - [GetTemplate](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-cases_GetTemplate.html)
* - [ListTemplates](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-cases_ListTemplates.html)
* - [UpdateTemplate](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-cases_UpdateTemplate.html)
*
* @cloudformationResource AWS::Cases::Template
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html
*/
export declare class CfnTemplate extends cdk.CfnResource implements cdk.IInspectable, ITemplateRef, cdk.ITaggableV2 {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnTemplate 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): CfnTemplate;
/**
* Checks whether the given object is a CfnTemplate
*/
static isCfnTemplate(x: any): x is CfnTemplate;
static arnForTemplate(resource: ITemplateRef): string;
/**
* Timestamp at which the resource was created.
*
* @cloudformationAttribute CreatedTime
*/
readonly attrCreatedTime: string;
/**
* Timestamp at which the resource was created or last modified.
*
* @cloudformationAttribute LastModifiedTime
*/
readonly attrLastModifiedTime: string;
/**
* The Amazon Resource Name (ARN) of the template.
*
* @cloudformationAttribute TemplateArn
*/
readonly attrTemplateArn: string;
/**
* A unique identifier of a template.
*
* @cloudformationAttribute TemplateId
*/
readonly attrTemplateId: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
/**
* A brief description of the template.
*/
description?: string;
/**
* The unique identifier of the Cases domain.
*/
domainId?: string;
/**
* Object to store configuration of layouts associated to the template.
*/
layoutConfiguration?: cdk.IResolvable | CfnTemplate.LayoutConfigurationProperty;
/**
* The template name.
*/
name: string;
/**
* A list of fields that must contain a value for a case to be successfully created with this template.
*/
requiredFields?: Array<cdk.IResolvable | CfnTemplate.RequiredFieldProperty> | cdk.IResolvable;
/**
* A list of case rules (also known as [case field conditions](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) ) on a template.
*/
rules?: Array<cdk.IResolvable | CfnTemplate.TemplateRuleProperty> | cdk.IResolvable;
/**
* The status of the template.
*/
status?: string;
/**
* An array of key-value pairs to apply to this resource.
*/
tags?: Array<cdk.CfnTag>;
/**
* Create a new `AWS::Cases::Template`.
*
* @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: CfnTemplateProps);
get templateRef(): TemplateReference;
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 CfnTemplate {
/**
* Object to store configuration of layouts associated to the template.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-template-layoutconfiguration.html
*/
interface LayoutConfigurationProperty {
/**
* Unique identifier of a layout.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-template-layoutconfiguration.html#cfn-cases-template-layoutconfiguration-defaultlayout
*/
readonly defaultLayout?: string;
}
/**
* List of fields that must have a value provided to create a case.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-template-requiredfield.html
*/
interface RequiredFieldProperty {
/**
* Unique identifier of a field.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-template-requiredfield.html#cfn-cases-template-requiredfield-fieldid
*/
readonly fieldId: string;
}
/**
* An association representing a case rule acting upon a field.
*
* In the Amazon Connect admin website, case rules are known as *case field conditions* . For more information about case field conditions, see [Add case field conditions to a case template](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-template-templaterule.html
*/
interface TemplateRuleProperty {
/**
* Unique identifier of a case rule.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-template-templaterule.html#cfn-cases-template-templaterule-caseruleid
*/
readonly caseRuleId: string;
/**
* Unique identifier of a field.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cases-template-templaterule.html#cfn-cases-template-templaterule-fieldid
*/
readonly fieldId?: string;
}
}
/**
* Properties for defining a `CfnTemplate`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html
*/
export interface CfnTemplateProps {
/**
* A brief description of the template.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html#cfn-cases-template-description
*/
readonly description?: string;
/**
* The unique identifier of the Cases domain.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html#cfn-cases-template-domainid
*/
readonly domainId?: string;
/**
* Object to store configuration of layouts associated to the template.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html#cfn-cases-template-layoutconfiguration
*/
readonly layoutConfiguration?: cdk.IResolvable | CfnTemplate.LayoutConfigurationProperty;
/**
* The template name.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html#cfn-cases-template-name
*/
readonly name: string;
/**
* A list of fields that must contain a value for a case to be successfully created with this template.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html#cfn-cases-template-requiredfields
*/
readonly requiredFields?: Array<cdk.IResolvable | CfnTemplate.RequiredFieldProperty> | cdk.IResolvable;
/**
* A list of case rules (also known as [case field conditions](https://docs.aws.amazon.com/connect/latest/adminguide/case-field-conditions.html) ) on a template.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html#cfn-cases-template-rules
*/
readonly rules?: Array<cdk.IResolvable | CfnTemplate.TemplateRuleProperty> | cdk.IResolvable;
/**
* The status of the template.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html#cfn-cases-template-status
*/
readonly status?: string;
/**
* An array of key-value pairs to apply to this resource.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cases-template.html#cfn-cases-template-tags
*/
readonly tags?: Array<cdk.CfnTag>;
}
export type { ICaseRuleRef, CaseRuleReference };
export type { IDomainRef, DomainReference };
export type { IFieldRef, FieldReference };
export type { ILayoutRef, LayoutReference };
export type { ITemplateRef, TemplateReference };