The interface should have two methods: one to output to a JSON string representation of the object, another (this will be a static method) to parse an object from a JSON representation. There should also be a property that provides an example or template JSON string. Most classes will come to implement this interface, and it will be used for saving and loading HapticSession configs to JSON files. The implementations of each of the two interface functions in each implementing class may just be wrappers for JSON.Serialize() and Deserialize(), but some may be more complicated than that which is why we're making this interface
The interface should have two methods: one to output to a JSON string representation of the object, another (this will be a static method) to parse an object from a JSON representation. There should also be a property that provides an example or template JSON string. Most classes will come to implement this interface, and it will be used for saving and loading HapticSession configs to JSON files. The implementations of each of the two interface functions in each implementing class may just be wrappers for JSON.Serialize() and Deserialize(), but some may be more complicated than that which is why we're making this interface