part of 'shifts_bloc.dart';

@immutable
sealed class ShiftsEvent extends Equatable {
  const ShiftsEvent();

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

class LoadShiftsEvent extends ShiftsEvent {}

class FilterAvailableShiftsEvent extends ShiftsEvent {
  final String? query;
  final String? jobType;

  const FilterAvailableShiftsEvent({this.query, this.jobType});

  @override
  List<Object?> get props => [query, jobType];
}

class AcceptShiftEvent extends ShiftsEvent {
  final String shiftId;
  const AcceptShiftEvent(this.shiftId);

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

class DeclineShiftEvent extends ShiftsEvent {
  final String shiftId;
  const DeclineShiftEvent(this.shiftId);

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