<?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 ReportAction
 * A report action */
final class ReportActionType implements AutoGenerationInterface, ReportActionInterfaceInterface
{
    /**
     * Gets the icon action name
     */
    public ?string $actionName = null;
    /**
     * Gets the report filters (if any) for open report actions...
     * @var null|iterable
     */
    public ?iterable $filters = null;
    /**
     * Gets the icon name from the swing client
     */
    public ?string $iconName = null;
    /**
     * Gets the maximum number of selected rows in a table to be enabled
     */
    public ?int $maxSelectedRows = null;
    /**
     * Gets the menu label for this context menu
     */
    public ?string $menuLabel = null;
    /**
     * Gets the minimum number of selected rows in a table to be enabled
     */
    public ?int $minSelectedRows = null;
    /**
     * Gets the report id for open report actions...
     */
    public ?BuiltInReportEnum $reportId = null;
    /**
     * Gets the required add-on for this menu item (if any)
     */
    public ?AddOnProductEnum $requiredAddOn = null;
    /**
     * Returns the list of required rights
     * @var null|iterable|InventoryUserRightEnum[]
     */
    public ?iterable $requiredRights = null;
    /**
     * Gets the list of required application start modes
     * @var null|iterable|ApplicationStartModeEnum[]
     */
    public ?iterable $requiredStartModes = null;
    /**
     * Gets the icon name which should be used in the web client (if null, then map the swing client icon name)
     */
    public ?string $webIconName = null;
    /**
     * Gets the flag whether this menu item is a separator
     */
    public bool $isSeparator;
}