<?php
/**
 * SEO metadata adapter interface.
 *
 * @package SmartyPress_AI_Engine
 */

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * Writes a neutral SEO metadata package to a target integration.
 */
interface SmartyPress_AI_Content_Generator_SEO_Metadata_Adapter_Interface {

	/**
	 * Adapter identifier.
	 *
	 * @return string
	 */
	public function get_name();

	/**
	 * Whether this adapter can write metadata in the current environment.
	 *
	 * @return bool
	 */
	public function is_available();

	/**
	 * Apply metadata to a post.
	 *
	 * @param int   $post_id Post ID.
	 * @param array $metadata Neutral metadata package.
	 * @return array Updated fields.
	 */
	public function apply( $post_id, array $metadata );
}
