toJson method
Serializes format as a single string when only one value is present, matching the spec's "String or Array" definition.
Implementation
@override
Map<String, dynamic> toJson() {
final json = <String, dynamic>{}
..put('copy', copy)
..put('print', printAllowed)
..put('tts', tts)
..putOpt('devices', devices);
if (formats.length == 1) {
json['format'] = formats.first;
} else if (formats.isNotEmpty) {
json['format'] = formats;
}
return json;
}