@liveblocks/core 3.20.0-exp6 → 3.20.0-perm2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -64,6 +64,76 @@ type DistributiveRelax<T, Ks extends string | number | symbol> = T extends any ?
64
64
  [K in Exclude<Ks, keyof T>]?: never;
65
65
  }> : never;
66
66
 
67
+ declare const Permission: {
68
+ /**
69
+ * Default permission for a room
70
+ */
71
+ readonly RoomWrite: "room:write";
72
+ readonly RoomRead: "room:read";
73
+ /**
74
+ * Presence (LiveRoom Websocket access)
75
+ */
76
+ readonly RoomPresenceRead: "room:presence:read";
77
+ readonly RoomPresenceNone: "room:presence:none";
78
+ /**
79
+ * Storage
80
+ */
81
+ readonly RoomStorageRead: "room:storage:read";
82
+ readonly RoomStorageWrite: "room:storage:write";
83
+ readonly RoomStorageNone: "room:storage:none";
84
+ /**
85
+ * Comments
86
+ */
87
+ readonly RoomCommentsWrite: "room:comments:write";
88
+ readonly RoomCommentsRead: "room:comments:read";
89
+ readonly RoomCommentsNone: "room:comments:none";
90
+ /**
91
+ * Feeds
92
+ */
93
+ readonly RoomFeedsRead: "room:feeds:read";
94
+ readonly RoomFeedsWrite: "room:feeds:write";
95
+ readonly RoomFeedsNone: "room:feeds:none";
96
+ /**
97
+ * Legacy
98
+ */
99
+ readonly LegacyRoomPresenceWrite: "room:presence:write";
100
+ readonly LegacyCommentsWrite: "comments:write";
101
+ readonly LegacyCommentsRead: "comments:read";
102
+ readonly LegacyFeedsWrite: "feeds:write";
103
+ };
104
+ type Permission = (typeof Permission)[keyof typeof Permission];
105
+ type AccessLevel = "write" | "read" | "none";
106
+ type RequiredAccessLevel = "read" | "write";
107
+ type PermissionCapabilities = {
108
+ creation: AccessLevel;
109
+ presence: AccessLevel;
110
+ storage: AccessLevel;
111
+ comments: AccessLevel;
112
+ feeds: AccessLevel;
113
+ personal: "write";
114
+ };
115
+ type PermissionResources = keyof PermissionCapabilities;
116
+ declare function permissionCapabilitiesFromScopes(scopes: readonly string[]): PermissionCapabilities;
117
+ declare function hasPermissionCapability(scopes: readonly string[], resource: PermissionResources, requiredAccess: RequiredAccessLevel): boolean;
118
+ declare function hasPermissionCapabilityAccess(capabilities: Partial<PermissionCapabilities>, resource: PermissionResources, requiredAccess: RequiredAccessLevel): boolean;
119
+
120
+ type RoomPermission = Permission[];
121
+ type RoomPermissionObject = {
122
+ default?: "read" | "write";
123
+ presence?: "read" | "none";
124
+ storage?: "read" | "write" | "none";
125
+ comments?: "read" | "write" | "none";
126
+ feeds?: "read" | "write" | "none";
127
+ };
128
+ type RoomPermissionInput = readonly Permission[] | RoomPermissionObject;
129
+ type RoomAccesses = Record<string, RoomPermission>;
130
+ type RoomAccessesInput = Record<string, RoomPermissionInput>;
131
+ type RoomAccessesUpdateInput = Record<string, RoomPermissionInput | null>;
132
+ declare function normalizeRoomPermissionInput(input: RoomPermissionInput): RoomPermission;
133
+ declare function normalizeRoomAccessesInput(input: RoomAccessesInput | undefined): RoomAccesses | undefined;
134
+ declare function normalizeRoomAccessesUpdateInput(input: RoomAccessesUpdateInput | undefined): Record<string, RoomPermission | null> | undefined;
135
+ declare function getRoomPermissionConflicts(permission: Permission): readonly Permission[];
136
+
67
137
  type CustomAuthenticationResult = Relax<{
68
138
  token: string;
69
139
  } | {
@@ -132,15 +202,6 @@ type BaseUserMeta = {
132
202
  info?: IUserInfo;
133
203
  };
134
204
 
135
- declare enum Permission {
136
- Read = "room:read",
137
- Write = "room:write",
138
- PresenceWrite = "room:presence:write",
139
- CommentsWrite = "comments:write",
140
- CommentsRead = "comments:read",
141
- FeedsWrite = "feeds:write"
142
- }
143
-
144
205
  type RenameDataField<T, TFieldName extends string> = T extends any ? {
145
206
  [K in keyof T as K extends "data" ? TFieldName : K]: T[K];
146
207
  } : never;
@@ -427,8 +488,6 @@ declare const OpCode: Readonly<{
427
488
  DELETE_OBJECT_KEY: 6;
428
489
  CREATE_MAP: 7;
429
490
  CREATE_REGISTER: 8;
430
- CREATE_TEXT: 9;
431
- UPDATE_TEXT: 10;
432
491
  }>;
433
492
  declare namespace OpCode {
434
493
  type INIT = typeof OpCode.INIT;
@@ -440,33 +499,13 @@ declare namespace OpCode {
440
499
  type DELETE_OBJECT_KEY = typeof OpCode.DELETE_OBJECT_KEY;
441
500
  type CREATE_MAP = typeof OpCode.CREATE_MAP;
442
501
  type CREATE_REGISTER = typeof OpCode.CREATE_REGISTER;
443
- type CREATE_TEXT = typeof OpCode.CREATE_TEXT;
444
- type UPDATE_TEXT = typeof OpCode.UPDATE_TEXT;
445
502
  }
446
- type TextAttributes = JsonObject;
447
- type LiveTextSegment = [text: string] | [text: string, attributes: TextAttributes];
448
- type LiveTextData = LiveTextSegment[];
449
- type TextOperation = {
450
- type: "insert";
451
- index: number;
452
- text: string;
453
- attributes?: TextAttributes;
454
- } | {
455
- type: "delete";
456
- index: number;
457
- length: number;
458
- } | {
459
- type: "format";
460
- index: number;
461
- length: number;
462
- attributes: JsonObject;
463
- };
464
503
  /**
465
504
  * These operations are the payload for {@link UpdateStorageServerMsg} messages
466
505
  * only.
467
506
  */
468
- type Op = CreateOp | UpdateObjectOp | UpdateTextOp | DeleteCrdtOp | SetParentKeyOp | DeleteObjectKeyOp;
469
- type CreateOp = CreateObjectOp | CreateRegisterOp | CreateMapOp | CreateListOp | CreateTextOp;
507
+ type Op = CreateOp | UpdateObjectOp | DeleteCrdtOp | SetParentKeyOp | DeleteObjectKeyOp;
508
+ type CreateOp = CreateObjectOp | CreateRegisterOp | CreateMapOp | CreateListOp;
470
509
  type UpdateObjectOp = {
471
510
  readonly opId?: string;
472
511
  readonly id: string;
@@ -511,26 +550,6 @@ type CreateRegisterOp = {
511
550
  readonly intent?: "set" | "push";
512
551
  readonly deletedId?: string;
513
552
  };
514
- type CreateTextOp = {
515
- readonly opId?: string;
516
- readonly id: string;
517
- readonly type: OpCode.CREATE_TEXT;
518
- readonly parentId: string;
519
- readonly parentKey: string;
520
- readonly data: LiveTextData;
521
- readonly version: number;
522
- readonly intent?: "set" | "push";
523
- readonly deletedId?: string;
524
- };
525
- type UpdateTextOp = {
526
- readonly opId?: string;
527
- readonly id: string;
528
- readonly type: OpCode.UPDATE_TEXT;
529
- readonly baseVersion: number;
530
- readonly version?: number;
531
- readonly ops: TextOperation[];
532
- readonly metadata?: JsonObject;
533
- };
534
553
  type DeleteCrdtOp = {
535
554
  readonly opId?: string;
536
555
  readonly id: string;
@@ -659,17 +678,15 @@ declare const CrdtType: Readonly<{
659
678
  LIST: 1;
660
679
  MAP: 2;
661
680
  REGISTER: 3;
662
- TEXT: 4;
663
681
  }>;
664
682
  declare namespace CrdtType {
665
683
  type OBJECT = typeof CrdtType.OBJECT;
666
684
  type LIST = typeof CrdtType.LIST;
667
685
  type MAP = typeof CrdtType.MAP;
668
686
  type REGISTER = typeof CrdtType.REGISTER;
669
- type TEXT = typeof CrdtType.TEXT;
670
687
  }
671
688
  type SerializedCrdt = SerializedRootObject | SerializedChild;
672
- type SerializedChild = SerializedObject | SerializedList | SerializedMap | SerializedRegister | SerializedText;
689
+ type SerializedChild = SerializedObject | SerializedList | SerializedMap | SerializedRegister;
673
690
  type SerializedRootObject = {
674
691
  readonly type: CrdtType.OBJECT;
675
692
  readonly data: JsonObject;
@@ -698,21 +715,13 @@ type SerializedRegister = {
698
715
  readonly parentKey: string;
699
716
  readonly data: Json;
700
717
  };
701
- type SerializedText = {
702
- readonly type: CrdtType.TEXT;
703
- readonly parentId: string;
704
- readonly parentKey: string;
705
- readonly data: LiveTextData;
706
- readonly version: number;
707
- };
708
718
  type StorageNode = RootStorageNode | ChildStorageNode;
709
- type ChildStorageNode = ObjectStorageNode | ListStorageNode | MapStorageNode | RegisterStorageNode | TextStorageNode;
719
+ type ChildStorageNode = ObjectStorageNode | ListStorageNode | MapStorageNode | RegisterStorageNode;
710
720
  type RootStorageNode = [id: "root", value: SerializedRootObject];
711
721
  type ObjectStorageNode = [id: string, value: SerializedObject];
712
722
  type ListStorageNode = [id: string, value: SerializedList];
713
723
  type MapStorageNode = [id: string, value: SerializedMap];
714
724
  type RegisterStorageNode = [id: string, value: SerializedRegister];
715
- type TextStorageNode = [id: string, value: SerializedText];
716
725
  type NodeMap = Map<string, SerializedCrdt>;
717
726
  type NodeStream = Iterable<StorageNode>;
718
727
  declare function isRootStorageNode(node: StorageNode): node is RootStorageNode;
@@ -720,9 +729,8 @@ declare function isObjectStorageNode(node: StorageNode): node is RootStorageNode
720
729
  declare function isListStorageNode(node: StorageNode): node is ListStorageNode;
721
730
  declare function isMapStorageNode(node: StorageNode): node is MapStorageNode;
722
731
  declare function isRegisterStorageNode(node: StorageNode): node is RegisterStorageNode;
723
- declare function isTextStorageNode(node: StorageNode): node is TextStorageNode;
724
732
  type CompactNode = CompactRootNode | CompactChildNode;
725
- type CompactChildNode = CompactObjectNode | CompactListNode | CompactMapNode | CompactRegisterNode | CompactTextNode;
733
+ type CompactChildNode = CompactObjectNode | CompactListNode | CompactMapNode | CompactRegisterNode;
726
734
  type CompactRootNode = readonly [id: "root", data: JsonObject];
727
735
  type CompactObjectNode = readonly [
728
736
  id: string,
@@ -750,14 +758,6 @@ type CompactRegisterNode = readonly [
750
758
  parentKey: string,
751
759
  data: Json
752
760
  ];
753
- type CompactTextNode = readonly [
754
- id: string,
755
- type: CrdtType.TEXT,
756
- parentId: string,
757
- parentKey: string,
758
- data: LiveTextData,
759
- version: number
760
- ];
761
761
  declare function compactNodesToNodeStream(compactNodes: CompactNode[]): NodeStream;
762
762
  declare function nodeStreamToCompactNodes(nodes: NodeStream): Iterable<CompactNode>;
763
763
 
@@ -923,59 +923,16 @@ declare class LiveObject<O extends LsonObject> extends AbstractCrdt {
923
923
  clone(): LiveObject<O>;
924
924
  }
925
925
 
926
- declare function applyLiveTextOperations(data: LiveTextData, ops: readonly TextOperation[]): LiveTextData;
927
-
928
- type LiveTextAttributes = TextAttributes;
929
- type LiveTextAttributesPatch = JsonObject;
930
-
931
- type LiveTextChange = {
932
- readonly type: "insert";
933
- readonly index: number;
934
- readonly text: string;
935
- readonly attributes?: TextAttributes;
936
- } | {
937
- readonly type: "delete";
938
- readonly index: number;
939
- readonly length: number;
940
- readonly deletedText: string;
941
- } | {
942
- readonly type: "format";
943
- readonly index: number;
944
- readonly length: number;
945
- readonly attributes: LiveTextAttributesPatch;
946
- };
947
- type LiveTextUpdates = {
948
- type: "LiveText";
949
- node: LiveText;
950
- version: number;
951
- updates: LiveTextChange[];
952
- };
953
-
954
- declare class LiveText extends AbstractCrdt {
955
- #private;
956
- constructor(textOrData?: string | LiveTextData, version?: number);
957
- get version(): number;
958
- get length(): number;
959
- insert(index: number, text: string, attributes?: TextAttributes): void;
960
- delete(index: number, length: number): void;
961
- replace(index: number, length: number, text: string, attributes?: TextAttributes): void;
962
- format(index: number, length: number, attributes: LiveTextAttributesPatch): void;
963
- toString(): string;
964
- toJSON(): LiveTextData;
965
- clone(): LiveText;
966
- }
967
-
968
926
  type StorageCallback = (updates: StorageUpdate[]) => void;
969
927
  type LiveMapUpdate = LiveMapUpdates<string, Lson>;
970
928
  type LiveObjectUpdate = LiveObjectUpdates<LsonObject>;
971
929
  type LiveListUpdate = LiveListUpdates<Lson>;
972
- type LiveTextUpdate = LiveTextUpdates;
973
930
  /**
974
931
  * The payload of notifications sent (in-client) when LiveStructures change.
975
932
  * Messages of this kind are not originating from the network, but are 100%
976
933
  * in-client.
977
934
  */
978
- type StorageUpdate = LiveMapUpdate | LiveObjectUpdate | LiveListUpdate | LiveTextUpdate;
935
+ type StorageUpdate = LiveMapUpdate | LiveObjectUpdate | LiveListUpdate;
979
936
 
980
937
  /**
981
938
  * Read-only query surface over {@link UnacknowledgedOps}, handed to CRDTs so
@@ -1225,7 +1182,7 @@ declare class LiveRegister<TValue extends Json> extends AbstractCrdt {
1225
1182
  clone(): TValue;
1226
1183
  }
1227
1184
 
1228
- type LiveStructure = LiveObject<LsonObject> | LiveList<Lson> | LiveMap<string, Lson> | LiveText;
1185
+ type LiveStructure = LiveObject<LsonObject> | LiveList<Lson> | LiveMap<string, Lson>;
1229
1186
  /**
1230
1187
  * Think of Lson as a sibling of the Json data tree, except that the nested
1231
1188
  * data structure can contain a mix of Json values and LiveStructure instances.
@@ -1261,7 +1218,7 @@ type ToJson<L extends Lson | LsonObject> = L extends LiveList<infer I extends Ls
1261
1218
  readonly [K in keyof O]: ToJson<Exclude<O[K], undefined>> | (undefined extends O[K] ? undefined : never);
1262
1219
  } : L extends LiveMap<infer KS extends string, infer V extends Lson> ? Lson extends V ? ReadonlyJsonObject : {
1263
1220
  readonly [K in KS]: ToJson<V>;
1264
- } : L extends LiveText ? LiveTextData : L extends LsonObject ? string extends keyof L ? ReadonlyJsonObject : {
1221
+ } : L extends LsonObject ? string extends keyof L ? ReadonlyJsonObject : {
1265
1222
  readonly [K in keyof L]: ToJson<Exclude<L[K], undefined>> | (undefined extends L[K] ? undefined : never);
1266
1223
  } : L extends Json ? L : never;
1267
1224
 
@@ -1937,18 +1894,6 @@ interface RoomHttpApi<TM extends BaseMetadata, CM extends BaseMetadata> {
1937
1894
  signal?: AbortSignal;
1938
1895
  }): Promise<CommentAttachment>;
1939
1896
  getOrCreateAttachmentUrlsStore(roomId: string): BatchStore<string, string>;
1940
- uploadChatAttachment({ chatId, attachment, signal, }: {
1941
- chatId: string;
1942
- attachment: {
1943
- id: string;
1944
- file: File;
1945
- };
1946
- signal?: AbortSignal;
1947
- }): Promise<void>;
1948
- getOrCreateChatAttachmentUrlsStore(chatId: string): BatchStore<string, string>;
1949
- getChatAttachmentUrl(options: {
1950
- attachmentId: string;
1951
- }): Promise<string>;
1952
1897
  createTextMention({ roomId, mentionId, mention, }: {
1953
1898
  roomId: string;
1954
1899
  mentionId: string;
@@ -5110,12 +5055,7 @@ type PlainLsonList = {
5110
5055
  liveblocksType: "LiveList";
5111
5056
  data: PlainLson[];
5112
5057
  };
5113
- type PlainLsonText = {
5114
- liveblocksType: "LiveText";
5115
- data: LiveTextData;
5116
- version?: number;
5117
- };
5118
- type PlainLson = PlainLsonObject | PlainLsonMap | PlainLsonList | PlainLsonText | Json;
5058
+ type PlainLson = PlainLsonObject | PlainLsonMap | PlainLsonList | Json;
5119
5059
 
5120
5060
  /**
5121
5061
  * Returns PlainLson for a given Json or LiveStructure, suitable for calling the storage init api
@@ -5830,4 +5770,4 @@ type EnsureJson<T> = T extends Json ? T : T extends Array<infer I> ? (EnsureJson
5830
5770
  [K in keyof T as EnsureJson<T[K]> extends never ? never : K]: EnsureJson<T[K]>;
5831
5771
  };
5832
5772
 
5833
- export { type ActivityData, type AiAssistantContentPart, type AiAssistantMessage, type AiChat, type AiChatMessage, type AiChatsQuery, type AiKnowledgeRetrievalPart, type AiKnowledgeSource, type AiOpaqueToolDefinition, type AiOpaqueToolInvocationProps, type AiReasoningPart, type AiRetrievalPart, type AiSourcesPart, type AiTextPart, type AiToolDefinition, type AiToolExecuteCallback, type AiToolExecuteContext, type AiToolInvocationPart, type AiToolInvocationProps, type AiToolTypePack, type AiUrlSource, type AiUserMessage, type AiWebRetrievalPart, type AsyncError, type AsyncLoading, type AsyncResult, type AsyncSuccess, type Awaitable, type BaseActivitiesData, type BaseAuthResult, type BaseGroupInfo, type BaseMetadata, type BaseRoomInfo, type BaseUserMeta, type Brand, type BroadcastEventClientMsg, type BroadcastOptions, type BroadcastedEventServerMsg, type ChildStorageNode, type Client, type ClientMsg, ClientMsgCode, type ClientOptions, type ClientWireOp, type CommentAttachment, type CommentBody, type CommentBodyBlockElement, type CommentBodyElement, type CommentBodyInlineElement, type CommentBodyLink, type CommentBodyLinkElementArgs, type CommentBodyMention, type CommentBodyMentionElementArgs, type CommentBodyParagraph, type CommentBodyParagraphElementArgs, type CommentBodyText, type CommentBodyTextElementArgs, type CommentData, type CommentDataPlain, type CommentLocalAttachment, type CommentMixedAttachment, type CommentReaction, type CommentUserReaction, type CommentUserReactionPlain, type CommentsEventServerMsg, type CompactChildNode, type CompactListNode, type CompactMapNode, type CompactNode, type CompactObjectNode, type CompactRegisterNode, type CompactRootNode, type CompactTextNode, type ContextualPromptContext, type ContextualPromptResponse, type CopilotId, CrdtType, type CreateListOp, type CreateManagedPoolOptions, type CreateMapOp, type CreateObjectOp, type CreateOp, type CreateRegisterOp, type CreateTextOp, type Cursor, type CustomAuthenticationResult, type DAD, type DCM, type DE, type DFM, type DFMD, type DGI, type DP, type DRI, type DS, type DTM, type DU, DefaultMap, type Delegates, type DeleteCrdtOp, type DeleteObjectKeyOp, Deque, DerivedSignal, DevToolsTreeNode as DevTools, protocol as DevToolsMsg, type DistributiveOmit, type EnsureJson, type EnterOptions, type EventSource, type Feed, type FeedCreateMetadata, type FeedDeletedServerMsg, type FeedFetchMetadataFilter, type FeedMessage, type FeedMessagesAddedServerMsg, type FeedMessagesDeletedServerMsg, type FeedMessagesListServerMsg, type FeedMessagesUpdatedServerMsg, type FeedRequestError, FeedRequestErrorCode, type FeedRequestFailedServerMsg, type FeedUpdateMetadata, type FeedsAddedServerMsg, type FeedsEventServerMsg, type FeedsListServerMsg, type FeedsUpdatedServerMsg, type FetchStorageClientMsg, type FetchYDocClientMsg, type GetThreadsOptions, type GroupData, type GroupDataPlain, type GroupMemberData, type GroupMentionData, type GroupScopes, type HasOpId, type History, type HistoryVersion, HttpError, type ISODateString, type ISignal, type IUserInfo, type IWebSocket, type IWebSocketCloseEvent, type IWebSocketEvent, type IWebSocketInstance, type IWebSocketMessageEvent, type IYjsProvider, type IgnoredOp, type Immutable, type InboxNotificationCustomData, type InboxNotificationCustomDataPlain, type InboxNotificationData, type InboxNotificationDataPlain, type InboxNotificationDeleteInfo, type InboxNotificationTextMentionData, type InboxNotificationTextMentionDataPlain, type InboxNotificationThreadData, type InboxNotificationThreadDataPlain, type InferFromSchema, type Json, type JsonArray, type JsonObject, type JsonScalar, type KDAD, type LayerKey, type ListStorageNode, LiveList, type LiveListUpdate, LiveMap, type LiveMapUpdate, type LiveNode, LiveObject, type LiveObjectUpdate, type LiveStructure, LiveText, type LiveTextAttributes, type LiveTextAttributesPatch, type LiveTextChange, type LiveTextData, type TextOperation as LiveTextOperation, type LiveTextSegment, type LiveTextUpdate, type LiveTextUpdates, LiveblocksError, type LiveblocksErrorContext, type LostConnectionEvent, type Lson, type LsonObject, MENTION_CHARACTER, type ManagedPool, type MapStorageNode, type MentionData, type MessageId, MutableSignal, type NoInfr, type NodeMap, type NodeStream, type NotificationChannel, type NotificationChannelSettings, type NotificationKind, type NotificationSettings, type NotificationSettingsPlain, type ObjectStorageNode, type Observable, type Op, OpCode, type OpaqueClient, type OpaqueRoom, type OptionalTupleUnless, type OthersEvent, type ParentToChildNodeMap, type PartialNotificationSettings, type PartialUnless, type Patchable, Permission, type PlainLson, type PlainLsonFields, type PlainLsonList, type PlainLsonMap, type PlainLsonObject, type PlainLsonText, type Poller, type PrivateClientApi, type PrivateRoomApi, Promise_withResolvers, type QueryMetadata, type QueryParams, type ReadonlyJson, type ReadonlyJsonObject, type RegisterStorageNode, type RejectedStorageOpServerMsg, type Relax, type RenderableToolResultResponse, type Resolve, type ResolveGroupsInfoArgs, type ResolveMentionSuggestionsArgs, type ResolveRoomsInfoArgs, type ResolveUsersArgs, type Room, type RoomEventMessage, type RoomStateServerMsg, type RoomSubscriptionSettings, type RootStorageNode, type SearchCommentsResult, type SerializedChild, type SerializedCrdt, type SerializedList, type SerializedMap, type SerializedObject, type SerializedRegister, type SerializedRootObject, type SerializedText, type ServerMsg, ServerMsgCode, type ServerWireOp, type SetParentKeyOp, Signal, type SignalType, SortedList, type Status, type StorageChunkServerMsg, type StorageNode, type StorageStatus, type StorageUpdate, type StringifyCommentBodyElements, type StringifyCommentBodyOptions, type SubscriptionData, type SubscriptionDataPlain, type SubscriptionDeleteInfo, type SubscriptionDeleteInfoPlain, type SubscriptionKey, type SyncConfig, type SyncMode, type SyncSource, type SyncStatus, type TextAttributes, TextEditorType, type TextOperation, type TextStorageNode, type ThreadData, type ThreadDataPlain, type ThreadDataWithDeleteInfo, type ThreadDeleteInfo, type ToJson, type ToolResultResponse, type URLSafeString, type UnsubscribeCallback, type UpdateObjectOp, type UpdatePresenceClientMsg, type UpdatePresenceServerMsg, type UpdateStorageClientMsg, type UpdateStorageServerMsg, type UpdateTextOp, type UpdateYDocClientMsg, type UploadAttachmentOptions, type UrlMetadata, type User, type UserJoinServerMsg, type UserLeftServerMsg, type UserMentionData, type UserRoomSubscriptionSettings, type UserSubscriptionData, type UserSubscriptionDataPlain, WebsocketCloseCodes, type WithNavigation, type WithOptional, type WithRequired, type YDocUpdateServerMsg, type YjsSyncStatus, applyLiveTextOperations, asPos, assert, assertNever, autoRetry, b64decode, batch, checkBounds, chunk, cloneLson, compactNodesToNodeStream, compactObject, fancyConsole as console, convertToCommentData, convertToCommentUserReaction, convertToGroupData, convertToInboxNotificationData, convertToSubscriptionData, convertToThreadData, convertToUserSubscriptionData, createClient, createCommentAttachmentId, createCommentId, createInboxNotificationId, createManagedPool, createNotificationSettings, createThreadId, deepLiveify, defineAiTool, deprecate, deprecateIf, detectDupes, entries, errorIf, findLastIndex, freeze, generateUrl, getMentionsFromCommentBody, getSubscriptionKey, html, htmlSafe, isCommentBodyLink, isCommentBodyMention, isCommentBodyText, isJsonArray, isJsonObject, isJsonScalar, isListStorageNode, isLiveNode, isMapStorageNode, isNotificationChannelEnabled, isNumberOperator, isObjectStorageNode, isPlainObject, isRegisterStorageNode, isRootStorageNode, isStartsWithOperator, isTextStorageNode, isUrl, kInternal, keys, makeAbortController, makeEventSource, makePoller, makePosition, mapValues, memoizeOnSuccess, nanoid, nn, nodeStreamToCompactNodes, objectToQuery, patchNotificationSettings, raise, resolveMentionsInCommentBody, sanitizeUrl, shallow, shallow2, stableStringify, stringifyCommentBody, throwUsageError, toPlainLson, tryParseJson, url, urljoin, wait, warnOnce, warnOnceIf, withTimeout };
5773
+ export { type AccessLevel, type ActivityData, type AiAssistantContentPart, type AiAssistantMessage, type AiChat, type AiChatMessage, type AiChatsQuery, type AiKnowledgeRetrievalPart, type AiKnowledgeSource, type AiOpaqueToolDefinition, type AiOpaqueToolInvocationProps, type AiReasoningPart, type AiRetrievalPart, type AiSourcesPart, type AiTextPart, type AiToolDefinition, type AiToolExecuteCallback, type AiToolExecuteContext, type AiToolInvocationPart, type AiToolInvocationProps, type AiToolTypePack, type AiUrlSource, type AiUserMessage, type AiWebRetrievalPart, type AsyncError, type AsyncLoading, type AsyncResult, type AsyncSuccess, type Awaitable, type BaseActivitiesData, type BaseAuthResult, type BaseGroupInfo, type BaseMetadata, type BaseRoomInfo, type BaseUserMeta, type Brand, type BroadcastEventClientMsg, type BroadcastOptions, type BroadcastedEventServerMsg, type ChildStorageNode, type Client, type ClientMsg, ClientMsgCode, type ClientOptions, type ClientWireOp, type CommentAttachment, type CommentBody, type CommentBodyBlockElement, type CommentBodyElement, type CommentBodyInlineElement, type CommentBodyLink, type CommentBodyLinkElementArgs, type CommentBodyMention, type CommentBodyMentionElementArgs, type CommentBodyParagraph, type CommentBodyParagraphElementArgs, type CommentBodyText, type CommentBodyTextElementArgs, type CommentData, type CommentDataPlain, type CommentLocalAttachment, type CommentMixedAttachment, type CommentReaction, type CommentUserReaction, type CommentUserReactionPlain, type CommentsEventServerMsg, type CompactChildNode, type CompactListNode, type CompactMapNode, type CompactNode, type CompactObjectNode, type CompactRegisterNode, type CompactRootNode, type ContextualPromptContext, type ContextualPromptResponse, type CopilotId, CrdtType, type CreateListOp, type CreateManagedPoolOptions, type CreateMapOp, type CreateObjectOp, type CreateOp, type CreateRegisterOp, type Cursor, type CustomAuthenticationResult, type DAD, type DCM, type DE, type DFM, type DFMD, type DGI, type DP, type DRI, type DS, type DTM, type DU, DefaultMap, type Delegates, type DeleteCrdtOp, type DeleteObjectKeyOp, Deque, DerivedSignal, DevToolsTreeNode as DevTools, protocol as DevToolsMsg, type DistributiveOmit, type EnsureJson, type EnterOptions, type EventSource, type Feed, type FeedCreateMetadata, type FeedDeletedServerMsg, type FeedFetchMetadataFilter, type FeedMessage, type FeedMessagesAddedServerMsg, type FeedMessagesDeletedServerMsg, type FeedMessagesListServerMsg, type FeedMessagesUpdatedServerMsg, type FeedRequestError, FeedRequestErrorCode, type FeedRequestFailedServerMsg, type FeedUpdateMetadata, type FeedsAddedServerMsg, type FeedsEventServerMsg, type FeedsListServerMsg, type FeedsUpdatedServerMsg, type FetchStorageClientMsg, type FetchYDocClientMsg, type GetThreadsOptions, type GroupData, type GroupDataPlain, type GroupMemberData, type GroupMentionData, type GroupScopes, type HasOpId, type History, type HistoryVersion, HttpError, type ISODateString, type ISignal, type IUserInfo, type IWebSocket, type IWebSocketCloseEvent, type IWebSocketEvent, type IWebSocketInstance, type IWebSocketMessageEvent, type IYjsProvider, type IgnoredOp, type Immutable, type InboxNotificationCustomData, type InboxNotificationCustomDataPlain, type InboxNotificationData, type InboxNotificationDataPlain, type InboxNotificationDeleteInfo, type InboxNotificationTextMentionData, type InboxNotificationTextMentionDataPlain, type InboxNotificationThreadData, type InboxNotificationThreadDataPlain, type InferFromSchema, type Json, type JsonArray, type JsonObject, type JsonScalar, type KDAD, type LayerKey, type ListStorageNode, LiveList, type LiveListUpdate, LiveMap, type LiveMapUpdate, type LiveNode, LiveObject, type LiveObjectUpdate, type LiveStructure, LiveblocksError, type LiveblocksErrorContext, type LostConnectionEvent, type Lson, type LsonObject, MENTION_CHARACTER, type ManagedPool, type MapStorageNode, type MentionData, type MessageId, MutableSignal, type NoInfr, type NodeMap, type NodeStream, type NotificationChannel, type NotificationChannelSettings, type NotificationKind, type NotificationSettings, type NotificationSettingsPlain, type ObjectStorageNode, type Observable, type Op, OpCode, type OpaqueClient, type OpaqueRoom, type OptionalTupleUnless, type OthersEvent, type ParentToChildNodeMap, type PartialNotificationSettings, type PartialUnless, type Patchable, Permission, type PermissionCapabilities, type PermissionResources, type PlainLson, type PlainLsonFields, type PlainLsonList, type PlainLsonMap, type PlainLsonObject, type Poller, type PrivateClientApi, type PrivateRoomApi, Promise_withResolvers, type QueryMetadata, type QueryParams, type ReadonlyJson, type ReadonlyJsonObject, type RegisterStorageNode, type RejectedStorageOpServerMsg, type Relax, type RenderableToolResultResponse, type RequiredAccessLevel, type Resolve, type ResolveGroupsInfoArgs, type ResolveMentionSuggestionsArgs, type ResolveRoomsInfoArgs, type ResolveUsersArgs, type Room, type RoomAccesses, type RoomAccessesInput, type RoomAccessesUpdateInput, type RoomEventMessage, type RoomPermission, type RoomPermissionInput, type RoomPermissionObject, type RoomStateServerMsg, type RoomSubscriptionSettings, type RootStorageNode, type SearchCommentsResult, type SerializedChild, type SerializedCrdt, type SerializedList, type SerializedMap, type SerializedObject, type SerializedRegister, type SerializedRootObject, type ServerMsg, ServerMsgCode, type ServerWireOp, type SetParentKeyOp, Signal, type SignalType, SortedList, type Status, type StorageChunkServerMsg, type StorageNode, type StorageStatus, type StorageUpdate, type StringifyCommentBodyElements, type StringifyCommentBodyOptions, type SubscriptionData, type SubscriptionDataPlain, type SubscriptionDeleteInfo, type SubscriptionDeleteInfoPlain, type SubscriptionKey, type SyncConfig, type SyncMode, type SyncSource, type SyncStatus, TextEditorType, type ThreadData, type ThreadDataPlain, type ThreadDataWithDeleteInfo, type ThreadDeleteInfo, type ToJson, type ToolResultResponse, type URLSafeString, type UnsubscribeCallback, type UpdateObjectOp, type UpdatePresenceClientMsg, type UpdatePresenceServerMsg, type UpdateStorageClientMsg, type UpdateStorageServerMsg, type UpdateYDocClientMsg, type UploadAttachmentOptions, type UrlMetadata, type User, type UserJoinServerMsg, type UserLeftServerMsg, type UserMentionData, type UserRoomSubscriptionSettings, type UserSubscriptionData, type UserSubscriptionDataPlain, WebsocketCloseCodes, type WithNavigation, type WithOptional, type WithRequired, type YDocUpdateServerMsg, type YjsSyncStatus, asPos, assert, assertNever, autoRetry, b64decode, batch, checkBounds, chunk, cloneLson, compactNodesToNodeStream, compactObject, fancyConsole as console, convertToCommentData, convertToCommentUserReaction, convertToGroupData, convertToInboxNotificationData, convertToSubscriptionData, convertToThreadData, convertToUserSubscriptionData, createClient, createCommentAttachmentId, createCommentId, createInboxNotificationId, createManagedPool, createNotificationSettings, createThreadId, deepLiveify, defineAiTool, deprecate, deprecateIf, detectDupes, entries, errorIf, findLastIndex, freeze, generateUrl, getMentionsFromCommentBody, getRoomPermissionConflicts, getSubscriptionKey, hasPermissionCapability, hasPermissionCapabilityAccess, html, htmlSafe, isCommentBodyLink, isCommentBodyMention, isCommentBodyText, isJsonArray, isJsonObject, isJsonScalar, isListStorageNode, isLiveNode, isMapStorageNode, isNotificationChannelEnabled, isNumberOperator, isObjectStorageNode, isPlainObject, isRegisterStorageNode, isRootStorageNode, isStartsWithOperator, isUrl, kInternal, keys, makeAbortController, makeEventSource, makePoller, makePosition, mapValues, memoizeOnSuccess, nanoid, nn, nodeStreamToCompactNodes, normalizeRoomAccessesInput, normalizeRoomAccessesUpdateInput, normalizeRoomPermissionInput, objectToQuery, patchNotificationSettings, permissionCapabilitiesFromScopes, raise, resolveMentionsInCommentBody, sanitizeUrl, shallow, shallow2, stableStringify, stringifyCommentBody, throwUsageError, toPlainLson, tryParseJson, url, urljoin, wait, warnOnce, warnOnceIf, withTimeout };