You could use a change node with a JSONata expression, sort/order the array by the date and select the first index
$$.payload^(>MOST_RECENT_SIGN_EVENT)[0]
example flow
[{"id":"204db5e3.95ea72","type":"inject","z":"c74669a0.6a34f8","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"[{\"ID\":2,\"EVENTTYPE\":0,\"MOST_RECENT_SIGN_EVENT\":\"2021-05-26T08:21:30.000Z\"},{\"ID\":2,\"EVENTTYPE\":1,\"MOST_RECENT_SIGN_EVENT\":\"2021-08-29T15:17:44.000Z\"}]","payloadType":"json","x":160,"y":2980,"wires":[["e2bac98.bc315b8","d8091ebd.a8116"]]},{"id":"e2bac98.bc315b8","type":"change","z":"c74669a0.6a34f8","name":"latest element","rules":[{"t":"set","p":"payload","pt":"msg","to":"$$.payload^(>MOST_RECENT_SIGN_EVENT)[0]","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":370,"y":3000,"wires":[["63461532.8efd3c"]]},{"id":"d8091ebd.a8116","type":"change","z":"c74669a0.6a34f8","name":"signed in true/false","rules":[{"t":"set","p":"payload","pt":"msg","to":"$$.payload^(>MOST_RECENT_SIGN_EVENT)[0].EVENTTYPE = 1","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":420,"y":3060,"wires":[["63461532.8efd3c"]]},{"id":"63461532.8efd3c","type":"debug","z":"c74669a0.6a34f8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":660,"y":3000,"wires":[]}]
[edit] Added true false resolution of if on line.