A few small issues in your code are preventing it from working correctly:
for (i in values.length) is invalid. You should use a normal for loop: for (var i = 1; i < values.length; i++) (start at 1 to skip headers).
In the condition if (data == "Bypass" || "Declined" && check != "Sent"), JavaScript interprets it wrong — "Declined" is always truthy. You need explicit comparison: (data == "Bypass" || data == "Declined").
check is just a string, not a cell, so you can’t call .setValue() on it. You need to write back to the sheet with getRange().setValue().
MailApp.sendEmail() has the wrong parameter order — it should be (recipient, subject, body) (you can’t insert your HR email as the second argument). If you want a “from” address, that’s only possible with Gmail aliases.
onEdit() doesn’t automatically pass through arguments to your custom sendEmail(). If you want this to trigger on any edit, you should name the function onEdit(e).