import 'package:json_annotation/json_annotation.dart';

part 'user_info_entity.g.dart';

@JsonSerializable(checked: true)
class UserInfoEntity extends Object{

  @JsonKey(name: 'perms')
  int perms;

  @JsonKey(name: 'token')
  String token;

  @JsonKey(name: 'refresh_token')
  String refreshToken;

  @JsonKey(name: 'roleId')
  String roleId;

  @JsonKey(name: 'userName')
  String userName;

  @JsonKey(name: 'tenantName')
  String tenantName;

  @JsonKey(name: 'expire')
  int expire;

  @JsonKey(name: 'account')
  String account;

  @JsonKey(name: 'uid')
  String uid;

  @JsonKey(name: 'screenShareId')
  String screenShareId;

  @JsonKey(name: 'isAnonymous')
  bool isAnonymous;

  UserInfoEntity(this.perms,this.token,this.refreshToken,this.roleId,this.userName,this.tenantName,this.expire,this.account,this.uid,this.screenShareId,this.isAnonymous,);

  factory UserInfoEntity.fromJson(Map<String, dynamic> srcJson) => _$UserInfoEntityFromJson(srcJson);

  Map<String, dynamic> toJson() => _$UserInfoEntityToJson(this);
}
