import 'package:equatable/equatable.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/models/space_template_model.dart';

abstract class SpaceModelEvent extends Equatable {
  @override
  List<Object?> get props => [];
}

class LoadSpaceModels extends SpaceModelEvent {}

class CreateSpaceModel extends SpaceModelEvent {
  final SpaceTemplateModel newSpaceModel;

  CreateSpaceModel({required this.newSpaceModel});

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

class GetSpaceModel extends SpaceModelEvent {
  final String spaceModelUuid;

  GetSpaceModel({required this.spaceModelUuid});

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

class UpdateSpaceModel extends SpaceModelEvent {
  final String spaceModelUuid;

  UpdateSpaceModel({required this.spaceModelUuid});

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

class DeleteSpaceModel extends SpaceModelEvent {
  final String spaceModelUuid;

  DeleteSpaceModel({required this.spaceModelUuid});

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