File: //usr/share/php/Composer/DependencyResolver/PolicyInterface.php
<?php declare(strict_types=1);
/*
* This file is part of Composer.
*
* (c) Nils Adermann <[email protected]>
* Jordi Boggiano <[email protected]>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Composer\DependencyResolver;
use Composer\Package\PackageInterface;
use Composer\Semver\Constraint\Constraint;
/**
* @author Nils Adermann <[email protected]>
*/
interface PolicyInterface
{
/**
* @phpstan-param Constraint::STR_OP_* $operator
*/
public function versionCompare(PackageInterface $a, PackageInterface $b, string $operator): bool;
/**
* @param int[] $literals
* @return int[]
*/
public function selectPreferredPackages(Pool $pool, array $literals, ?string $requiredPackage = null): array;
}