<?php
/**
 * BookiFlex Core
 *
 * @package    BookiFlex
 * @subpackage Core
 * @author     BookiFlex
 * @copyright  Copyright (c) 2025 BookiFlex
 * @license    GPL-2.0-or-later
 *
 * @link       https://bookiflex.com
 */

declare(strict_types=1);

namespace BookiFlex\Core\Service\SuitableAccommodationType\Event;

use BookiFlex\Core\Service\SuitableAccommodationType\DTO\SuitableAccommodationTypeResult;

defined( 'ABSPATH' ) || exit;

class SuitableAccommodationTypesAreFound
{
    private array $suitableAccommodationTypes;
    private mixed $context;

    /**
     * @param SuitableAccommodationTypeResult[] $accommodationTypes
     * @param mixed $context
     */
    public function __construct(array $accommodationTypes, mixed $context)
    {
        $this->suitableAccommodationTypes = $accommodationTypes;
        $this->context                    = $context;
    }

    /**
     * @param SuitableAccommodationTypeResult[] $accommodationTypes
     */
    public function setSuitableAccommodationTypes(array $accommodationTypes): void
    {
        $this->suitableAccommodationTypes = $accommodationTypes;
    }

    public function getSuitableAccommodationTypes(): array
    {
        return $this->suitableAccommodationTypes;
    }

    public function getContext(): mixed
    {
        return $this->context;
    }
}
