Map<String, Object?> toJson() => { 'id': id, 'kind': kind, 'name': name, if (path != null) 'path': path, if (attributes.isNotEmpty) 'attributes': attributes, };