import 'package:equatable/equatable.dart'; abstract class AuthState extends Equatable { const AuthState(); @override List get props => []; } class AuthInitial extends AuthState {} class AuthLoading extends AuthState {} class AuthOtpSent extends AuthState { final String phone; final String? mockOtp; const AuthOtpSent({required this.phone, this.mockOtp}); @override List get props => [phone, mockOtp]; } class Authenticated extends AuthState { final Map user; final String token; final String deviceFingerprint; const Authenticated({ required this.user, required this.token, required this.deviceFingerprint, }); @override List get props => [user, token, deviceFingerprint]; } class Unauthenticated extends AuthState {} class AuthFailure extends AuthState { final String errorMessage; const AuthFailure(this.errorMessage); @override List get props => [errorMessage]; }