<?php

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

use Axtiva\FlexibleGraphql\Resolver\AutoGenerationInterface;

/**
 * This code is @generated by axtiva/flexible-graphql-php
 * if you want to extend it or change, then remove interface AutoGenerationInterface
 * and it will be managed by you, not axtiva/flexible-graphql-php code generator
 * PHP representation of graphql type SupportEntitlement
 * The support entitlements (Ex. warranty) of the device */
final class SupportEntitlementType implements AutoGenerationInterface
{
    /**
     * description about the support entitlement
     */
    public ?string $description = null;
    /**
     * id of the device which this support entitlement belongs to
     */
    public ?DeviceType $device = null;
    /**
     * end date of the support entitlement
     */
    public $endDate = null;
    /**
     * Number of days remaining to expire in days
     */
    public ?int $expiresInDays = null;
    /**
     * The internal id of this entity. Note that the id might change when the entity gets deleted and recreated.
     */
    public ?string $id = null;
    /**
     * part number of the device
     */
    public ?string $partNumber = null;
    /**
     * starting date of the support entitlement
     */
    public $startDate = null;
    /**
     * state of the support entitlement (Ex. Expired, Valid)
     */
    public ?SupportEntitlementStateEnum $supportEntitlementState = null;
}