# CfnRuleProps

A rule can include a RuleCondition property and must include an Assertions property.

For each rule, you can define only one rule condition; you can define one or more asserts within the Assertions property.
You define a rule condition and assertions by using rule-specific intrinsic functions.

You can use the following rule-specific intrinsic functions to define rule conditions and assertions:

 Fn::And
 Fn::Contains
 Fn::EachMemberEquals
 Fn::EachMemberIn
 Fn::Equals
 Fn::If
 Fn::Not
 Fn::Or
 Fn::RefAll
 Fn::ValueOf
 Fn::ValueOfAll

https://docs.aws.amazon.com/servicecatalog/latest/adminguide/reference-template_constraint_rules.html

- Source: [`core/lib/cfn-rule.ts`](https://github.com/aws/aws-cdk/blob/v2.273.0/packages/aws-cdk-lib/core/lib/cfn-rule.ts#L27)

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as cdk from 'aws-cdk-lib';

declare const cfnConditionExpression: cdk.ICfnConditionExpression;
const cfnRuleProps: cdk.CfnRuleProps = {
  assertions: [{
    assert: cfnConditionExpression,
    assertDescription: 'assertDescription',
  }],
  ruleCondition: cfnConditionExpression,
};
```

## Properties

- `assertions`: [CfnRuleAssertion](/cdk/api/v2/docs/aws-cdk-lib.CfnRuleAssertion.html)[] = No assertions for the rule. — Assertions which define the rule.

- `ruleCondition`: [ICfnConditionExpression](/cdk/api/v2/docs/aws-cdk-lib.ICfnConditionExpression.html) = Rule's assertions will always take effect. — If the rule condition evaluates to false, the rule doesn't take effect.

  If the function in the rule condition evaluates to true, expressions in each assert are evaluated and applied.

  **Default:** Rule's assertions will always take effect.

## Used as props by

- [`CfnRule`](/v2/docs/aws-cdk-lib.CfnRule)
