import type { Server as HttpServer } from "node:http"; import type * as Y from "yjs"; import { Server } from "@hocuspocus/server"; export type CollabAuthorizer = (params: { canvasId: string; organizationId: string; token: string; }) => Promise; export type CollabDocumentSeeder = (params: { canvasId: string; document: Y.Doc; organizationId: string; }) => Promise; export type CollabServerOptions = { authorize: CollabAuthorizer; port?: number; seedDocument?: CollabDocumentSeeder; }; export declare function createCollabServer(options: CollabServerOptions): Server; export declare function attachCollabToServer(server: HttpServer, options: CollabServerOptions & { path?: string; }): () => Promise;