<?php
/**
 * No-op stub for the WordPress.org-distributed Free build.
 *
 * The real Freemius FS_Plugin_Updater class is only shipped with the Pro
 * build distributed via Freemius. WordPress.org plugins must update via
 * the WP.org repository — they are not permitted to bundle their own
 * updater (see WP.org Plugin Guideline 11).
 *
 * This stub exists so that other Freemius SDK files which reference
 * FS_Plugin_Updater::instance($module), ->delete_update_data(), or
 * ::UPDATES_CHECK_CACHE_EXPIRATION do not throw fatal errors at
 * runtime. No WordPress update-routine filters are registered here,
 * and the class itself contains no update-checking logic.
 *
 * Generated by scripts/wporg-strip.py — do not edit by hand.
 */
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

if ( ! class_exists( 'FS_WPORG_Updater_Stub', false ) ) {
	class FS_WPORG_Updater_Stub {
		const UPDATES_CHECK_CACHE_EXPIRATION = 14400;

		private static $instances = array();

		public static function instance( $module ) {
			$key = is_object( $module ) ? spl_object_hash( $module ) : (string) $module;
			if ( ! isset( self::$instances[ $key ] ) ) {
				self::$instances[ $key ] = new self();
			}
			return self::$instances[ $key ];
		}

		private function __construct() {}

		public function delete_update_data() {}

		public static function _fetch_plugin_info_from_repository( $action = '', $args = null, $expiration = 0 ) {
			return false;
		}
	}

	// Expose the stub under the SDK's expected class name so existing
	// FS_Plugin_Updater::... references in class-freemius.php resolve.
	class_alias( 'FS_WPORG_Updater_Stub', 'FS_Plugin_Updater' );
}
