import { ConfigManager } from '../config/manager.js';
import { SecretsManager } from '../config/secrets.js';
import { ServiceRegistry } from '../config/service-registry.js';
import { SubscriptionManager } from '@pellux/goodvibes-sdk/platform/config/subscriptions';
import { AutomationDeliveryManager, AutomationManager } from '../automation/index.js';
import { ChannelPluginRegistry, ChannelPolicyManager, RouteBindingManager, SurfaceRegistry } from '../channels/index.js';
import { ChannelDeliveryRouter } from '../channels/delivery-router.js';
import { ApprovalBroker, GatewayMethodCatalog, SharedSessionBroker } from '../control-plane/index.js';
import { WatcherRegistry } from '../watchers/index.js';
import { ArtifactStore } from '@pellux/goodvibes-sdk/platform/artifacts/index';
import { KnowledgeService } from '../knowledge/index.js';
import { MediaProviderRegistry } from '../media/index.js';
import { MultimodalService } from '../multimodal/index.js';
import { AgentManager } from '../tools/agent/index.js';
import { AgentMessageBus } from '../agents/message-bus.js';
import { WrfcController } from '../agents/wrfc-controller.js';
import { AgentOrchestrator } from '../agents/orchestrator.js';
import { ArchetypeLoader } from '@pellux/goodvibes-sdk/platform/agents/archetypes';
import { ProcessManager } from '@pellux/goodvibes-sdk/platform/tools/shared/process-manager';
import { ModeManager } from '@pellux/goodvibes-sdk/platform/state/mode-manager';
import { FileUndoManager } from '@pellux/goodvibes-sdk/platform/state/file-undo';
import { MemoryRegistry } from '../state/memory-registry.js';
import { MemoryStore } from '../state/memory-store.js';
import type { RuntimeEventBus } from './events/index.js';
import type { DomainDispatch, RuntimeStore } from './store/index.js';
import { DistributedRuntimeManager } from '@pellux/goodvibes-sdk/platform/runtime/remote/distributed-runtime-manager';
import { RemoteRunnerRegistry, RemoteSupervisor } from './remote/index.js';
import { IntegrationHelperService } from './integration/helpers.js';
import { VoiceProviderRegistry, VoiceService } from '@pellux/goodvibes-sdk/platform/voice/index';
import { WebSearchProviderRegistry, WebSearchService } from '../web-search/index.js';
import { MemoryEmbeddingProviderRegistry } from '../state/memory-embeddings.js';
import { HookActivityTracker } from '@pellux/goodvibes-sdk/platform/hooks/activity';
import { HookDispatcher, type HookWorkbench } from '../hooks/index.js';
import { PluginManager } from '../plugins/manager.js';
import { BookmarkManager } from '@pellux/goodvibes-sdk/platform/bookmarks/manager';
import { ProfileManager } from '@pellux/goodvibes-sdk/platform/profiles/manager';
import { SessionManager } from '../sessions/manager.js';
import { CrossSessionTaskRegistry } from '@pellux/goodvibes-sdk/platform/sessions/orchestration/index';
import { ApiTokenAuditor } from '@pellux/goodvibes-sdk/platform/security/token-audit';
import { UserAuthManager } from '@pellux/goodvibes-sdk/platform/security/user-auth';
import { WebhookNotifier } from '../integrations/webhooks.js';
import { McpRegistry } from '../mcp/registry.js';
import { DeterministicReplayEngine } from '@pellux/goodvibes-sdk/platform/core/deterministic-replay';
import { ProviderOptimizer } from '../providers/optimizer.js';
import { ProviderRegistry } from '../providers/registry.js';
import { ProviderCapabilityRegistry } from '../providers/capabilities.js';
import { CacheHitTracker } from '@pellux/goodvibes-sdk/platform/providers/cache-strategy';
import { FavoritesStore } from '@pellux/goodvibes-sdk/platform/providers/favorites';
import { BenchmarkStore } from '@pellux/goodvibes-sdk/platform/providers/model-benchmarks';
import { ModelLimitsService } from '../providers/model-limits.js';
import { SessionMemoryStore } from '@pellux/goodvibes-sdk/platform/core/session-memory';
import { SessionLineageTracker } from '@pellux/goodvibes-sdk/platform/core/session-lineage';
import { SessionChangeTracker } from '@pellux/goodvibes-sdk/platform/sessions/change-tracker';
import { ExecutionPlanManager } from '@pellux/goodvibes-sdk/platform/core/execution-plan';
import { AdaptivePlanner } from '@pellux/goodvibes-sdk/platform/core/adaptive-planner';
import { IdempotencyStore } from '@pellux/goodvibes-sdk/platform/runtime/idempotency/index';
import { OverflowHandler } from '@pellux/goodvibes-sdk/platform/tools/shared/overflow';
import { ToolLLM } from '../config/tool-llm.js';
import { ComponentHealthMonitor } from '@pellux/goodvibes-sdk/platform/runtime/perf/component-health-monitor';
import { WorktreeRegistry } from './worktree/registry.js';
import { SandboxSessionRegistry } from './sandbox/session-registry.js';
import { type ShellPathService } from '@pellux/goodvibes-sdk/platform/runtime/shell-paths';
import type { FeatureFlagManager } from '@pellux/goodvibes-sdk/platform/runtime/feature-flags/index';
import { PolicyRuntimeState } from './permissions/policy-runtime.js';
import { type KeybindingsManagerLike, type PanelManagerLike } from './host-ui.js';
import { type WorkflowServices } from '@pellux/goodvibes-sdk/platform/tools/workflow/index';
export interface RuntimeServicesOptions {
    readonly runtimeBus: RuntimeEventBus;
    readonly runtimeStore: RuntimeStore;
    readonly configManager: ConfigManager;
    readonly surfaceRoot: string;
    readonly featureFlags?: FeatureFlagManager;
    readonly getConversationTitle?: () => string | undefined;
    readonly workingDir: string;
    readonly homeDirectory: string;
    readonly panelManager?: PanelManagerLike;
    readonly keybindingsManager?: KeybindingsManagerLike;
}
export interface RuntimeServices {
    readonly workingDirectory: string;
    readonly homeDirectory: string;
    readonly shellPaths: ShellPathService;
    readonly configManager: ConfigManager;
    readonly featureFlags: FeatureFlagManager;
    readonly runtimeBus: RuntimeEventBus;
    readonly runtimeStore: RuntimeStore;
    readonly runtimeDispatch: DomainDispatch;
    readonly panelManager: PanelManagerLike;
    readonly keybindingsManager: KeybindingsManagerLike;
    readonly routeBindings: RouteBindingManager;
    readonly surfaceRegistry: SurfaceRegistry;
    readonly channelPlugins: ChannelPluginRegistry;
    readonly channelDeliveryRouter: ChannelDeliveryRouter;
    readonly watcherRegistry: WatcherRegistry;
    readonly approvalBroker: ApprovalBroker;
    readonly sessionBroker: SharedSessionBroker;
    readonly deliveryManager: AutomationDeliveryManager;
    readonly automationManager: AutomationManager;
    readonly gatewayMethods: GatewayMethodCatalog;
    readonly artifactStore: ArtifactStore;
    readonly knowledgeService: KnowledgeService;
    readonly memoryStore: MemoryStore;
    readonly memoryRegistry: MemoryRegistry;
    readonly serviceRegistry: ServiceRegistry;
    readonly secretsManager: SecretsManager;
    readonly subscriptionManager: SubscriptionManager;
    readonly localUserAuthManager: UserAuthManager;
    readonly profileManager: ProfileManager;
    readonly bookmarkManager: BookmarkManager;
    readonly sessionManager: SessionManager;
    readonly sessionOrchestration: CrossSessionTaskRegistry;
    readonly hookDispatcher: HookDispatcher;
    readonly hookActivityTracker: HookActivityTracker;
    readonly hookWorkbench: HookWorkbench;
    readonly pluginManager: PluginManager;
    readonly workflow: WorkflowServices;
    readonly voiceProviders: VoiceProviderRegistry;
    readonly voiceService: VoiceService;
    readonly webSearchProviders: WebSearchProviderRegistry;
    readonly webSearchService: WebSearchService;
    readonly mediaProviders: MediaProviderRegistry;
    readonly multimodalService: MultimodalService;
    readonly memoryEmbeddingRegistry: MemoryEmbeddingProviderRegistry;
    readonly channelPolicy: ChannelPolicyManager;
    readonly mcpRegistry: McpRegistry;
    readonly tokenAuditor: ApiTokenAuditor;
    readonly componentHealthMonitor: ComponentHealthMonitor;
    readonly worktreeRegistry: WorktreeRegistry;
    readonly sandboxSessionRegistry: SandboxSessionRegistry;
    readonly webhookNotifier: WebhookNotifier;
    readonly replayEngine: DeterministicReplayEngine;
    readonly providerOptimizer: ProviderOptimizer;
    readonly providerCapabilityRegistry: ProviderCapabilityRegistry;
    readonly cacheHitTracker: CacheHitTracker;
    readonly favoritesStore: FavoritesStore;
    readonly benchmarkStore: BenchmarkStore;
    readonly modelLimitsService: ModelLimitsService;
    readonly providerRegistry: ProviderRegistry;
    readonly toolLLM: ToolLLM;
    readonly distributedRuntime: DistributedRuntimeManager;
    readonly remoteRunnerRegistry: RemoteRunnerRegistry;
    readonly remoteSupervisor: RemoteSupervisor;
    readonly sessionMemoryStore: SessionMemoryStore;
    readonly sessionLineageTracker: SessionLineageTracker;
    readonly sessionChangeTracker: SessionChangeTracker;
    readonly planManager: ExecutionPlanManager;
    readonly adaptivePlanner: AdaptivePlanner;
    readonly idempotencyStore: IdempotencyStore;
    readonly overflowHandler: OverflowHandler;
    readonly policyRuntimeState: PolicyRuntimeState;
    readonly archetypeLoader: ArchetypeLoader;
    readonly agentManager: AgentManager;
    readonly agentMessageBus: AgentMessageBus;
    readonly agentOrchestrator: AgentOrchestrator;
    readonly wrfcController: WrfcController;
    readonly processManager: ProcessManager;
    readonly modeManager: ModeManager;
    readonly fileUndoManager: FileUndoManager;
    readonly integrationHelpers: IntegrationHelperService;
}
export declare function createRuntimeServices(options: RuntimeServicesOptions): RuntimeServices;
//# sourceMappingURL=services.d.ts.map