Thank you @drmibell.
Turned out not to be that hard, if you spot the typo after a while of pulling your hair out.
This thread helped: How can my custom node have dynamic number of outputs?
Next up is adding an option to limit the size of the queue. Could be done either (A) by putting a hard end to queueing if limit is reached, or (B) by removing the oldest element in queue and adding the new msg.
If in mode (B), the node would support what was discussed here Can the Delay node rate limit, but pass first message immediately, and always pass on the latest message? if set to queueing, limit queue = 1, mode (B).