extending default nginx mime.types file

Solution 1:

If I add a types {...} section to my nginx.conf it will override all the other types that were declared with the include mime.types;.

No, it won't.

You just need to specify additional types on the same level as your mime.types include:

include mime.types;
types {
    # here are additional types
    application/javascript mjs;
}