Await messages
Await a component click
Send files
You can send files from memory:Modal uploads
V2 modal upload fields surface submitted files throughctx.attachments[fieldId].
That gives you resolved attachment objects rather than only raw IDs.
Worth knowing
awaitMessages(...)resolves with the messages collected so far when time runs outawaitComponent(...)resolves tonullon timeout, so timeout handling should be explicitAttachmentBuilderworks with both disk paths and in-memory buffers