// SPDX-FileCopyrightText: 2026 FocusFlow contributors
// SPDX-License-Identifier: AGPL-3.0-only

part of '../../../application_management.dart';

/// Preview row for a possible Backlog scheduling slot.
class SuggestedSlotReadModel {
  /// Creates a suggested slot preview.
  const SuggestedSlotReadModel({
    required this.id,
    required this.localDateLabel,
    required this.startText,
    required this.endText,
    required this.durationMinutes,
    required this.fitLabel,
    required this.fitSeverityToken,
    required this.isPrimary,
  });

  /// Stable suggestion id.
  final String id;

  /// Display label for the owner-local date.
  final String localDateLabel;

  /// Display-ready start time.
  final String startText;

  /// Display-ready end time.
  final String endText;

  /// Suggested slot length in minutes.
  final int durationMinutes;

  /// Display label such as `Great Fit` or `Okay`.
  final String fitLabel;

  /// UI severity token for the fit label.
  final String fitSeverityToken;

  /// Whether this is the primary/default scheduling target.
  final bool isPrimary;
}
