part of 'date_selector_bloc.dart';

@immutable
sealed class DateSelectorEvent {}

class DateSelectorEventInit extends DateSelectorEvent {
  final EventScheduleType? recurringType;
  final EventModel? eventModel;

  DateSelectorEventInit(this.recurringType, this.eventModel);
}

class DateSelectorEventChangeStartDate extends DateSelectorEvent {
  final DateTime startDate;
  final EventEntity entity;

  DateSelectorEventChangeStartDate(this.startDate, this.entity);
}

class DateSelectorEventChangeEndDate extends DateSelectorEvent {
  final DateTime endDate;
  final EventEntity entity;


  DateSelectorEventChangeEndDate(this.endDate, this.entity);
}

class DateSelectorEventRepeatType extends DateSelectorEvent {
  final EventRepeatType type;

  DateSelectorEventRepeatType(this.type);
}

class DateSelectorEventEndType extends DateSelectorEvent {
  final EndDateType type;

  DateSelectorEventEndType(this.type);
}

class DateSelectorEventChangeEndsAfterWeeks extends DateSelectorEvent {
  final int weeks;

  DateSelectorEventChangeEndsAfterWeeks(this.weeks);
}
