import 'package:comunic/enums/user_page_visibility.dart';
import 'package:comunic/models/user.dart';
import 'package:meta/meta.dart';

/// Advanced user information
///
/// @author Pierre HUBERT

class AdvancedUserInfo extends User {
  final String publicNote;
  final bool canPostTexts;

  const AdvancedUserInfo({
    @required int id,
    @required String firstName,
    @required String lastName,
    @required UserPageVisibility pageVisibility,
    @required String virtualDirectory,
    @required String accountImageURL,
    @required this.publicNote,
    @required this.canPostTexts,
  })  : assert(publicNote != null),
        assert(canPostTexts != null),
        super(
            id: id,
            firstName: firstName,
            lastName: lastName,
            pageVisibility: pageVisibility,
            virtualDirectory: virtualDirectory,
            accountImageURL: accountImageURL);
}