// ignore_for_file: invalid_annotation_target import 'package:freezed_annotation/freezed_annotation.dart'; part 'userinfo.freezed.dart'; part 'userinfo.g.dart'; @freezed class UserGroupMembership with _$UserGroupMembership { factory UserGroupMembership({ required String group, required String expiry, }) = _UserGroupMembership; factory UserGroupMembership.fromJson(Map json) => _$UserGroupMembershipFromJson(json); } @freezed class UserAcceptLang with _$UserAcceptLang { factory UserAcceptLang({ required double q, @JsonKey(name: '*') required String langCode, }) = _UserAcceptLang; factory UserAcceptLang.fromJson(Map json) => _$UserAcceptLangFromJson(json); } @freezed class MetaUserInfo with _$MetaUserInfo { factory MetaUserInfo({ required int id, required String name, List? groups, List? groupmemberships, List? implicitgroups, List? rights, Map>? changeablegroups, Map? options, int? editcount, String? realname, String? email, DateTime? emailauthenticated, DateTime? registrationdate, List? acceptlang, int? unreadcount, Map? centralids, Map? attachedlocal, DateTime? latestcontrib, }) = _MetaUserInfo; factory MetaUserInfo.fromJson(Map json) => _$MetaUserInfoFromJson(json); } @freezed class MetaUserInfoResponse with _$MetaUserInfoResponse { factory MetaUserInfoResponse({ required MetaUserInfo userinfo, Map? useravatar, }) = _MetaUserInfoResponse; factory MetaUserInfoResponse.fromJson(Map json) => _$MetaUserInfoResponseFromJson(json); }