Kotlinx Json Model
A JsonModel for kotlinx.serialization JsonElement values.
The model reads the elements of the tree directly. It does not copy them. A number keeps the exact text of the JSON input, so numberValue is exact.
Every JSON number has the kind JsonKind.NUMBER. numberValue keeps the text of the number and reads it only when the evaluator needs the exact value.
A JsonPrimitive that is not a string can hold text that is not a JSON literal, for example NaN from JsonPrimitive(Double.NaN) or the text of JsonUnquotedLiteral. The model classifies such a primitive as a JsonKind.STRING with its text.