41 lines · 1.4 KB · Text
RawDownload
interface slash-command {    use common.{range};     /// A slash command for use in the Assistant.    record slash-command {        /// The name of the slash command.        name: string,        /// The description of the slash command.        description: string,        /// The tooltip text to display for the run button.        tooltip-text: string,        /// Whether this slash command requires an argument.        requires-argument: bool,    }     /// The output of a slash command.    record slash-command-output {        /// The text produced by the slash command.        text: string,        /// The list of sections to show in the slash command placeholder.        sections: list<slash-command-output-section>,    }     /// A section in the slash command output.    record slash-command-output-section {        /// The range this section occupies.        range: range,        /// The label to display in the placeholder for this section.        label: string,    }     /// A completion for a slash command argument.    record slash-command-argument-completion {        /// The label to display for this completion.        label: string,        /// The new text that should be inserted into the command when this completion is accepted.        new-text: string,        /// Whether the command should be run when accepting this completion.        run-command: bool,    }}