ToolResponse.inputRequired

As inputRequired, but encodes a typed state as the opaque requestState. Serialises state to JSON and stores its string form. ENCODING CONTRACT: the stored value is serializeToJson(state).toString(), which RequestContext.requestStateAs!T() decodes via deserializeJson!T(parseJsonString(state)). Constrained off string so it does not collide with the verbatim-string overload above.

struct ToolResponse
static @safe
inputRequired
(
T
)
if (
!is(T : string)
)