/**
 * Zenith Config Types
 *
 * Configuration interfaces for zenith.config.ts
 *
 * ═══════════════════════════════════════════════════════════════════════════════
 * HOOK OWNERSHIP RULE (CANONICAL)
 * ═══════════════════════════════════════════════════════════════════════════════
 *
 * Core may ONLY define types that are universally valid in all Zenith applications.
 * Plugin-specific types MUST be owned by their respective plugins.
 *
 * ✅ ALLOWED in Core:
 *    - ZenithConfig, ZenithPlugin, PluginContext (generic plugin infrastructure)
 *    - Universal lifecycle hooks (onMount, onUnmount)
 *    - Reactivity primitives (signal, effect, etc.)
 *
 * ❌ PROHIBITED in Core:
 *    - Content plugin types (ContentItem, ContentSourceConfig, etc.)
 *    - Router plugin types (RouteState, NavigationGuard, etc.)
 *    - Documentation plugin types
 *    - Any type that exists only because a plugin exists
 *
 * If removing a plugin would make a type meaningless, that type belongs to the plugin.
 * ═══════════════════════════════════════════════════════════════════════════════
 */
/**
 * Define a Zenith configuration with full type safety
 */
export function defineConfig(config) {
    return config;
}
