<?php

namespace App\Integration\Providers\Alliance3\DTO;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for PolicyStateHistoryList DTO
 * @subpackage Structs
 */
class PolicyStateHistoryList extends AbstractStructBase
{
    /**
     * The item
     * Meta information extracted from the WSDL
     * - maxOccurs: unbounded
     * - minOccurs: 0
     * @var \App\Integration\Providers\Alliance3\DTO\PolicyStateItem[]
     */
    public $item;
    /**
     * Constructor method for PolicyStateHistoryList
     * @uses PolicyStateHistoryList::setItem()
     * @param \App\Integration\Providers\Alliance3\DTO\PolicyStateItem[] $item
     */
    public function __construct(array $item = array())
    {
        $this
            ->setItem($item);
    }
    /**
     * Get item value
     * @return \App\Integration\Providers\Alliance3\DTO\PolicyStateItem[]|null
     */
    public function getItem()
    {
        return $this->item;
    }
    /**
     * Set item value
     * @param \App\Integration\Providers\Alliance3\DTO\PolicyStateItem[] $item
     * @return \App\Integration\Providers\Alliance3\DTO\PolicyStateHistoryList
     */
    public function setItem(array $item = array())
    {
        $this->item = $item;
        return $this;
    }
    /**
     * Add item to item value
     * @throws \InvalidArgumentException
     * @param \App\Integration\Providers\Alliance3\DTO\PolicyStateItem $item
     * @return \App\Integration\Providers\Alliance3\DTO\PolicyStateHistoryList
     */
    public function addToItem(\App\Integration\Providers\Alliance3\DTO\PolicyStateItem $item)
    {
        $this->item[] = $item;
        return $this;
    }
}
