import 'package:equatable/equatable.dart';
import 'package:meta/meta.dart';

@immutable
abstract class ProductPropertiesState extends Equatable {
  ProductPropertiesState([List props = const []]) : super();

  @override
  // TODO: implement props
  List<Object> get props => [];
}

class InitialProductPropertiesState extends ProductPropertiesState {
  @override
  String toString() {
    return 'InitialProductPropertiesState{}';
  }
}

class ProductPropertiesFailure extends ProductPropertiesState {
  final String error;

  ProductPropertiesFailure(this.error);

  @override
  String toString() {
    return 'ProductPropertiesFailure{error: $error}';
  }
}

class ProductPropertiesLoading extends ProductPropertiesState {
  @override
  String toString() {
    return 'ProductPropertiesStateLoading{}';
  }
}
class ProductPropertiesSuccess extends ProductPropertiesState {
  @override
  String toString() {
    return 'ProductPropertiesSuccess{}';
  }
}
