<?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 GenericTreeReportValuesDescription
 * The description for a tree based report */
final class GenericTreeReportValuesDescriptionType implements AutoGenerationInterface, ReportDescriptionInterface
{
    /**
     * Gets a list of actions for this report
     * @var null|iterable
     */
    public ?iterable $actions = null;
    /**
     * Gets a list of buttons for this report
     * @var null|iterable
     */
    public ?iterable $buttons = null;
    /**
     * The chart descriptions of supported charts
     * @var null|iterable
     */
    public ?iterable $chartDescriptions = null;
    /**
     * Returns the fields and their associated actions
     * @var null|iterable
     */
    public ?iterable $fieldActions = null;
    /**
     * The list of filters
     * @var null|iterable
     */
    public ?iterable $filters = null;
    /**
     * Returns the default action that gets executed when you doubleclick on a row in the table
     */
    public ?ReportActionInterfaceInterface $reportDefaultAction = null;
    /**
     * Gets the report identifier
     */
    public ?BuiltInReportEnum $reportId = null;
    /**
     * The supported filter fields. Supported filter fields are configured per report description.
     * @var null|iterable
     */
    public ?iterable $supportedFilterFields = null;
    /**
     * Gets the title for the report
     */
    public ?string $title = null;
    /**
     * A flag whether the report supports history data
     */
    public ?bool $hasHistory = null;
    /**
     * A flag whether the report is group aware or not.
     */
    public ?bool $isGroupAware = null;
    /**
     * A flag whether the report is splittable
     */
    public ?bool $isSplittable = null;
    /**
     * A flag whether the report supports the starterGets the list of all columns
     */
    public ?bool $supportsStarterEdition = null;
    /**
     * A flag whether the panel with the values should be embedded in a scrollpane or not
     */
    public ?bool $embedInScrollPane = null;
    /**
     * Returns the short title for the report (in some cases identical with the title)
     */
    public ?string $shortTitle = null;
}