Jake Vanderwerf
9 days ago 47e77f9fac1155c536b2b87fec552c7fcce66fa6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
namespace JVBase\managers\SEO\render\Traits\_Properties;
 
use JVBase\managers\SEO\render\Thing\CreativeWork\CreativeWork;
use JVBase\managers\SEO\render\Thing\Event\Event;
use JVBase\managers\SEO\render\Thing\Intangible\AggregateOffer;
use JVBase\managers\SEO\render\Thing\Intangible\MenuItem;
use JVBase\managers\SEO\render\Thing\Intangible\Service;
use JVBase\managers\SEO\render\Thing\Product\Product;
use JVBase\managers\SEO\render\Traits\_Helpers\arrayHelper;
 
if (!defined('ABSPATH')) {
    exit;
}
trait itemOfferedTrait {
    use arrayHelper;
    /**
     * @var AggregateOffer|CreativeWork|Event|MenuItem|Product|Service|array An item being offered (or demanded). The transactional nature of the offer or demand is documented using businessFunction, e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer.
     */
    protected AggregateOffer|CreativeWork|Event|MenuItem|Product|Service|array $itemOffered;
 
    public function getItemOffered():AggregateOffer|CreativeWork|Event|MenuItem|Product|Service|array|null
    {
        return $this->itemOffered??null;
    }
    public function setItemOffered(AggregateOffer|CreativeWork|Event|MenuItem|Product|Service|array $itemOffered):void
    {
        if (is_array($itemOffered)) {
            $itemOffered = $this->mixedArray('itemOffered', $itemOffered, [
                'JVBase\managers\SEO\render\Thing\CreativeWork\CreativeWork',
                'JVBase\managers\SEO\render\Thing\Event\Event',
                'JVBase\managers\SEO\render\Thing\Intangible\AggregateOffer',
                'JVBase\managers\SEO\render\Thing\Intangible\MenuItem',
                'JVBase\managers\SEO\render\Thing\Intangible\Service',
                'JVBase\managers\SEO\render\Thing\Product\Product'
            ]);
        }
        $this->itemOffered = $itemOffered;
    }
}