def delete_rule(RuleId=None, ChangeToken=None):
    """
    Permanently deletes a  Rule . You can't delete a Rule if it's still used in any WebACL objects or if it still includes any predicates, such as ByteMatchSet objects.
    If you just want to remove a Rule from a WebACL , use  UpdateWebACL .
    To permanently delete a Rule from AWS WAF, perform the following steps:
    See also: AWS API Documentation
    
    Examples
    The following example deletes a rule with the ID WAFRule-1-Example.
    Expected Output:
    
    :example: response = client.delete_rule(
        RuleId='string',
        ChangeToken='string'
    )
    
    
    :type RuleId: string
    :param RuleId: [REQUIRED]
            The RuleId of the Rule that you want to delete. RuleId is returned by CreateRule and by ListRules .
            

    :type ChangeToken: string
    :param ChangeToken: [REQUIRED]
            The value returned by the most recent call to GetChangeToken .
            

    :rtype: dict
    :return: {
        'ChangeToken': 'string'
    }
    
    
    :returns: 
    RuleId (string) -- [REQUIRED]
    The RuleId of the  Rule that you want to delete. RuleId is returned by  CreateRule and by  ListRules .
    
    ChangeToken (string) -- [REQUIRED]
    The value returned by the most recent call to  GetChangeToken .
    
    
    """
    pass
