<?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 DatabaseIdBasedReportAction
 * The DatabaseIdBasedReportAction action type */
final class DatabaseIdBasedReportActionType implements AutoGenerationInterface, ReportActionInterfaceInterface
{
    /**
     * Gets the action name
     */
    public ?ActionNameEnum $actionName = null;
    /**
     * Gets the report filters (if any) for open report actions...
     * @var null|iterable
     */
    public ?iterable $filters = null;
    /**
     * Gets the icon name for 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 ?IReportReferenceInterface $reportRef = 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
     */
    public ?string $webIconName = null;
    /**
     * Returns whether this action is a web visible action or not
     */
    public ?bool $isWebAction = null;
}