AutomatedTeller::hasOfferCatalog()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 4
Ratio 100 %

Importance

Changes 0
Metric Value
dl 4
loc 4
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
namespace Spatie\SchemaOrg;
4
5
use \Spatie\SchemaOrg\Contracts\AutomatedTellerContract;
6
use \Spatie\SchemaOrg\Contracts\FinancialServiceContract;
7
use \Spatie\SchemaOrg\Contracts\LocalBusinessContract;
8
use \Spatie\SchemaOrg\Contracts\OrganizationContract;
9
use \Spatie\SchemaOrg\Contracts\PlaceContract;
10
use \Spatie\SchemaOrg\Contracts\ThingContract;
11
12
/**
13
 * ATM/cash machine.
14
 *
15
 * @see http://schema.org/AutomatedTeller
16
 *
17
 */
18 View Code Duplication
class AutomatedTeller extends BaseType implements AutomatedTellerContract, FinancialServiceContract, LocalBusinessContract, OrganizationContract, PlaceContract, ThingContract
0 ignored issues
show
Duplication introduced by
This class seems to be duplicated in your project.

Duplicated code is one of the most pungent code smells. If you need to duplicate the same code in three or more different places, we strongly encourage you to look into extracting the code into a single class or operation.

You can also find more detailed suggestions in the “Code” section of your repository.

