import 'app_error.dart';
sealed class DataState {
const DataState();
static const initial = Initial();
static const loading = Loading();
static failure(AppError e) => Failure(e);
static success<T>(T data) => Success(data);
bool get isReady => this is Success;
}
class Initial extends DataState {
const Initial();
}
class Loading extends DataState {
const Loading();
}
class Success<T> extends DataState {
final T data;
const Success(this.data);
}
class Failure extends DataState {
final AppError error;
const Failure(this.error);
}