<?php
/**
 * AI provider contract.
 *
 * @package Ugcify\AI
 */

namespace Ugcify\AI;

// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

interface AIProviderInterface {
	/**
	 * Analyze hotspot suggestions.
	 *
	 * @param array<string,mixed>             $image_source Image source block info.
	 * @param array<int,array<string,mixed>>  $candidates Candidate products.
	 * @param array<string,mixed>             $context Review context.
	 * @return array<string,mixed>|\WP_Error
	 */
	public function analyze_hotspots( array $image_source, array $candidates, array $context = array() );
}
