. */ namespace SP\Domain\Config\In; use SP\Core\Exceptions\ConstraintException; use SP\Core\Exceptions\QueryException; use SP\DataModel\ConfigData; use SP\Infrastructure\Database\QueryResult; /** * Class ConfigRepository * * @package SP\Infrastructure\Common\Repositories\Config */ interface ConfigRepositoryInterface { /** * @param ConfigData $configData * * @return bool * @throws ConstraintException * @throws QueryException */ public function update(ConfigData $configData): bool; /** * @param ConfigData $configData * * @return int * @throws ConstraintException * @throws QueryException */ public function create(ConfigData $configData): int; /** * Obtener un array con la configuración almacenada en la BBDD. * * @return QueryResult * @throws ConstraintException * @throws QueryException */ public function getAll(): QueryResult; /** * @param string $param * * @return QueryResult * @throws ConstraintException * @throws QueryException */ public function getByParam(string $param): QueryResult; /** * @param string $param * * @return bool * @throws ConstraintException * @throws QueryException */ public function has(string $param): bool; /** * @param string $param * * @return int * @throws \SP\Core\Exceptions\ConstraintException * @throws \SP\Core\Exceptions\QueryException */ public function deleteByParam(string $param): int; }