<?php

declare(strict_types=1);

namespace Australcode\Rewards\Service\Import;

defined( 'ABSPATH' ) || exit;

/**
 * Immutable outcome of an import run (real or dry-run).
 *
 * - candidates:       source users that have a YITH balance record.
 * - already_imported: candidates skipped because they were imported before.
 * - eligible:         candidates that would be / were written this run.
 * - points:           sum of balances over the eligible users.
 * - imported:         users actually written (0 on a dry-run, == eligible on a real run).
 */
final class ImportReport {

	public function __construct(
		public readonly int $candidates,
		public readonly int $already_imported,
		public readonly int $eligible,
		public readonly int $points,
		public readonly int $imported,
	) {
	}
}
