47 lines
1.3 KiB
PHP
47 lines
1.3 KiB
PHP
|
<?php declare(strict_types=1);
|
||
|
|
||
|
namespace Automattic\WooCommerce\Vendor\League\Container\ServiceProvider;
|
||
|
|
||
|
use Automattic\WooCommerce\Vendor\League\Container\ContainerAwareInterface;
|
||
|
|
||
|
interface ServiceProviderInterface extends ContainerAwareInterface
|
||
|
{
|
||
|
/**
|
||
|
* Returns a boolean if checking whether this provider provides a specific
|
||
|
* service or returns an array of provided services if no argument passed.
|
||
|
*
|
||
|
* @param string $service
|
||
|
*
|
||
|
* @return boolean
|
||
|
*/
|
||
|
public function provides(string $service) : bool;
|
||
|
|
||
|
/**
|
||
|
* Use the register method to register items with the container via the
|
||
|
* protected $this->leagueContainer property or the `getLeagueContainer` method
|
||
|
* from the ContainerAwareTrait.
|
||
|
*
|
||
|
* @return void
|
||
|
*/
|
||
|
public function register();
|
||
|
|
||
|
/**
|
||
|
* Set a custom id for the service provider. This enables
|
||
|
* registering the same service provider multiple times.
|
||
|
*
|
||
|
* @param string $id
|
||
|
*
|
||
|
* @return self
|
||
|
*/
|
||
|
public function setIdentifier(string $id) : ServiceProviderInterface;
|
||
|
|
||
|
/**
|
||
|
* The id of the service provider uniquely identifies it, so
|
||
|
* that we can quickly determine if it has already been registered.
|
||
|
* Defaults to get_class($provider).
|
||
|
*
|
||
|
* @return string
|
||
|
*/
|
||
|
public function getIdentifier() : string;
|
||
|
}
|