/* AUTOMATICALLY GENERATED CODE DO NOT MODIFY */ /* To generate run: "serverpod generate" */ // ignore_for_file: implementation_imports // ignore_for_file: library_private_types_in_public_api // ignore_for_file: non_constant_identifier_names // ignore_for_file: public_member_api_docs // ignore_for_file: type_literal_in_constant_pattern // ignore_for_file: use_super_parameters // ignore_for_file: invalid_use_of_internal_member // ignore_for_file: no_leading_underscores_for_library_prefixes import 'package:serverpod_client/serverpod_client.dart' as _isc; /// What a question is about: the published studyset or a topic in it /// ('studyset'), or one of its cards, notes or steps ('card', 'note', /// 'step'), by its id in release [version]. abstract class DiscussionTarget implements _isc.SerializableModel, _isc.ProtocolSerialization { DiscussionTarget._({ required this.kind, required this.item, required this.version, }); factory DiscussionTarget({ required String kind, required String item, required int version, }) = _DiscussionTargetImpl; factory DiscussionTarget.fromJson(Map jsonSerialization) { return DiscussionTarget( kind: jsonSerialization['kind'] as String, item: jsonSerialization['item'] as String, version: jsonSerialization['version'] as int, ); } String kind; String item; int version; /// Returns a shallow copy of this [DiscussionTarget] /// with some or all fields replaced by the given arguments. @_isc.useResult DiscussionTarget copyWith({ String? kind, String? item, int? version, }); @override Map toJson() { return { '__className__': 'DiscussionTarget', 'kind': kind, 'item': item, 'version': version, }; } @override Map toJsonForProtocol() { return { '__className__': 'DiscussionTarget', 'kind': kind, 'item': item, 'version': version, }; } @override String toString() { return _isc.SerializationManager.encode(this); } } class _DiscussionTargetImpl extends DiscussionTarget { _DiscussionTargetImpl({ required String kind, required String item, required int version, }) : super._( kind: kind, item: item, version: version, ); /// Returns a shallow copy of this [DiscussionTarget] /// with some or all fields replaced by the given arguments. @_isc.useResult @override DiscussionTarget copyWith({ String? kind, String? item, int? version, }) { return DiscussionTarget( kind: kind ?? this.kind, item: item ?? this.item, version: version ?? this.version, ); } }