<?php
/**
 * Canonical provider change.
 *
 * @package ScheduledChanges
 */

namespace ScheduledChanges\Provider;

/**
 * One before-and-after canonical field change.
 */
final class Change {
	private string $fieldId;
	/**
	 * @var mixed
	 */
	private $before;
	/**
	 * @var mixed
	 */
	private $after;
	/**
	 * @param mixed $before
	 * @param mixed $after
	 */
	public function __construct( string $fieldId, $before, $after ) {
		$this->fieldId = $fieldId;
		$this->before  = $before;
		$this->after   = $after;
	}

	public function fieldId(): string {
		return $this->fieldId;
	}

	/**
	 * @return mixed
	 */
	public function before() {
		return $this->before;
	}

	/**
	 * @return mixed
	 */
	public function after() {
		return $this->after;
	}
}
