/**
 * OpenClaw-inspired Modules
 *
 * This module exports all the advanced features inspired by OpenClaw,
 * the most advanced LLM client project on GitHub.
 *
 * Features included:
 * - Tool Policy System (allow/deny patterns with hierarchy)
 * - Tool Lifecycle Hooks (before/after tool calls)
 * - Smart Context Compaction (provider-aware, multi-strategy)
 * - Retry Fallback Engine (provider rotation, auto-compaction)
 * - Semantic Memory Search (2-step search + retrieve)
 * - Plugin Conflict Detection (allowlist, metadata tracking)
 */
import { ToolPolicyEngine, getToolPolicyEngine as _getToolPolicyEngine, resetToolPolicyEngine as _resetToolPolicyEngine, isToolAllowed, filterToolsByPolicy, type ToolPolicyConfig, type PolicyHierarchy, type PolicyDecision } from '../security/tool-policy.js';
export { ToolPolicyEngine, _getToolPolicyEngine as getToolPolicyEngine, _resetToolPolicyEngine as resetToolPolicyEngine, isToolAllowed, filterToolsByPolicy, type ToolPolicyConfig, type PolicyHierarchy, type PolicyDecision, };
import { ToolLifecycleHooks, getToolLifecycleHooks as _getToolLifecycleHooks, resetToolLifecycleHooks as _resetToolLifecycleHooks, onBeforeToolCall, onAfterToolCall, onToolResultPersist, createLoggingHook, createRateLimitHook, createSanitizationHook, type HookEvent, type HookContext, type ToolCallContext, type ToolResultContext, type BeforeToolCallResult, type HookHandler } from '../hooks/tool-lifecycle-hooks.js';
export { ToolLifecycleHooks, _getToolLifecycleHooks as getToolLifecycleHooks, _resetToolLifecycleHooks as resetToolLifecycleHooks, onBeforeToolCall, onAfterToolCall, onToolResultPersist, createLoggingHook, createRateLimitHook, createSanitizationHook, type HookEvent, type HookContext, type ToolCallContext, type ToolResultContext, type BeforeToolCallResult, type HookHandler, };
import { SmartCompactionEngine, getSmartCompactionEngine as _getSmartCompactionEngine, resetSmartCompactionEngine as _resetSmartCompactionEngine, compactMessages, needsCompaction, type Message, type Provider, type ChannelType, type CompactionConfig, type CompactionResult, type CompactionStrategy } from '../context/smart-compaction.js';
export { SmartCompactionEngine, _getSmartCompactionEngine as getSmartCompactionEngine, _resetSmartCompactionEngine as resetSmartCompactionEngine, compactMessages, needsCompaction, type Message, type Provider, type ChannelType, type CompactionConfig, type CompactionResult, type CompactionStrategy, };
import { RetryFallbackEngine, getRetryFallbackEngine as _getRetryFallbackEngine, resetRetryFallbackEngine as _resetRetryFallbackEngine, classifyError, withRetry, type AuthProfile, type ExecutionConfig, type ErrorType, type ClassifiedError, type ExecutionAttempt, type ExecutionResult } from '../agent/execution/retry-fallback.js';
export { RetryFallbackEngine, _getRetryFallbackEngine as getRetryFallbackEngine, _resetRetryFallbackEngine as resetRetryFallbackEngine, classifyError, withRetry, type AuthProfile, type ExecutionConfig, type ErrorType, type ClassifiedError, type ExecutionAttempt, type ExecutionResult, };
import { SemanticMemorySearch, getSemanticMemorySearch as _getSemanticMemorySearch, resetSemanticMemorySearch as _resetSemanticMemorySearch, searchAndRetrieve, type MemoryEntry, type SearchResult, type SearchOptions, type RetrievalOptions, type RetrievalResult, type MemorySearchConfig } from '../memory/semantic-memory-search.js';
export { SemanticMemorySearch, _getSemanticMemorySearch as getSemanticMemorySearch, _resetSemanticMemorySearch as resetSemanticMemorySearch, searchAndRetrieve, type MemoryEntry, type SearchResult, type SearchOptions, type RetrievalOptions, type RetrievalResult, type MemorySearchConfig, };
import { PluginConflictDetector, getPluginConflictDetector as _getPluginConflictDetector, resetPluginConflictDetector as _resetPluginConflictDetector, registerPlugins, type Plugin, type PluginTool, type PluginContext, type PluginToolMeta, type ConflictReport, type ConflictInfo, type AllowlistConfig } from '../plugins/conflict-detection.js';
export { PluginConflictDetector, _getPluginConflictDetector as getPluginConflictDetector, _resetPluginConflictDetector as resetPluginConflictDetector, registerPlugins, type Plugin, type PluginTool, type PluginContext, type PluginToolMeta, type ConflictReport, type ConflictInfo, type AllowlistConfig, };
/**
 * Initialize all OpenClaw modules with default configuration
 */
export declare function initializeOpenClawModules(config?: {
    builtInTools?: string[];
    policyHierarchy?: PolicyHierarchy;
    compactionConfig?: CompactionConfig;
    authProfiles?: AuthProfile[];
    memoryConfig?: MemorySearchConfig;
    allowlist?: AllowlistConfig;
}): void;
/**
 * Reset all OpenClaw module singletons
 */
export declare function resetAllOpenClawModules(): void;
