/**
 * Core Layer - AGI CLI Core Systems
 *
 * This module exports the core functionality of AGI CLI:
 * - AGI Core: Central intelligence and task planning
 * - Self-Upgrade: Automatic version updates with session continuity
 * - Hot-Reload: Seamless version transitions
 * - Episodic Memory: Cross-session learning
 * - Update Checker: Version checking utilities
 *
 * Usage:
 * - AGI Core: import { getAGI, AGICore } from './agiCore.js';
 * - Self-Upgrade: import { getSelfUpgrade, upgradeToLatest } from './selfUpgrade.js';
 * - Hot-Reload: import { getHotReload, checkAndReload } from './hotReload.js';
 */
export { AGICore, getAGI, resetAGI, type AGIContext, type AGIMemory, type AGITask, type LearnedPattern, type OperationRecord, type ProjectKnowledge, type PromptAnalysis, type PromptIntent, type PromptCategory, type TaskCategory, type TaskResult, type ToolCallSpec, } from './agiCore.js';
export { SelfUpgrade, getSelfUpgrade, resetSelfUpgrade, upgradeToLatest, upgradeAndVerify, saveUpgradeState, resumeAfterUpgrade, type SelfUpgradeConfig, type UpgradeSessionState, type RLUpgradeContext, type BuildState, type TestState, type UpgradeResult, type VersionInfo, type UpgradeEventType, type UpgradeEvent, } from './selfUpgrade.js';
export { HotReload, getHotReload, resetHotReload, checkAndReload, enableAutoCheck, disableAutoCheck, type HotReloadConfig, type HotReloadState, type HotReloadEventType, type HotReloadEvent, type ReloadStrategy, } from './hotReload.js';
export { checkForUpdates, maybeAutoUpdate, formatUpdateNotification, formatUpdateBanner, getUpdateDecision, shouldShowUpdateNotification, readAutoUpdateState, performBackgroundUpdate, performUpdate, updateAndContinue, installPackageVersion, runNpmInstall, saveSessionState, loadSessionState, clearSessionState, hasPendingSession, type UpdateInfo, type AutoUpdateResult, type AutoUpdateState, type SessionState, } from './updateChecker.js';
export { getEpisodicMemory, createEpisodicMemory, type EpisodicMemory, type Episode, type LearnedApproach, type MemorySearchResult, type EpisodeCategory, } from './episodicMemory.js';
export { loadModelPreference, saveModelPreference, loadSessionPreferences, saveSessionPreferences, loadFeatureFlags, saveFeatureFlags, type SessionPreferences, type FeatureFlags, } from './preferences.js';
export { runDualTournament, DEFAULT_HUMAN_REWARD_WEIGHTS, type TournamentCandidate, type TournamentOutcome, type HumanRewardWeights, } from './dualTournament.js';
export { AntiTerminationProtection, initializeProtection, getProtection, enterCriticalSection, exitCriticalSection, authorizedShutdown, getProtectionStatus, type ProtectionStatus, type AntiTerminationConfig, } from './antiTermination.js';
export { FlowProtection, initializeFlowProtection, getFlowProtection, sanitizePrompt, sanitizeForDisplay, type InjectionAnalysis, type InjectionType, type FlowProtectionConfig, } from './flowProtection.js';
export { InputProtection, initializeInputProtection, getInputProtection, validateChatInput, validatePromptSubmit, type InputValidation, type InputAttackType, type InputProtectionConfig, } from './inputProtection.js';
//# sourceMappingURL=index.d.ts.map