<?php

declare(strict_types=1);

namespace Brick\Schema\Interfaces;

use Brick\Schema\DataType\Text;
use Brick\Schema\SchemaTypeList;

/**
 * http://schema.org/Service
 *
 * @property-read SchemaTypeList<Place|GeoShape|AdministrativeArea>      $serviceArea      The geographic area where the service is provided.
 * @property-read SchemaTypeList<Organization|Person>                    $provider         The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller.
 * @property-read SchemaTypeList<Audience>                               $serviceAudience  The audience eligible for this service.
 * @property-read SchemaTypeList<AdministrativeArea|GeoShape|Place|Text> $areaServed       The geographic area where a service or offered item is provided.
 * @property-read SchemaTypeList<Audience>                               $audience         An intended audience, i.e. a group for whom something was created.
 * @property-read SchemaTypeList<OfferCatalog>                           $hasOfferCatalog  Indicates an OfferCatalog listing for this Organization, Person, or Service.
 * @property-read SchemaTypeList<OpeningHoursSpecification>              $hoursAvailable   The hours during which this service or contact is available.
 * @property-read SchemaTypeList<Text>                                   $providerMobility Indicates the mobility of a provided service (e.g. 'static', 'dynamic').
 * @property-read SchemaTypeList<AggregateRating>                        $aggregateRating  The overall rating, based on a collection of reviews or ratings, of the item.
 * @property-read SchemaTypeList<Offer>                                  $offers           An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event.
 * @property-read SchemaTypeList<Text>                                   $award            An award won by or for this item.
 * @property-read SchemaTypeList<Text|Thing>                             $category         A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy.
 * @property-read SchemaTypeList<Organization|Person>                    $broker           An entity that arranges for an exchange between a buyer and a seller.  In most cases a broker never acquires or releases ownership of a product or service involved in an exchange.  If it is not clear whether an entity is a broker, seller, or buyer, the latter two terms are preferred.
 * @property-read SchemaTypeList<Thing>                                  $serviceOutput    The tangible thing generated by the service, e.g. a passport, permit, etc.
 * @property-read SchemaTypeList<URL|ImageObject>                        $logo             An associated logo.
 * @property-read SchemaTypeList<Product|Service>                        $isSimilarTo      A pointer to another, functionally similar product (or multiple products).
 * @property-read SchemaTypeList<Service|Product>                        $isRelatedTo      A pointer to another, somehow related product (or multiple products).
 * @property-read SchemaTypeList<ServiceChannel>                         $availableChannel A means of accessing the service (e.g. a phone bank, a web site, a location, etc.).
 * @property-read SchemaTypeList<Review>                                 $review           A review of the item.
 * @property-read SchemaTypeList<Text>                                   $serviceType      The type of service being offered, e.g. veterans' benefits, emergency relief, etc.
 * @property-read SchemaTypeList<Thing>                                  $produces         The tangible thing generated by the service, e.g. a passport, permit, etc.
 * @property-read SchemaTypeList<Text>                                   $slogan           A slogan or motto associated with the item.
 * @property-read SchemaTypeList<Organization|Brand>                     $brand            The brand(s) associated with a product or service, or the brand(s) maintained by an organization or business person.
 */
interface Service extends Intangible
{
}
