Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / league / container / src / ContainerInterface.php
diff --git a/vendor/league/container/src/ContainerInterface.php b/vendor/league/container/src/ContainerInterface.php
new file mode 100644 (file)
index 0000000..3996e32
--- /dev/null
@@ -0,0 +1,59 @@
+<?php
+
+namespace League\Container;
+
+interface ContainerInterface extends ImmutableContainerInterface
+{
+    /**
+     * Add an item to the container.
+     *
+     * @param  string     $alias
+     * @param  mixed|null $concrete
+     * @param  boolean    $share
+     * @return \League\Container\Definition\DefinitionInterface
+     */
+    public function add($alias, $concrete = null, $share = false);
+
+    /**
+     * Convenience method to add an item to the container as a shared item.
+     *
+     * @param  string     $alias
+     * @param  mixed|null $concrete
+     * @return \League\Container\Definition\DefinitionInterface
+     */
+    public function share($alias, $concrete = null);
+
+    /**
+     * Add a service provider to the container.
+     *
+     * @param  string|\League\Container\ServiceProvider\ServiceProviderInterface $provider
+     * @return void
+     */
+    public function addServiceProvider($provider);
+
+    /**
+     * Returns a definition of an item to be extended.
+     *
+     * @param  string $alias
+     * @return \League\Container\Definition\DefinitionInterface
+     */
+    public function extend($alias);
+
+    /**
+     * Allows for manipulation of specific types on resolution.
+     *
+     * @param  string        $type
+     * @param  callable|null $callback
+     * @return \League\Container\Inflector\Inflector|void
+     */
+    public function inflector($type, callable $callback = null);
+
+    /**
+     * Invoke a callable via the container.
+     *
+     * @param  callable $callable
+     * @param  array    $args
+     * @return mixed
+     */
+    public function call(callable $callable, array $args = []);
+}