<?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 CustomReportElementTreeNode
 * A custom report element tree node representation */
final class CustomReportElementTreeNodeType implements AutoGenerationInterface
{
    /**
     * The node active flag
     */
    public bool $active;
    /**
     * The allows filter flag
     */
    public bool $allowsFilter;
    /**
     * The node field canonical type
     */
    public ?string $canonicalType = null;
    /**
     * The node fields canonical field value type (e.g. Integer, Boolean, PercentValue, ...)
     */
    public ?string $canonicalValueType = null;
    /**
     * The node children
     * @var null|iterable
     */
    public ?iterable $children = null;
    /**
     * The node column header if any
     */
    public ?string $columnHeader = null;
    /**
     * The node description
     */
    public ?string $description = null;
    /**
     * The node field id if any
     */
    public ?string $fieldId = null;
    /**
     * The node filters
     * @var null|iterable|string[]
     */
    public ?iterable $filtersToString = null;
    /**
     * The node id
     */
    public ?string $id = null;
    /**
     * The node field is enumeration flag
     */
    public ?bool $isEnumeration = null;
    /**
     * The node field is numeric flag
     */
    public ?bool $isNumeric = null;
    /**
     * The node label
     */
    public ?string $label = null;
    /**
     * The node leaf flag
     */
    public bool $leaf;
    /**
     * The node prefix if any
     */
    public ?string $prefix = null;
    /**
     * The node field value type (e.g. Integer, Boolean, PercentValue, ...)
     */
    public ?string $valueType = null;
}