we should define builder classes for the two metadata representations (the raw dict and the dataclass form) to support incrementally creating metadata. something like
incomplete_builder = ZarrV3ArrayMetadataBuilder.data_type("float64") # returns an incomplete metadata specification
complete_builder = ZarrV3ArrayMetadataBuilder.data_type().chunk_grid().attributes()....build() # returns ZarrV3ArrayMetadata
we can model the serialized state of an incomplete builder with the controversial "array metadata typeddict with optional fields" type.
I've never written this kind of object before so I will solicit feedback from folks with more experience e.g. @kylebarron who has builders in zarrista
we should define builder classes for the two metadata representations (the raw dict and the dataclass form) to support incrementally creating metadata. something like
we can model the serialized state of an incomplete builder with the controversial "array metadata typeddict with optional fields" type.
I've never written this kind of object before so I will solicit feedback from folks with more experience e.g. @kylebarron who has builders in zarrista