import 'package:equatable/equatable.dart';

abstract class ShiftDetailsEvent extends Equatable {
  const ShiftDetailsEvent();

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

class LoadShiftDetailsEvent extends ShiftDetailsEvent {
  final String shiftId;
  final String? roleId;
  const LoadShiftDetailsEvent(this.shiftId, {this.roleId});

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

class BookShiftDetailsEvent extends ShiftDetailsEvent {
  final String shiftId;
  final String? roleId;
  final DateTime? date;
  const BookShiftDetailsEvent(this.shiftId, {this.roleId, this.date});

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

class DeclineShiftDetailsEvent extends ShiftDetailsEvent {
  final String shiftId;
  const DeclineShiftDetailsEvent(this.shiftId);

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