import type { AppMigrationManager } from './app-migration.js'; import type { TeamAppOperation } from './team-app-contract.js'; import type { RecordAppOperation } from './record-app-contract.js'; import type { DshAccountSessions } from './dsh-remote/account-sessions.js'; import type { IncomingMessage, ServerResponse } from 'node:http'; import { ArkmeService } from './arkme-service.js'; import { ArkmePluginUpdateManager } from './plugin-update.js'; import type { ArkmePluginRequest } from './types.js'; import type { ArkmeExtensionManager } from './extensions/manager.js'; import type { ArkmeExtensionInstallTasks } from './extensions/install-tasks.js'; import type { ArkmeOwnedExtensionInventory } from './extensions/owned-inventory.js'; import type { ArkmeDesktopExtensionQuarantine } from './extensions/desktop-quarantine.js'; import type { DshRemoteHostFacade } from './dsh-remote/types.js'; import type { ManagedOpenApiMcpController } from './openapi-mcp/controller.js'; import type { TeamServicePort } from './services/team-service.js'; import type { TeamCodexService } from './team-codex-service.js'; export interface ArkmeHostApiOptions { expectedPort: number; allowNonLoopback: boolean; migrationManager?: AppMigrationManager; updateManager?: Pick; extensionManager?: () => ArkmeExtensionManager | undefined; extensionInstallTasks?: () => ArkmeExtensionInstallTasks | undefined; ownedExtensionInventory?: () => ArkmeOwnedExtensionInventory | undefined; accountSessions?: () => DshAccountSessions | undefined; remoteHost?: () => DshRemoteHostFacade | undefined; remoteUnavailableReason?: () => string; desktopQuarantine?: Pick; openApiMcpController?: Pick; teamService?: TeamServicePort; teamCodex?: TeamCodexService; } export declare function createArkmeHostApi(service: ArkmeService, options: ArkmeHostApiOptions): (req: IncomingMessage, res: ServerResponse) => Promise; export declare function dispatchArkmeHostOperation(service: ArkmeService, operation: ArkmePluginRequest['operation'] | TeamAppOperation | RecordAppOperation, params: Record, updateManager?: Pick, extensionManager?: ArkmeExtensionManager, extensionInstallTasks?: ArkmeExtensionInstallTasks, ownedExtensionInventory?: ArkmeOwnedExtensionInventory, requestSignal?: AbortSignal, remoteHost?: DshRemoteHostFacade, desktopQuarantine?: Pick, openApiMcpController?: Pick, teamService?: TeamServicePort, remoteUnavailableReason?: () => string, accountSessions?: DshAccountSessions, teamCodex?: TeamCodexService, migrationManager?: AppMigrationManager): Promise; //# sourceMappingURL=host-api.d.ts.map