import { Value } from '../../../cloudformation/Value';
import { RuleProps } from './RuleProps';
/**
  An object which defines the list of matching rules to run and has a field <code>Rules</code>, which is a list of rule objects.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-entityresolution-matchingworkflow-rulebasedproperties.html">the AWS Docs</a>
*/
export interface RuleBasedPropertiesProps {
    /** <code>AttributeMatchingModel</code>  <a name="cfn-entityresolution-matchingworkflow-rulebasedproperties-attributematchingmodel"></a>
  The comparison type. You can either choose <code>ONE_TO_ONE</code> or <code>MANY_TO_MANY</code> as the AttributeMatchingModel. When choosing <code>MANY_TO_MANY</code>, the system can match attributes across the sub-types of an attribute type. For example, if the value of the <code>Email</code> field of Profile A and the value of <code>BusinessEmail</code> field of Profile B matches, the two profiles are matched on the <code>Email</code> type. When choosing <code>ONE_TO_ONE</code> ,the system can only match if the sub-types are exact matches. For example, only when the value of the <code>Email</code> field of Profile A and the value of the <code>Email</code> field of Profile B matches, the two profiles are matched on the <code>Email</code> type.<br />
  
  Required: Yes<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> */
    attributeMatchingModel: Value<string>;
    /** <code>Rules</code>  <a name="cfn-entityresolution-matchingworkflow-rulebasedproperties-rules"></a>
  A list of <code>Rule</code> objects, each of which have fields <code>RuleName</code> and <code>MatchingKeys</code>.<br />
  
  Required: Yes<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> */
    rules: RuleProps[];
}
