import 'package:hl_lieferservice/model/car.dart';

abstract class CarsState {}

class CarsInitial extends CarsState {}

class CarsLoading extends CarsState {}

class CarsLoadingFailed extends CarsState {}

class CarAdded extends CarsState {
  Car car;

  CarAdded({required this.car});
}

class CarDeleted extends CarsState {
  String plate;

  CarDeleted({required this.plate});
}

class CarEdited extends CarsState {
  Car car;

  CarEdited({required this.car});
}

class CarsLoaded extends CarsState {
  List<Car> cars;
  String teamId;

  CarsLoaded({required this.cars, required this.teamId});

  CarsLoaded copyWith({List<Car>? cars, String? teamId}) {
    return CarsLoaded(cars: cars ?? this.cars, teamId: teamId ?? this.teamId);
  }
}
