import 'package:krow_core/core.dart';

/// Represents the arguments required for the CreateHubUseCase.
///
/// Encapsulates the name and address of the hub to be created.
class CreateHubArguments extends UseCaseArgument {
  /// The name of the hub.
  final String name;

  /// The physical address of the hub.
  final String address;

  /// Creates a [CreateHubArguments] instance.
  ///
  /// Both [name] and [address] are required.
  const CreateHubArguments({required this.name, required this.address});

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