import { type Server } from "node:http"; import type { MessagingBot, PlatformName } from "../../types.js"; import type { SandboxConfig } from "../../sandbox/types.js"; import { type EventScheduleSink } from "../../events/index.js"; import type { VaultManager } from "../../vault/types.js"; import type { AdminRuntimeBridge } from "./admin/types.js"; import type { InMemoryAdminTokenStore } from "./admin/portal.js"; import type { InMemoryLinkTokenStore } from "./login/portal.js"; import type { NotifyFn } from "./login/types.js"; import type { SessionViewInteractiveOptions } from "./session-view/types.js"; import type { InMemorySessionViewTokenStore } from "./session-view/portal.js"; import type { Workspace } from "../../office/types.js"; import type { GithubWebhookOptions } from "../github/types.js"; interface StartWebServerOptions { port: number; host: string; linkTokenStore: InMemoryLinkTokenStore; vaultManager: VaultManager; notify: NotifyFn; sessionViewTokenStore?: InMemorySessionViewTokenStore; sessionViewInteractive?: SessionViewInteractiveOptions; adminOptions?: { adminTokenStore: InMemoryAdminTokenStore; workspace: Workspace; runtime?: AdminRuntimeBridge; sandbox?: SandboxConfig; botsByPlatform?: Partial>; eventScheduler?: () => EventScheduleSink | undefined; }; githubWebhook?: GithubWebhookOptions; } export declare function startWebServer(options: StartWebServerOptions): Server; export declare function closeWebServer(server: Server, graceMs: number): Promise; export {}; //# sourceMappingURL=server.d.ts.map