"""
Sideline Plugin System.

This module provides the plugin framework for Sideline, allowing applications
to extend the pipeline with custom stages, effects, and sources.

Features:
- Plugin base classes with metadata
- Security permission system
- Compatibility management
- Entry point discovery
"""

from sideline.plugins.base import StagePlugin, Plugin, PluginMetadata
from sideline.plugins.security import SecurityCapability, SecurityManager
from sideline.plugins.compatibility import VersionConstraint, CompatibilityManager

__all__ = [
    "StagePlugin",
    "Plugin",  # Backward compatibility alias
    "PluginMetadata",
    "SecurityCapability",
    "SecurityManager",
    "VersionConstraint",
    "CompatibilityManager",
]
