json-crdt-server
Version:
JSON CRDT server and syncing local-first browser client
3 lines (2 loc) • 2.99 kB
TypeScript
import type { RouteDeps, Router, RouterBase } from '../types';
export declare const presence: (d: RouteDeps) => <R extends RouterBase>(r: Router<R>) => import("@jsonjoy.com/json-type/lib/value/ObjectValue").ObjectValue<import("@jsonjoy.com/json-type").ObjectType<[...import("@jsonjoy.com/json-type/lib/value/ObjectValue").UnObjectType<R>, import("@jsonjoy.com/json-type").ObjectFieldType<"presence.listen", import("@jsonjoy.com/json-type").FunctionStreamingType<import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"room", import("@jsonjoy.com/json-type").StringType>]>, import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"entries", import("@jsonjoy.com/json-type").ArrayType<import("@jsonjoy.com/json-type").RefType<import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"id", import("@jsonjoy.com/json-type").StringType>, import("@jsonjoy.com/json-type").ObjectFieldType<"lastSeen", import("@jsonjoy.com/json-type").NumberType>, import("@jsonjoy.com/json-type").ObjectFieldType<"validUntil", import("@jsonjoy.com/json-type").NumberType>, import("@jsonjoy.com/json-type").ObjectFieldType<"data", import("@jsonjoy.com/json-type").ObjectType<[]>>]>>>>, import("@jsonjoy.com/json-type").ObjectFieldType<"time", import("@jsonjoy.com/json-type").NumberType>]>>>, import("@jsonjoy.com/json-type").ObjectFieldType<"presence.remove", import("@jsonjoy.com/json-type").FunctionType<import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"room", import("@jsonjoy.com/json-type").StringType>, import("@jsonjoy.com/json-type").ObjectFieldType<"id", import("@jsonjoy.com/json-type").StringType>]>, import("@jsonjoy.com/json-type").ObjectType<[]>>>, import("@jsonjoy.com/json-type").ObjectFieldType<"presence.update", import("@jsonjoy.com/json-type").FunctionType<import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"room", import("@jsonjoy.com/json-type").StringType>, import("@jsonjoy.com/json-type").ObjectFieldType<"id", import("@jsonjoy.com/json-type").StringType>, import("@jsonjoy.com/json-type").ObjectFieldType<"data", import("@jsonjoy.com/json-type").AnyType>]>, import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"entry", import("@jsonjoy.com/json-type").RefType<import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"id", import("@jsonjoy.com/json-type").StringType>, import("@jsonjoy.com/json-type").ObjectFieldType<"lastSeen", import("@jsonjoy.com/json-type").NumberType>, import("@jsonjoy.com/json-type").ObjectFieldType<"validUntil", import("@jsonjoy.com/json-type").NumberType>, import("@jsonjoy.com/json-type").ObjectFieldType<"data", import("@jsonjoy.com/json-type").ObjectType<[]>>]>>>, import("@jsonjoy.com/json-type").ObjectFieldType<"time", import("@jsonjoy.com/json-type").NumberType>]>>>]>>;