<?php
namespace Mirasvit\SearchGraphQl\Model\Resolver\SearchResult;

/**
 * Interceptor class for @see \Mirasvit\SearchGraphQl\Model\Resolver\SearchResult
 */
class Interceptor extends \Mirasvit\SearchGraphQl\Model\Resolver\SearchResult implements \Magento\Framework\Interception\InterceptorInterface
{
    use \Magento\Framework\Interception\Interceptor;

    public function __construct(\Mirasvit\Search\Repository\IndexRepository $indexRepository, \Magento\Search\Model\QueryFactory $queryFactory, \Magento\Catalog\Model\Layer\Resolver $layerResolver, \Mirasvit\Misspell\Model\GraphQL\Suggester $suggester)
    {
        $this->___init();
        parent::__construct($indexRepository, $queryFactory, $layerResolver, $suggester);
    }

    /**
     * {@inheritdoc}
     */
    public function resolve(\Magento\Framework\GraphQl\Config\Element\Field $field, $context, \Magento\Framework\GraphQl\Schema\Type\ResolveInfo $info, ?array $value = null, ?array $args = null)
    {
        $pluginInfo = $this->pluginList->getNext($this->subjectType, 'resolve');
        return $pluginInfo ? $this->___callPlugins('resolve', func_get_args(), $pluginInfo) : parent::resolve($field, $context, $info, $value, $args);
    }
}
