Encodes this snapshot as JSON-compatible data.
Map<String, Object?> toJson() => <String, Object?>{ 'timestamp': timestamp.millisecondsSinceEpoch, 'buster': buster, 'state': state.toJson(), };