private ObjectNode.Builder createTypedBuilder(Shape shape) {
            ObjectNode.Builder builder = Node.objectNodeBuilder()
                    .withMember("type", Node.from(shape.getType().toString()));

            if (!shape.getMixins().isEmpty()) {
                List<Node> mixins = new ArrayList<>(shape.getMixins().size());
                for (ShapeId mixin : shape.getMixins()) {
                    mixins.add(serializeReference(mixin));
                }
                builder.withMember("mixins", Node.fromNodes(mixins));
            }

            return builder;
        }
Sets the IDL version to serialize. Defaults to 2.0.

<p>Version "1.0" serialization cannot be used with {@link #includePrelude}.

@param version IDL version to set. Can be "1", "1.0", "2", or "2.0".
               "1" and "2" are normalized to "1.0" and "2.0".
@return Returns the builder.
smithy-model/src/main/java/software/amazon/smithy/model/shapes/ModelSerializer.java