Due to scoping the ambient light should be it's own light type, but if it was current implementation would allocate whole light struct in the shader just for the ambient term, so it is better to specify it as a parameter in all lights.
Add common light properties to abstract base class and derive others from that.
Remove shadow field of view. For point lights it's always 90 due to cubemap rendering and directional lights use parallel projection. Setting any other value creates erronious shadows. Area lights render shadows using cube maps too.
QQuick3DAreaLight
specularColor (remove), ambientColor (Should be its own light type).
shadowMapResolution -> enum (pow of 2)
castShadow -> cast(s)Shadow
QQuick3DPointLight
diffuseColor, should it be just color or diffuse?
rename exponentialFade to quadraticFade
QQuickDirectionalLight
a-ok?
Similarly to other lights just one color property.