OpenDeck doesn't wait for the command to finish, in fact it doesn't wait for any action. It just sends the key press events to the plugins and moves on.
Then later the plugins can send back events if they want to change the text or the image, but that is separate/asynchronous from the original event