def METHOD_NAME(self) -> list[Struct]:
    root_struct = Struct(f"{self.provider_prefix}Properties", items=[])
    self._add_struct(root_struct)
    for property_name, property_def in self.schema["properties"].items():
        is_required = property_name in self.required_properties
        item = self.property_to_item(property_name, property_def, is_required)
        root_struct.items.append(item)
    return self.structs