<?PHP
/**
 * Contains a helper class for a field entry.
 *
 * @author Nathan Eikermann <nathan@museum-digital.de>
 */
declare(strict_types = 1);

/**
 * Class holding the information for a field entry.
 */
final class FieldEntry {

    public bool $required;
    public array $allowedValues;
    public array $dependsOn;
    public string $remark;
    public string $name_human_readable;
    public string $explica;

    /**
     * Function for constructing a new FieldEntry Object.
     *
     * @param boolean $required            True if the field is required.
     * @param array   $allowedValues       Array of allowed values.
     * @param array   $dependsOn           Array of fields the entry depends on.
     * @param string  $remark              String variable.
     * @param string  $name_human_readable Human readable translation.
     * @param string  $explica             String variable
     */
    public function __construct(
        bool $required, array $allowedValues,
        array $dependsOn, string $remark,
        string $name_human_readable, string $explica
    ) {
        $this->required = $required;
        $this->allowedValues = $allowedValues;
        $this->dependsOn = $dependsOn;
        $this->remark = $remark;
        $this->name_human_readable = $name_human_readable;
        $this->explica = $explica;

    }
}