Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
wp-content
/
plugins
/
elementor
/
modules
/
agents
/
classes
:
feature-component.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace Elementor\Modules\Agents\Classes; if ( ! defined( 'ABSPATH' ) ) { exit; } abstract class Feature_Component { /** * Stable string identifier, e.g. 'markdown_endpoint'. * Used as the registry key and audit-log channel. */ abstract public function get_id(): string; /** * Layer this component belongs to. * One of: 'discovery' | 'readability' | 'mcp' | 'governance' */ abstract public function get_layer(): string; /** * Whether this component overlaps with SEO plugin functionality. * Default false; override in discovery components where relevant. */ public function has_seo_overlap(): bool { return false; } /** * Whether this component is enabled. * * Subclasses override ONLY to express additional hard dependency gates * (e.g. mcp-adapter present). Per-module toggles are enforced at runtime. */ public function is_enabled(): bool { return true; } /** * Module dependencies required for this component to be registered. * When non-empty, the component is registered only when at least one of * the required modules is active. * * @return string[] Array of Agent_Ready_Settings::MODULE_* constants. */ public function get_required_modules(): array { return []; } /** * Wire hooks. Called by the module only when is_enabled() returns true. */ abstract public function register(): void; }