async def absent(
    hub,
    ctx,
    name,
    zone_name,
    resource_group,
    record_type,
    connection_auth=None,
    **kwargs,
):
    """
    .. versionadded:: 1.0.0

    Ensure a record set does not exist in the DNS zone.

    :param name:
        Name of the record set.

    :param zone_name:
        Name of the DNS zone.

    :param resource_group:
        The resource group assigned to the DNS zone.

    :param record_type:
        The type of DNS record in this record set. Record sets of type SOA can be updated but not created
        (they are created when the DNS zone is created). Possible values include: 'A', 'AAAA', 'CAA', 'CNAME',
        'MX', 'NS', 'PTR', 'SOA', 'SRV', 'TXT'

    :param connection_auth:
        A dict with subscription and authentication parameters to be used in connecting to the
        Azure Resource Manager API.

    Example usage:

    .. code-block:: yaml

        Ensure record set absent:
            azurerm.dns.record_set.absent:
                - name: test_set
                - zone: test_zone
                - resource_group: test_group
                - record_type: test_type

    """
    ret = {"name": name, "result": False, "comment": "", "changes": {}}

    if not isinstance(connection_auth, dict):
        if ctx["acct"]:
            connection_auth = ctx["acct"]
        else:
            ret[
                "comment"
            ] = "Connection information must be specified via acct or connection_auth dictionary!"
            return ret

    rec_set = await hub.exec.azurerm.dns.record_set.get(
        ctx,
        name,
        zone_name,
        resource_group,
        record_type,
        azurerm_log_level="info",
        **connection_auth,
    )

    if "error" in rec_set:
        ret["result"] = True
        ret["comment"] = "Record set {0} was not found in zone {1}.".format(
            name, zone_name
        )
        return ret

    if ctx["test"]:
        ret["comment"] = "Record set {0} would be deleted.".format(name)
        ret["result"] = None
        ret["changes"] = {
            "old": rec_set,
            "new": {},
        }
        return ret

    deleted = await hub.exec.azurerm.dns.record_set.delete(
        ctx, name, zone_name, resource_group, record_type, **connection_auth
    )

    if deleted:
        ret["result"] = True
        ret["comment"] = "Record set {0} has been deleted.".format(name)
        ret["changes"] = {"old": rec_set, "new": {}}
        return ret

    ret["comment"] = "Failed to delete record set {0}!".format(name)
    return ret