UNPKG

@mininjin/y-durable-objects

Version:

Cloudflare Workers Durable Objects for Yjs

22 lines (21 loc) 1.03 kB
import { DurableObject } from "cloudflare:workers"; import { WSSharedDoc } from "./ws-shared-doc"; import { YDurableObjectPersistence, YDurableObjectPersistenceOptions } from "./persistence"; export type YDurableObjectOptions = YDurableObjectPersistenceOptions; export declare class YDurableObject<T = any> extends DurableObject<T> { readonly ctx: DurableObjectState; readonly env: T; readonly doc: WSSharedDoc<WebSocket>; readonly persistence: YDurableObjectPersistence; constructor(ctx: DurableObjectState, env: T, options?: YDurableObjectOptions); fetch(_request: Request): Promise<Response>; webSocketMessage(ws: WebSocket, message: string | ArrayBuffer): Promise<void>; webSocketError(ws: WebSocket): Promise<void>; webSocketClose(ws: WebSocket): Promise<void>; getYDoc(): Promise<import("yjs").Doc>; onYDocUpdate(): void | Promise<void>; onAwarenessUpdate(): void | Promise<void>; private connect; private disconnect; } export { YDurableObjectPersistence, WSSharedDoc };