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

part of '../../../persistence_contract.dart';

/// Document field names for [SchedulingNotice] embedded documents.
abstract final class SchedulingNoticeDocumentFields {
  /// Stable storage field for `message`.
  /// Keeping the key in one documented constant protects repository adapters, migrations, and tests from drifting string literals.
  static const message = 'message';

  /// Stable storage field for `type`.
  /// Keeping the key in one documented constant protects repository adapters, migrations, and tests from drifting string literals.
  static const type = 'type';

  /// Stable storage field for `taskId`.
  /// Keeping the key in one documented constant protects repository adapters, migrations, and tests from drifting string literals.
  static const taskId = 'taskId';

  /// Stable storage field for `issueCode`.
  /// Keeping the key in one documented constant protects repository adapters, migrations, and tests from drifting string literals.
  static const issueCode = 'issueCode';

  /// Stable storage field for `movementCode`.
  /// Keeping the key in one documented constant protects repository adapters, migrations, and tests from drifting string literals.
  static const movementCode = 'movementCode';

  /// Stable storage field for `conflictCode`.
  /// Keeping the key in one documented constant protects repository adapters, migrations, and tests from drifting string literals.
  static const conflictCode = 'conflictCode';

  /// Stable storage field for `parameters`.
  /// Keeping the key in one documented constant protects repository adapters, migrations, and tests from drifting string literals.
  static const parameters = 'parameters';

  /// Stable storage field for `all`.
  /// Keeping the key in one documented constant protects repository adapters, migrations, and tests from drifting string literals.
  static const all = <String>{
    message,
    type,
    taskId,
    issueCode,
    movementCode,
    conflictCode,
    parameters,
  };
}
