<?php

namespace LewisLarsen\Ebay\StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for DeleteMyMessagesRequestType StructType
 * Meta information extracted from the WSDL
 * - documentation: Removes selected messages for a given user.
 * @subpackage Structs
 */
class DeleteMyMessagesRequestType extends AbstractRequestType
{
    /**
     * The AlertIDs
     * Meta information extracted from the WSDL
     * - documentation: This field is deprecated.
     * - minOccurs: 0
     * @var \LewisLarsen\Ebay\ArrayType\MyMessagesAlertIDArrayType
     */
    public $AlertIDs;
    /**
     * The MessageIDs
     * Meta information extracted from the WSDL
     * - documentation: Contains a list of up to 10 <b>MessageID</b> values.
     * - minOccurs: 0
     * @var \LewisLarsen\Ebay\ArrayType\MyMessagesMessageIDArrayType
     */
    public $MessageIDs;
    /**
     * Constructor method for DeleteMyMessagesRequestType
     * @uses DeleteMyMessagesRequestType::setAlertIDs()
     * @uses DeleteMyMessagesRequestType::setMessageIDs()
     * @param \LewisLarsen\Ebay\ArrayType\MyMessagesAlertIDArrayType $alertIDs
     * @param \LewisLarsen\Ebay\ArrayType\MyMessagesMessageIDArrayType $messageIDs
     */
    public function __construct(\LewisLarsen\Ebay\ArrayType\MyMessagesAlertIDArrayType $alertIDs = null, \LewisLarsen\Ebay\ArrayType\MyMessagesMessageIDArrayType $messageIDs = null)
    {
        $this
            ->setAlertIDs($alertIDs)
            ->setMessageIDs($messageIDs);
    }
    /**
     * Get AlertIDs value
     * @return \LewisLarsen\Ebay\ArrayType\MyMessagesAlertIDArrayType|null
     */
    public function getAlertIDs()
    {
        return $this->AlertIDs;
    }
    /**
     * Set AlertIDs value
     * @param \LewisLarsen\Ebay\ArrayType\MyMessagesAlertIDArrayType $alertIDs
     * @return \LewisLarsen\Ebay\StructType\DeleteMyMessagesRequestType
     */
    public function setAlertIDs(\LewisLarsen\Ebay\ArrayType\MyMessagesAlertIDArrayType $alertIDs = null)
    {
        $this->AlertIDs = $alertIDs;
        return $this;
    }
    /**
     * Get MessageIDs value
     * @return \LewisLarsen\Ebay\ArrayType\MyMessagesMessageIDArrayType|null
     */
    public function getMessageIDs()
    {
        return $this->MessageIDs;
    }
    /**
     * Set MessageIDs value
     * @param \LewisLarsen\Ebay\ArrayType\MyMessagesMessageIDArrayType $messageIDs
     * @return \LewisLarsen\Ebay\StructType\DeleteMyMessagesRequestType
     */
    public function setMessageIDs(\LewisLarsen\Ebay\ArrayType\MyMessagesMessageIDArrayType $messageIDs = null)
    {
        $this->MessageIDs = $messageIDs;
        return $this;
    }
    /**
     * Method called when an object has been exported with var_export() functions
     * It allows to return an object instantiated with the values
     * @see AbstractStructBase::__set_state()
     * @uses AbstractStructBase::__set_state()
     * @param array $array the exported values
     * @return \LewisLarsen\Ebay\StructType\DeleteMyMessagesRequestType
     */
    public static function __set_state(array $array)
    {
        return parent::__set_state($array);
    }
    /**
     * Method returning the class name
     * @return string __CLASS__
     */
    public function __toString()
    {
        return __CLASS__;
    }
}
