<?php
/**
 * Contract for unit price data sources.
 *
 * @package PhoenixWP\PriceLabels
 */

declare(strict_types=1);

namespace PhoenixWP\PriceLabels\Compliance;

use WC_Product;

defined( 'ABSPATH' ) || exit;

/**
 * Resolves Grundpreis text from a single source (plugin or meta schema).
 */
interface Unit_Price_Provider_Interface {

	/**
	 * Unique provider slug for debugging and filters.
	 */
	public function get_id(): string;

	/**
	 * Returns formatted plain-text unit price or null when not applicable.
	 */
	public function resolve( WC_Product $product ): ?string;
}
