part of 'authentication_bloc.dart';

class AuthenticationState extends Equatable {
  final bool forced;
  final AuthenticationStatus status;
  const AuthenticationState._({
    this.status = AuthenticationStatus.unknown,
    this.forced = false,
  });

  const AuthenticationState.unknown() : this._();

  const AuthenticationState.authenticated()
      : this._(status: AuthenticationStatus.authenticated);

  const AuthenticationState.unauthenticated({bool forced = false})
      : this._(status: AuthenticationStatus.unauthenticated, forced: forced);

  const AuthenticationState.forcedUnauthenticated()
      : this._(status: AuthenticationStatus.forcedUnauthenticated);

  @override
  List<Object> get props => [status];
}