value and onChange, and handle the message in onSubmit, which Enter and the send button both call.autoSize with minRows and maxRows to let the input grow with its text, then scroll.submitType to shiftEnter so Enter adds a new line and Shift + Enter sends.loading while a reply is streaming, so the send button turns into a stop button that calls onCancel.readOnly to show a message that cannot be edited, like one that is already being answered.disabled to block typing and sending, like when the user has run out of messages.ref to insert text at the cursor, the start or the end, and to focus, select or blur the input.suffix to rebuild the action area from the send, loading, clear and speech buttons it receives.suffix: change its shape or icon, or wrap it in a tooltip.suffix until there is text or an attached file to send.footer to add a toolbar under the input, and set suffix to false to move the send button into it.Sender.Header to header to open a panel above the input, here an upload area toggled by the paperclip.Sender.Header with only a title to show the message being replied to, with a close button to drop it.onPasteFile to catch files pasted into the input and add them to an Attachments list in the header.Sender.Switch is a toggle button for options like search or reasoning, with loading, disabled and its own on and off labels.allowSpeech to add a microphone button that turns speech into text, after the browser asks for permission.recording and onRecordingChange to allowSpeech to drive the microphone button from your own speech service.slotConfig to mix fixed text with fields, a select, a tag and a custom control, and skill to show the active skill.formatResult to change how its value is written into the message that onSubmit receives.onChange reports.Suggestion and open it on @, then insert a slot at the cursor for the chosen item.Bubble.List, followed by an assistant reply that types itself in.