An object that can be turned into JSON dictionaries.The magic method json_dict must return a trivially json-serializabletype or other objects that support the SupportsJSON protocol.During deserialization, a class must be able to be resolved (seethe docstring for
read_json) and must be able to be (re-)constructedfrom the serialized parameters. If the type defines a classmethod
_from_json_dict_, that will be called. Otherwise, the
cirq_typekeywill be popped from the dictionary and used as kwargs to the type’sconstructor.