def METHOD_NAME(
    self,
    request: ResourceRequest[IAMGroupProperties],
) -> ProgressEvent[IAMGroupProperties]:
    """
    Delete a resource
    """
    model = request.desired_state
    iam_client = request.aws_client_factory.iam
    # first we need to detach and delete any attached policies
    for managed_policy in model.get("ManagedPolicyArns", []):
        iam_client.detach_group_policy(GroupName=model["GroupName"], PolicyArn=managed_policy)
    for inline_policy in model.get("Policies", []):
        iam_client.delete_group_policy(
            GroupName=model["GroupName"],
            PolicyName=inline_policy.get("PolicyName"),
        )
    # now we can delete the actual group
    iam_client.delete_group(GroupName=model["GroupName"])
    return ProgressEvent(
        status=OperationStatus.SUCCESS,
        resource_model={},
    )