<?php

declare (strict_types=1);
namespace idoit\Module\SyneticsJdisc\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 CustomAttributeInfo
 * The custom attribute info */
final class CustomAttributeInfoType implements AutoGenerationInterface
{
    /**
     * The custom attribute type
     */
    public ?AttributeTypeEnum $attributeType = null;
    /**
     * The custom attribute built in flag
     */
    public bool $builtIn;
    /**
     * The cached path
     */
    public ?string $cachedPath = null;
    /**
     * The custom attributes
     * @var null|iterable
     */
    public ?iterable $children = null;
    /**
     * The collection elements
     * @var null|iterable
     */
    public ?iterable $collectionElements = null;
    /**
     * A helper id set by Web UI for new attributes
     */
    public ?string $correlationId = null;
    /**
     * The custom attribute description
     */
    public ?string $description = null;
    /**
     * The custom attribute enabled flag
     */
    public ?bool $enabled = null;
    /**
     * The custom attribute enum values
     * @var null|iterable|string[]
     */
    public ?iterable $enumValues = null;
    /**
     * The custom attribute id
     */
    public $id = null;
    /**
     * The custom attribute keep history for hours value
     */
    public ?int $keepHistoryForHours = null;
    /**
     * The custom attribute name
     */
    public ?string $name = null;
    /**
     * The custom attribute order number
     */
    public ?int $orderNumber = null;
    /**
     * The custom attribute parent
     */
    public ?CustomAttributeInfoType $parent = null;
    /**
     * The path
     */
    public ?string $path = null;
}