Loading history...
19
{
20
    /**
21
     * A property-value pair representing an additional characteristics of the
22
     * entitity, e.g. a product feature or another characteristic for which
23
     * there is no matching property in schema.org.
24
     * 
25
     * Note: Publishers should be aware that applications designed to use
26
     * specific schema.org properties (e.g. http://schema.org/width,
27
     * http://schema.org/color, http://schema.org/gtin13, ...) will typically
28
     * expect such data to be provided using those properties, rather than using
29
     * the generic property/value mechanism.
30
     *
31
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[] $additionalProperty
32
     *
33
     * @return static
34
     *
35
     * @see http://schema.org/additionalProperty
36
     */
37
    public function additionalProperty($additionalProperty)
38
    {
39
        return $this->setProperty('additionalProperty', $additionalProperty);
40
    }
41
42
    /**
43
     * An additional type for the item, typically used for adding more specific
44
     * types from external vocabularies in microdata syntax. This is a
45
     * relationship between something and a class that the thing is in. In RDFa
46
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
47
     * attribute - for multiple types. Schema.org tools may have only weaker
48
     * understanding of extra types, in particular those defined externally.
49
     *
50
     * @param string|string[] $additionalType
51
     *
52
     * @return static
53
     *
54
     * @see http://schema.org/additionalType
55
     */
56
    public function additionalType($additionalType)
57
    {
58
        return $this->setProperty('additionalType', $additionalType);
59
    }
60
61
    /**
62
     * Physical address of the item.
63
     *
64
     * @param \Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $address
65
     *
66
     * @return static
67
     *
68
     * @see http://schema.org/address
69
     */
70
    public function address($address)
71
    {
72
        return $this->setProperty('address', $address);
73
    }
74
75
    /**
76
     * The overall rating, based on a collection of reviews or ratings, of the
77
     * item.
78
     *
79
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
80
     *
81
     * @return static
82
     *
83
     * @see http://schema.org/aggregateRating
84
     */
85
    public function aggregateRating($aggregateRating)
86
    {
87
        return $this->setProperty('aggregateRating', $aggregateRating);
88
    }
89
90
    /**
91
     * An alias for the item.
92
     *
93
     * @param string|string[] $alternateName
94
     *
95
     * @return static
96
     *
97
     * @see http://schema.org/alternateName
98
     */
99
    public function alternateName($alternateName)
100
    {
101
        return $this->setProperty('alternateName', $alternateName);
102
    }
103
104
    /**
105
     * An amenity feature (e.g. a characteristic or service) of the
106
     * Accommodation. This generic property does not make a statement about
107
     * whether the feature is included in an offer for the main accommodation or
108
     * available at extra costs.
109
     *
110
     * @param \Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract|\Spatie\SchemaOrg\Contracts\LocationFeatureSpecificationContract[] $amenityFeature
111
     *
112
     * @return static
113
     *
114
     * @see http://schema.org/amenityFeature
115
     */
116
    public function amenityFeature($amenityFeature)
117
    {
118
        return $this->setProperty('amenityFeature', $amenityFeature);
119
    }
120
121
    /**
122
     * The geographic area where a service or offered item is provided.
123
     *
124
     * @param \Spatie\SchemaOrg\Contracts\AdministrativeAreaContract|\Spatie\SchemaOrg\Contracts\AdministrativeAreaContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[]|\Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|string|string[] $areaServed
125
     *
126
     * @return static
127
     *
128
     * @see http://schema.org/areaServed
129
     */
130
    public function areaServed($areaServed)
131
    {
132
        return $this->setProperty('areaServed', $areaServed);
133
    }
134
135
    /**
136
     * An award won by or for this item.
137
     *
138
     * @param string|string[] $award
139
     *
140
     * @return static
141
     *
142
     * @see http://schema.org/award
143
     */
144
    public function award($award)
145
    {
146
        return $this->setProperty('award', $award);
147
    }
148
149
    /**
150
     * Awards won by or for this item.
151
     *
152
     * @param string|string[] $awards
153
     *
154
     * @return static
155
     *
156
     * @see http://schema.org/awards
157
     */
158
    public function awards($awards)
159
    {
160
        return $this->setProperty('awards', $awards);
161
    }
162
163
    /**
164
     * A short textual code (also called "store code") that uniquely identifies
165
     * a place of business. The code is typically assigned by the
166
     * parentOrganization and used in structured URLs.
167
     * 
168
     * For example, in the URL
169
     * http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code "3047"
170
     * is a branchCode for a particular branch.
171
     *
172
     * @param string|string[] $branchCode
173
     *
174
     * @return static
175
     *
176
     * @see http://schema.org/branchCode
177
     */
178
    public function branchCode($branchCode)
179
    {
180
        return $this->setProperty('branchCode', $branchCode);
181
    }
182
183
    /**
184
     * The larger organization that this local business is a branch of, if any.
185
     * Not to be confused with (anatomical)[[branch]].
186
     *
187
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $branchOf
188
     *
189
     * @return static
190
     *
191
     * @see http://schema.org/branchOf
192
     */
193
    public function branchOf($branchOf)
194
    {
195
        return $this->setProperty('branchOf', $branchOf);
196
    }
197
198
    /**
199
     * The brand(s) associated with a product or service, or the brand(s)
200
     * maintained by an organization or business person.
201
     *
202
     * @param \Spatie\SchemaOrg\Contracts\BrandContract|\Spatie\SchemaOrg\Contracts\BrandContract[]|\Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $brand
203
     *
204
     * @return static
205
     *
206
     * @see http://schema.org/brand
207
     */
208
    public function brand($brand)
209
    {
210
        return $this->setProperty('brand', $brand);
211
    }
212
213
    /**
214
     * A contact point for a person or organization.
215
     *
216
     * @param \Spatie\SchemaOrg\Contracts\ContactPointContract|\Spatie\SchemaOrg\Contracts\ContactPointContract[] $contactPoint
217
     *
218
     * @return static
219
     *
220
     * @see http://schema.org/contactPoint
221
     */
222
    public function contactPoint($contactPoint)
223
    {
224
        return $this->setProperty('contactPoint', $contactPoint);
225
    }
226
227
    /**
228
     * A contact point for a person or organization.
229
     *
230
     * @param \Spatie\SchemaOrg\Contracts\ContactPointContract|\Spatie\SchemaOrg\Contracts\ContactPointContract[] $contactPoints
231
     *
232
     * @return static
233
     *
234
     * @see http://schema.org/contactPoints
235
     */
236
    public function contactPoints($contactPoints)
237
    {
238
        return $this->setProperty('contactPoints', $contactPoints);
239
    }
240
241
    /**
242
     * The basic containment relation between a place and one that contains it.
243
     *
244
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedIn
245
     *
246
     * @return static
247
     *
248
     * @see http://schema.org/containedIn
249
     */
250
    public function containedIn($containedIn)
251
    {
252
        return $this->setProperty('containedIn', $containedIn);
253
    }
254
255
    /**
256
     * The basic containment relation between a place and one that contains it.
257
     *
258
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containedInPlace
259
     *
260
     * @return static
261
     *
262
     * @see http://schema.org/containedInPlace
263
     */
264
    public function containedInPlace($containedInPlace)
265
    {
266
        return $this->setProperty('containedInPlace', $containedInPlace);
267
    }
268
269
    /**
270
     * The basic containment relation between a place and another that it
271
     * contains.
272
     *
273
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $containsPlace
274
     *
275
     * @return static
276
     *
277
     * @see http://schema.org/containsPlace
278
     */
279
    public function containsPlace($containsPlace)
280
    {
281
        return $this->setProperty('containsPlace', $containsPlace);
282
    }
283
284
    /**
285
     * The currency accepted.
286
     * 
287
     * Use standard formats: [ISO 4217 currency
288
     * format](http://en.wikipedia.org/wiki/ISO_4217) e.g. "USD"; [Ticker
289
     * symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for
290
     * cryptocurrencies e.g. "BTC"; well known names for [Local Exchange
291
     * Tradings
292
     * Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system)
293
     * (LETS) and other currency types e.g. "Ithaca HOUR".
294
     *
295
     * @param string|string[] $currenciesAccepted
296
     *
297
     * @return static
298
     *
299
     * @see http://schema.org/currenciesAccepted
300
     */
301
    public function currenciesAccepted($currenciesAccepted)
302
    {
303
        return $this->setProperty('currenciesAccepted', $currenciesAccepted);
304
    }
305
306
    /**
307
     * A relationship between an organization and a department of that
308
     * organization, also described as an organization (allowing different urls,
309
     * logos, opening hours). For example: a store with a pharmacy, or a bakery
310
     * with a cafe.
311
     *
312
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $department
313
     *
314
     * @return static
315
     *
316
     * @see http://schema.org/department
317
     */
318
    public function department($department)
319
    {
320
        return $this->setProperty('department', $department);
321
    }
322
323
    /**
324
     * A description of the item.
325
     *
326
     * @param string|string[] $description
327
     *
328
     * @return static
329
     *
330
     * @see http://schema.org/description
331
     */
332
    public function description($description)
333
    {
334
        return $this->setProperty('description', $description);
335
    }
336
337
    /**
338
     * A sub property of description. A short description of the item used to
339
     * disambiguate from other, similar items. Information from other properties
340
     * (in particular, name) may be necessary for the description to be useful
341
     * for disambiguation.
342
     *
343
     * @param string|string[] $disambiguatingDescription
344
     *
345
     * @return static
346
     *
347
     * @see http://schema.org/disambiguatingDescription
348
     */
349
    public function disambiguatingDescription($disambiguatingDescription)
350
    {
351
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
352
    }
353
354
    /**
355
     * The date that this organization was dissolved.
356
     *
357
     * @param \DateTimeInterface|\DateTimeInterface[] $dissolutionDate
358
     *
359
     * @return static
360
     *
361
     * @see http://schema.org/dissolutionDate
362
     */
363
    public function dissolutionDate($dissolutionDate)
364
    {
365
        return $this->setProperty('dissolutionDate', $dissolutionDate);
366
    }
367
368
    /**
369
     * The Dun & Bradstreet DUNS number for identifying an organization or
370
     * business person.
371
     *
372
     * @param string|string[] $duns
373
     *
374
     * @return static
375
     *
376
     * @see http://schema.org/duns
377
     */
378
    public function duns($duns)
379
    {
380
        return $this->setProperty('duns', $duns);
381
    }
382
383
    /**
384
     * Email address.
385
     *
386
     * @param string|string[] $email
387
     *
388
     * @return static
389
     *
390
     * @see http://schema.org/email
391
     */
392
    public function email($email)
393
    {
394
        return $this->setProperty('email', $email);
395
    }
396
397
    /**
398
     * Someone working for this organization.
399
     *
400
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $employee
401
     *
402
     * @return static
403
     *
404
     * @see http://schema.org/employee
405
     */
406
    public function employee($employee)
407
    {
408
        return $this->setProperty('employee', $employee);
409
    }
410
411
    /**
412
     * People working for this organization.
413
     *
414
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $employees
415
     *
416
     * @return static
417
     *
418
     * @see http://schema.org/employees
419
     */
420
    public function employees($employees)
421
    {
422
        return $this->setProperty('employees', $employees);
423
    }
424
425
    /**
426
     * Upcoming or past event associated with this place, organization, or
427
     * action.
428
     *
429
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $event
430
     *
431
     * @return static
432
     *
433
     * @see http://schema.org/event
434
     */
435
    public function event($event)
436
    {
437
        return $this->setProperty('event', $event);
438
    }
439
440
    /**
441
     * Upcoming or past events associated with this place or organization.
442
     *
443
     * @param \Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $events
444
     *
445
     * @return static
446
     *
447
     * @see http://schema.org/events
448
     */
449
    public function events($events)
450
    {
451
        return $this->setProperty('events', $events);
452
    }
453
454
    /**
455
     * The fax number.
456
     *
457
     * @param string|string[] $faxNumber
458
     *
459
     * @return static
460
     *
461
     * @see http://schema.org/faxNumber
462
     */
463
    public function faxNumber($faxNumber)
464
    {
465
        return $this->setProperty('faxNumber', $faxNumber);
466
    }
467
468
    /**
469
     * Description of fees, commissions, and other terms applied either to a
470
     * class of financial product, or by a financial service organization.
471
     *
472
     * @param string|string[] $feesAndCommissionsSpecification
473
     *
474
     * @return static
475
     *
476
     * @see http://schema.org/feesAndCommissionsSpecification
477
     */
478
    public function feesAndCommissionsSpecification($feesAndCommissionsSpecification)
479
    {
480
        return $this->setProperty('feesAndCommissionsSpecification', $feesAndCommissionsSpecification);
481
    }
482
483
    /**
484
     * A person who founded this organization.
485
     *
486
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $founder
487
     *
488
     * @return static
489
     *
490
     * @see http://schema.org/founder
491
     */
492
    public function founder($founder)
493
    {
494
        return $this->setProperty('founder', $founder);
495
    }
496
497
    /**
498
     * A person who founded this organization.
499
     *
500
     * @param \Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $founders
501
     *
502
     * @return static
503
     *
504
     * @see http://schema.org/founders
505
     */
506
    public function founders($founders)
507
    {
508
        return $this->setProperty('founders', $founders);
509
    }
510
511
    /**
512
     * The date that this organization was founded.
513
     *
514
     * @param \DateTimeInterface|\DateTimeInterface[] $foundingDate
515
     *
516
     * @return static
517
     *
518
     * @see http://schema.org/foundingDate
519
     */
520
    public function foundingDate($foundingDate)
521
    {
522
        return $this->setProperty('foundingDate', $foundingDate);
523
    }
524
525
    /**
526
     * The place where the Organization was founded.
527
     *
528
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $foundingLocation
529
     *
530
     * @return static
531
     *
532
     * @see http://schema.org/foundingLocation
533
     */
534
    public function foundingLocation($foundingLocation)
535
    {
536
        return $this->setProperty('foundingLocation', $foundingLocation);
537
    }
538
539
    /**
540
     * A person or organization that supports (sponsors) something through some
541
     * kind of financial contribution.
542
     *
543
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $funder
544
     *
545
     * @return static
546
     *
547
     * @see http://schema.org/funder
548
     */
549
    public function funder($funder)
550
    {
551
        return $this->setProperty('funder', $funder);
552
    }
553
554
    /**
555
     * The geo coordinates of the place.
556
     *
557
     * @param \Spatie\SchemaOrg\Contracts\GeoCoordinatesContract|\Spatie\SchemaOrg\Contracts\GeoCoordinatesContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[] $geo
558
     *
559
     * @return static
560
     *
561
     * @see http://schema.org/geo
562
     */
563
    public function geo($geo)
564
    {
565
        return $this->setProperty('geo', $geo);
566
    }
567
568
    /**
569
     * The [Global Location Number](http://www.gs1.org/gln) (GLN, sometimes also
570
     * referred to as International Location Number or ILN) of the respective
571
     * organization, person, or place. The GLN is a 13-digit number used to
572
     * identify parties and physical locations.
573
     *
574
     * @param string|string[] $globalLocationNumber
575
     *
576
     * @return static
577
     *
578
     * @see http://schema.org/globalLocationNumber
579
     */
580
    public function globalLocationNumber($globalLocationNumber)
581
    {
582
        return $this->setProperty('globalLocationNumber', $globalLocationNumber);
583
    }
584
585
    /**
586
     * A URL to a map of the place.
587
     *
588
     * @param \Spatie\SchemaOrg\Contracts\MapContract|\Spatie\SchemaOrg\Contracts\MapContract[]|string|string[] $hasMap
589
     *
590
     * @return static
591
     *
592
     * @see http://schema.org/hasMap
593
     */
594
    public function hasMap($hasMap)
595
    {
596
        return $this->setProperty('hasMap', $hasMap);
597
    }
598
599
    /**
600
     * Indicates an OfferCatalog listing for this Organization, Person, or
601
     * Service.
602
     *
603
     * @param \Spatie\SchemaOrg\Contracts\OfferCatalogContract|\Spatie\SchemaOrg\Contracts\OfferCatalogContract[] $hasOfferCatalog
604
     *
605
     * @return static
606
     *
607
     * @see http://schema.org/hasOfferCatalog
608
     */
609
    public function hasOfferCatalog($hasOfferCatalog)
610
    {
611
        return $this->setProperty('hasOfferCatalog', $hasOfferCatalog);
612
    }
613
614
    /**
615
     * Points-of-Sales operated by the organization or person.
616
     *
617
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $hasPOS
618
     *
619
     * @return static
620
     *
621
     * @see http://schema.org/hasPOS
622
     */
623
    public function hasPOS($hasPOS)
624
    {
625
        return $this->setProperty('hasPOS', $hasPOS);
626
    }
627
628
    /**
629
     * The identifier property represents any kind of identifier for any kind of
630
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
631
     * dedicated properties for representing many of these, either as textual
632
     * strings or as URL (URI) links. See [background
633
     * notes](/docs/datamodel.html#identifierBg) for more details.
634
     *
635
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
636
     *
637
     * @return static
638
     *
639
     * @see http://schema.org/identifier
640
     */
641
    public function identifier($identifier)
642
    {
643
        return $this->setProperty('identifier', $identifier);
644
    }
645
646
    /**
647
     * An image of the item. This can be a [[URL]] or a fully described
648
     * [[ImageObject]].
649
     *
650
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
651
     *
652
     * @return static
653
     *
654
     * @see http://schema.org/image
655
     */
656
    public function image($image)
657
    {
658
        return $this->setProperty('image', $image);
659
    }
660
661
    /**
662
     * A flag to signal that the item, event, or place is accessible for free.
663
     *
664
     * @param bool|bool[] $isAccessibleForFree
665
     *
666
     * @return static
667
     *
668
     * @see http://schema.org/isAccessibleForFree
669
     */
670
    public function isAccessibleForFree($isAccessibleForFree)
671
    {
672
        return $this->setProperty('isAccessibleForFree', $isAccessibleForFree);
673
    }
674
675
    /**
676
     * The International Standard of Industrial Classification of All Economic
677
     * Activities (ISIC), Revision 4 code for a particular organization,
678
     * business person, or place.
679
     *
680
     * @param string|string[] $isicV4
681
     *
682
     * @return static
683
     *
684
     * @see http://schema.org/isicV4
685
     */
686
    public function isicV4($isicV4)
687
    {
688
        return $this->setProperty('isicV4', $isicV4);
689
    }
690
691
    /**
692
     * The latitude of a location. For example ```37.42242``` ([WGS
693
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
694
     *
695
     * @param float|float[]|int|int[]|string|string[] $latitude
696
     *
697
     * @return static
698
     *
699
     * @see http://schema.org/latitude
700
     */
701
    public function latitude($latitude)
702
    {
703
        return $this->setProperty('latitude', $latitude);
704
    }
705
706
    /**
707
     * The official name of the organization, e.g. the registered company name.
708
     *
709
     * @param string|string[] $legalName
710
     *
711
     * @return static
712
     *
713
     * @see http://schema.org/legalName
714
     */
715
    public function legalName($legalName)
716
    {
717
        return $this->setProperty('legalName', $legalName);
718
    }
719
720
    /**
721
     * An organization identifier that uniquely identifies a legal entity as
722
     * defined in ISO 17442.
723
     *
724
     * @param string|string[] $leiCode
725
     *
726
     * @return static
727
     *
728
     * @see http://schema.org/leiCode
729
     */
730
    public function leiCode($leiCode)
731
    {
732
        return $this->setProperty('leiCode', $leiCode);
733
    }
734
735
    /**
736
     * The location of for example where the event is happening, an organization
737
     * is located, or where an action takes place.
738
     *
739
     * @param \Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|\Spatie\SchemaOrg\Contracts\PostalAddressContract|\Spatie\SchemaOrg\Contracts\PostalAddressContract[]|string|string[] $location
740
     *
741
     * @return static
742
     *
743
     * @see http://schema.org/location
744
     */
745
    public function location($location)
746
    {
747
        return $this->setProperty('location', $location);
748
    }
749
750
    /**
751
     * An associated logo.
752
     *
753
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $logo
754
     *
755
     * @return static
756
     *
757
     * @see http://schema.org/logo
758
     */
759
    public function logo($logo)
760
    {
761
        return $this->setProperty('logo', $logo);
762
    }
763
764
    /**
765
     * The longitude of a location. For example ```-122.08585``` ([WGS
766
     * 84](https://en.wikipedia.org/wiki/World_Geodetic_System)).
767
     *
768
     * @param float|float[]|int|int[]|string|string[] $longitude
769
     *
770
     * @return static
771
     *
772
     * @see http://schema.org/longitude
773
     */
774
    public function longitude($longitude)
775
    {
776
        return $this->setProperty('longitude', $longitude);
777
    }
778
779
    /**
780
     * Indicates a page (or other CreativeWork) for which this thing is the main
781
     * entity being described. See [background
782
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
783
     *
784
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
785
     *
786
     * @return static
787
     *
788
     * @see http://schema.org/mainEntityOfPage
789
     */
790
    public function mainEntityOfPage($mainEntityOfPage)
791
    {
792
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
793
    }
794
795
    /**
796
     * A pointer to products or services offered by the organization or person.
797
     *
798
     * @param \Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $makesOffer
799
     *
800
     * @return static
801
     *
802
     * @see http://schema.org/makesOffer
803
     */
804
    public function makesOffer($makesOffer)
805
    {
806
        return $this->setProperty('makesOffer', $makesOffer);
807
    }
808
809
    /**
810
     * A URL to a map of the place.
811
     *
812
     * @param string|string[] $map
813
     *
814
     * @return static
815
     *
816
     * @see http://schema.org/map
817
     */
818
    public function map($map)
819
    {
820
        return $this->setProperty('map', $map);
821
    }
822
823
    /**
824
     * A URL to a map of the place.
825
     *
826
     * @param string|string[] $maps
827
     *
828
     * @return static
829
     *
830
     * @see http://schema.org/maps
831
     */
832
    public function maps($maps)
833
    {
834
        return $this->setProperty('maps', $maps);
835
    }
836
837
    /**
838
     * The total number of individuals that may attend an event or venue.
839
     *
840
     * @param int|int[] $maximumAttendeeCapacity
841
     *
842
     * @return static
843
     *
844
     * @see http://schema.org/maximumAttendeeCapacity
845
     */
846
    public function maximumAttendeeCapacity($maximumAttendeeCapacity)
847
    {
848
        return $this->setProperty('maximumAttendeeCapacity', $maximumAttendeeCapacity);
849
    }
850
851
    /**
852
     * A member of an Organization or a ProgramMembership. Organizations can be
853
     * members of organizations; ProgramMembership is typically for individuals.
854
     *
855
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $member
856
     *
857
     * @return static
858
     *
859
     * @see http://schema.org/member
860
     */
861
    public function member($member)
862
    {
863
        return $this->setProperty('member', $member);
864
    }
865
866
    /**
867
     * An Organization (or ProgramMembership) to which this Person or
868
     * Organization belongs.
869
     *
870
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\ProgramMembershipContract|\Spatie\SchemaOrg\Contracts\ProgramMembershipContract[] $memberOf
871
     *
872
     * @return static
873
     *
874
     * @see http://schema.org/memberOf
875
     */
876
    public function memberOf($memberOf)
877
    {
878
        return $this->setProperty('memberOf', $memberOf);
879
    }
880
881
    /**
882
     * A member of this organization.
883
     *
884
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $members
885
     *
886
     * @return static
887
     *
888
     * @see http://schema.org/members
889
     */
890
    public function members($members)
891
    {
892
        return $this->setProperty('members', $members);
893
    }
894
895
    /**
896
     * The North American Industry Classification System (NAICS) code for a
897
     * particular organization or business person.
898
     *
899
     * @param string|string[] $naics
900
     *
901
     * @return static
902
     *
903
     * @see http://schema.org/naics
904
     */
905
    public function naics($naics)
906
    {
907
        return $this->setProperty('naics', $naics);
908
    }
909
910
    /**
911
     * The name of the item.
912
     *
913
     * @param string|string[] $name
914
     *
915
     * @return static
916
     *
917
     * @see http://schema.org/name
918
     */
919
    public function name($name)
920
    {
921
        return $this->setProperty('name', $name);
922
    }
923
924
    /**
925
     * The number of employees in an organization e.g. business.
926
     *
927
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[] $numberOfEmployees
928
     *
929
     * @return static
930
     *
931
     * @see http://schema.org/numberOfEmployees
932
     */
933
    public function numberOfEmployees($numberOfEmployees)
934
    {
935
        return $this->setProperty('numberOfEmployees', $numberOfEmployees);
936
    }
937
938
    /**
939
     * A pointer to the organization or person making the offer.
940
     *
941
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $offeredBy
942
     *
943
     * @return static
944
     *
945
     * @see http://schema.org/offeredBy
946
     */
947
    public function offeredBy($offeredBy)
948
    {
949
        return $this->setProperty('offeredBy', $offeredBy);
950
    }
951
952
    /**
953
     * The general opening hours for a business. Opening hours can be specified
954
     * as a weekly time range, starting with days, then times per day. Multiple
955
     * days can be listed with commas ',' separating each day. Day or time
956
     * ranges are specified using a hyphen '-'.
957
     * 
958
     * * Days are specified using the following two-letter combinations:
959
     * ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```.
960
     * * Times are specified using 24:00 time. For example, 3pm is specified as
961
     * ```15:00```. 
962
     * * Here is an example: <code>&lt;time itemprop="openingHours"
963
     * datetime=&quot;Tu,Th 16:00-20:00&quot;&gt;Tuesdays and Thursdays
964
     * 4-8pm&lt;/time&gt;</code>.
965
     * * If a business is open 7 days a week, then it can be specified as
966
     * <code>&lt;time itemprop=&quot;openingHours&quot;
967
     * datetime=&quot;Mo-Su&quot;&gt;Monday through Sunday, all
968
     * day&lt;/time&gt;</code>.
969
     *
970
     * @param string|string[] $openingHours
971
     *
972
     * @return static
973
     *
974
     * @see http://schema.org/openingHours
975
     */
976
    public function openingHours($openingHours)
977
    {
978
        return $this->setProperty('openingHours', $openingHours);
979
    }
980
981
    /**
982
     * The opening hours of a certain place.
983
     *
984
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $openingHoursSpecification
985
     *
986
     * @return static
987
     *
988
     * @see http://schema.org/openingHoursSpecification
989
     */
990
    public function openingHoursSpecification($openingHoursSpecification)
991
    {
992
        return $this->setProperty('openingHoursSpecification', $openingHoursSpecification);
993
    }
994
995
    /**
996
     * Products owned by the organization or person.
997
     *
998
     * @param \Spatie\SchemaOrg\Contracts\OwnershipInfoContract|\Spatie\SchemaOrg\Contracts\OwnershipInfoContract[]|\Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[] $owns
999
     *
1000
     * @return static
1001
     *
1002
     * @see http://schema.org/owns
1003
     */
1004
    public function owns($owns)
1005
    {
1006
        return $this->setProperty('owns', $owns);
1007
    }
1008
1009
    /**
1010
     * The larger organization that this organization is a [[subOrganization]]
1011
     * of, if any.
1012
     *
1013
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $parentOrganization
1014
     *
1015
     * @return static
1016
     *
1017
     * @see http://schema.org/parentOrganization
1018
     */
1019
    public function parentOrganization($parentOrganization)
1020
    {
1021
        return $this->setProperty('parentOrganization', $parentOrganization);
1022
    }
1023
1024
    /**
1025
     * Cash, Credit Card, Cryptocurrency, Local Exchange Tradings System, etc.
1026
     *
1027
     * @param string|string[] $paymentAccepted
1028
     *
1029
     * @return static
1030
     *
1031
     * @see http://schema.org/paymentAccepted
1032
     */
1033
    public function paymentAccepted($paymentAccepted)
1034
    {
1035
        return $this->setProperty('paymentAccepted', $paymentAccepted);
1036
    }
1037
1038
    /**
1039
     * A photograph of this place.
1040
     *
1041
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photo
1042
     *
1043
     * @return static
1044
     *
1045
     * @see http://schema.org/photo
1046
     */
1047
    public function photo($photo)
1048
    {
1049
        return $this->setProperty('photo', $photo);
1050
    }
1051
1052
    /**
1053
     * Photographs of this place.
1054
     *
1055
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|\Spatie\SchemaOrg\Contracts\PhotographContract|\Spatie\SchemaOrg\Contracts\PhotographContract[] $photos
1056
     *
1057
     * @return static
1058
     *
1059
     * @see http://schema.org/photos
1060
     */
1061
    public function photos($photos)
1062
    {
1063
        return $this->setProperty('photos', $photos);
1064
    }
1065
1066
    /**
1067
     * Indicates a potential Action, which describes an idealized action in
1068
     * which this thing would play an 'object' role.
1069
     *
1070
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
1071
     *
1072
     * @return static
1073
     *
1074
     * @see http://schema.org/potentialAction
1075
     */
1076
    public function potentialAction($potentialAction)
1077
    {
1078
        return $this->setProperty('potentialAction', $potentialAction);
1079
    }
1080
1081
    /**
1082
     * The price range of the business, for example ```$$$```.
1083
     *
1084
     * @param string|string[] $priceRange
1085
     *
1086
     * @return static
1087
     *
1088
     * @see http://schema.org/priceRange
1089
     */
1090
    public function priceRange($priceRange)
1091
    {
1092
        return $this->setProperty('priceRange', $priceRange);
1093
    }
1094
1095
    /**
1096
     * A flag to signal that the [[Place]] is open to public visitors.  If this
1097
     * property is omitted there is no assumed default boolean value
1098
     *
1099
     * @param bool|bool[] $publicAccess
1100
     *
1101
     * @return static
1102
     *
1103
     * @see http://schema.org/publicAccess
1104
     */
1105
    public function publicAccess($publicAccess)
1106
    {
1107
        return $this->setProperty('publicAccess', $publicAccess);
1108
    }
1109
1110
    /**
1111
     * The publishingPrinciples property indicates (typically via [[URL]]) a
1112
     * document describing the editorial principles of an [[Organization]] (or
1113
     * individual e.g. a [[Person]] writing a blog) that relate to their
1114
     * activities as a publisher, e.g. ethics or diversity policies. When
1115
     * applied to a [[CreativeWork]] (e.g. [[NewsArticle]]) the principles are
1116
     * those of the party primarily responsible for the creation of the
1117
     * [[CreativeWork]].
1118
     * 
1119
     * While such policies are most typically expressed in natural language,
1120
     * sometimes related information (e.g. indicating a [[funder]]) can be
1121
     * expressed using schema.org terminology.
1122
     *
1123
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $publishingPrinciples
1124
     *
1125
     * @return static
1126
     *
1127
     * @see http://schema.org/publishingPrinciples
1128
     */
1129
    public function publishingPrinciples($publishingPrinciples)
1130
    {
1131
        return $this->setProperty('publishingPrinciples', $publishingPrinciples);
1132
    }
1133
1134
    /**
1135
     * A review of the item.
1136
     *
1137
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
1138
     *
1139
     * @return static
1140
     *
1141
     * @see http://schema.org/review
1142
     */
1143
    public function review($review)
1144
    {
1145
        return $this->setProperty('review', $review);
1146
    }
1147
1148
    /**
1149
     * Review of the item.
1150
     *
1151
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $reviews
1152
     *
1153
     * @return static
1154
     *
1155
     * @see http://schema.org/reviews
1156
     */
1157
    public function reviews($reviews)
1158
    {
1159
        return $this->setProperty('reviews', $reviews);
1160
    }
1161
1162
    /**
1163
     * URL of a reference Web page that unambiguously indicates the item's
1164
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
1165
     * official website.
1166
     *
1167
     * @param string|string[] $sameAs
1168
     *
1169
     * @return static
1170
     *
1171
     * @see http://schema.org/sameAs
1172
     */
1173
    public function sameAs($sameAs)
1174
    {
1175
        return $this->setProperty('sameAs', $sameAs);
1176
    }
1177
1178
    /**
1179
     * A pointer to products or services sought by the organization or person
1180
     * (demand).
1181
     *
1182
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[] $seeks
1183
     *
1184
     * @return static
1185
     *
1186
     * @see http://schema.org/seeks
1187
     */
1188
    public function seeks($seeks)
1189
    {
1190
        return $this->setProperty('seeks', $seeks);
1191
    }
1192
1193
    /**
1194
     * The geographic area where the service is provided.
1195
     *
1196
     * @param \Spatie\SchemaOrg\Contracts\AdministrativeAreaContract|\Spatie\SchemaOrg\Contracts\AdministrativeAreaContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[]|\Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $serviceArea
1197
     *
1198
     * @return static
1199
     *
1200
     * @see http://schema.org/serviceArea
1201
     */
1202
    public function serviceArea($serviceArea)
1203
    {
1204
        return $this->setProperty('serviceArea', $serviceArea);
1205
    }
1206
1207
    /**
1208
     * A slogan or motto associated with the item.
1209
     *
1210
     * @param string|string[] $slogan
1211
     *
1212
     * @return static
1213
     *
1214
     * @see http://schema.org/slogan
1215
     */
1216
    public function slogan($slogan)
1217
    {
1218
        return $this->setProperty('slogan', $slogan);
1219
    }
1220
1221
    /**
1222
     * Indicates whether it is allowed to smoke in the place, e.g. in the
1223
     * restaurant, hotel or hotel room.
1224
     *
1225
     * @param bool|bool[] $smokingAllowed
1226
     *
1227
     * @return static
1228
     *
1229
     * @see http://schema.org/smokingAllowed
1230
     */
1231
    public function smokingAllowed($smokingAllowed)
1232
    {
1233
        return $this->setProperty('smokingAllowed', $smokingAllowed);
1234
    }
1235
1236
    /**
1237
     * The special opening hours of a certain place.
1238
     * 
1239
     * Use this to explicitly override general opening hours brought in scope by
1240
     * [[openingHoursSpecification]] or [[openingHours]].
1241
     *
1242
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $specialOpeningHoursSpecification
1243
     *
1244
     * @return static
1245
     *
1246
     * @see http://schema.org/specialOpeningHoursSpecification
1247
     */
1248
    public function specialOpeningHoursSpecification($specialOpeningHoursSpecification)
1249
    {
1250
        return $this->setProperty('specialOpeningHoursSpecification', $specialOpeningHoursSpecification);
1251
    }
1252
1253
    /**
1254
     * A person or organization that supports a thing through a pledge, promise,
1255
     * or financial contribution. e.g. a sponsor of a Medical Study or a
1256
     * corporate sponsor of an event.
1257
     *
1258
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $sponsor
1259
     *
1260
     * @return static
1261
     *
1262
     * @see http://schema.org/sponsor
1263
     */
1264
    public function sponsor($sponsor)
1265
    {
1266
        return $this->setProperty('sponsor', $sponsor);
1267
    }
1268
1269
    /**
1270
     * A relationship between two organizations where the first includes the
1271
     * second, e.g., as a subsidiary. See also: the more specific 'department'
1272
     * property.
1273
     *
1274
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $subOrganization
1275
     *
1276
     * @return static
1277
     *
1278
     * @see http://schema.org/subOrganization
1279
     */
1280
    public function subOrganization($subOrganization)
1281
    {
1282
        return $this->setProperty('subOrganization', $subOrganization);
1283
    }
1284
1285
    /**
1286
     * A CreativeWork or Event about this Thing.
1287
     *
1288
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
1289
     *
1290
     * @return static
1291
     *
1292
     * @see http://schema.org/subjectOf
1293
     */
1294
    public function subjectOf($subjectOf)
1295
    {
1296
        return $this->setProperty('subjectOf', $subjectOf);
1297
    }
1298
1299
    /**
1300
     * The Tax / Fiscal ID of the organization or person, e.g. the TIN in the US
1301
     * or the CIF/NIF in Spain.
1302
     *
1303
     * @param string|string[] $taxID
1304
     *
1305
     * @return static
1306
     *
1307
     * @see http://schema.org/taxID
1308
     */
1309
    public function taxID($taxID)
1310
    {
1311
        return $this->setProperty('taxID', $taxID);
1312
    }
1313
1314
    /**
1315
     * The telephone number.
1316
     *
1317
     * @param string|string[] $telephone
1318
     *
1319
     * @return static
1320
     *
1321
     * @see http://schema.org/telephone
1322
     */
1323
    public function telephone($telephone)
1324
    {
1325
        return $this->setProperty('telephone', $telephone);
1326
    }
1327
1328
    /**
1329
     * URL of the item.
1330
     *
1331
     * @param string|string[] $url
1332
     *
1333
     * @return static
1334
     *
1335
     * @see http://schema.org/url
1336
     */
1337
    public function url($url)
1338
    {
1339
        return $this->setProperty('url', $url);
1340
    }
1341
1342
    /**
1343
     * The Value-added Tax ID of the organization or person.
1344
     *
1345
     * @param string|string[] $vatID
1346
     *
1347
     * @return static
1348
     *
1349
     * @see http://schema.org/vatID
1350
     */
1351
    public function vatID($vatID)
1352
    {
1353
        return $this->setProperty('vatID', $vatID);
1354
    }
1355
1356
}
1357