<?php

declare (strict_types=1);
namespace idoit\Module\JDisc\Graphql\Schema\Model;

use Axtiva\FlexibleGraphql\Type\InputType;

/**
 * This code is @generated by axtiva/flexible-graphql-php do not edit it
 * PHP representation of graphql type PendingUpdateItemInput
 * A pending update for an operating system. * @property null|bool $isMandatory = null A flag whether the update is mandatory or optional
 * @property null|bool $rebootRequired = null A flag whether a reboot after the installation is required or not
 * @property null|OperatingSystemInputInputType $operatingSystem = null The operating system the software is installed on
 * @property null|PendingUpdateInputInputType $pendingUpdate = null The associated application
 */
final class PendingUpdateItemInputInputType extends InputType
{
    protected function decorate($name, $value)
    {
        if ($value === null) {
            return null;
        }

        if ($name === 'operatingSystem') {
            return new OperatingSystemInputInputType($value);
        }

        if ($name === 'pendingUpdate') {
            return new PendingUpdateInputInputType($value);
        }

        return $value;
    }
}