@arbidocs/react 0.5.73 → 0.5.75
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/README.md +85 -66
- package/dist/artifacts/index.cjs +9 -9
- package/dist/artifacts/index.js +3 -3
- package/dist/calls/livekit/index.cjs +48 -48
- package/dist/calls/livekit/index.js +3 -3
- package/dist/{chunk-M3SB5TZB.js → chunk-2MECTZLS.js} +9 -5
- package/dist/chunk-2MECTZLS.js.map +1 -0
- package/dist/{chunk-R7YNABZY.js → chunk-2Y6LJNWA.js} +2 -2
- package/dist/{chunk-R7YNABZY.js.map → chunk-2Y6LJNWA.js.map} +1 -1
- package/dist/{chunk-QGOYIYLI.js → chunk-33PVGKXT.js} +819 -509
- package/dist/chunk-33PVGKXT.js.map +1 -0
- package/dist/{chunk-Y7S2SQH3.cjs → chunk-5YGUBXXH.cjs} +2 -2
- package/dist/{chunk-Y7S2SQH3.cjs.map → chunk-5YGUBXXH.cjs.map} +1 -1
- package/dist/{chunk-RS6UUPD2.cjs → chunk-6RSVGLQY.cjs} +853 -536
- package/dist/chunk-6RSVGLQY.cjs.map +1 -0
- package/dist/{chunk-2LV53J46.js → chunk-JHN4PKWX.js} +3 -3
- package/dist/{chunk-2LV53J46.js.map → chunk-JHN4PKWX.js.map} +1 -1
- package/dist/{chunk-ZTPJNKF2.js → chunk-LC276BI7.js} +5 -5
- package/dist/chunk-LC276BI7.js.map +1 -0
- package/dist/{chunk-GOJHU7RZ.cjs → chunk-MWW54PY6.cjs} +25 -25
- package/dist/{chunk-GOJHU7RZ.cjs.map → chunk-MWW54PY6.cjs.map} +1 -1
- package/dist/{chunk-4DTTEUVY.js → chunk-O2HDONQE.js} +4 -4
- package/dist/{chunk-4DTTEUVY.js.map → chunk-O2HDONQE.js.map} +1 -1
- package/dist/{chunk-SI7DJWBT.js → chunk-OR6B7IL2.js} +3 -3
- package/dist/{chunk-SI7DJWBT.js.map → chunk-OR6B7IL2.js.map} +1 -1
- package/dist/{chunk-LMW46NBD.cjs → chunk-OY4PYCJH.cjs} +5 -5
- package/dist/chunk-OY4PYCJH.cjs.map +1 -0
- package/dist/{chunk-HXITD6DN.cjs → chunk-PMHFLOXY.cjs} +27 -22
- package/dist/chunk-PMHFLOXY.cjs.map +1 -0
- package/dist/{chunk-TGSEQGM3.cjs → chunk-QEVM3F5X.cjs} +4 -4
- package/dist/{chunk-TGSEQGM3.cjs.map → chunk-QEVM3F5X.cjs.map} +1 -1
- package/dist/{chunk-ZNQPUPX6.cjs → chunk-RDERZWMO.cjs} +16 -16
- package/dist/{chunk-ZNQPUPX6.cjs.map → chunk-RDERZWMO.cjs.map} +1 -1
- package/dist/document-tools/core.cjs +99 -99
- package/dist/document-tools/core.js +3 -3
- package/dist/document-tools/index.cjs +101 -101
- package/dist/document-tools/index.js +4 -4
- package/dist/index.cjs +1036 -891
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +411 -240
- package/dist/index.d.ts +411 -240
- package/dist/index.js +143 -32
- package/dist/index.js.map +1 -1
- package/dist/shell/index.cjs +32 -32
- package/dist/shell/index.js +1 -1
- package/dist/viewers/index.cjs +2 -2
- package/dist/viewers/index.js +1 -1
- package/package.json +3 -3
- package/dist/chunk-HXITD6DN.cjs.map +0 -1
- package/dist/chunk-LMW46NBD.cjs.map +0 -1
- package/dist/chunk-M3SB5TZB.js.map +0 -1
- package/dist/chunk-QGOYIYLI.js.map +0 -1
- package/dist/chunk-RS6UUPD2.cjs.map +0 -1
- package/dist/chunk-ZTPJNKF2.js.map +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { b as ArbiHostConnection, H as HostConfigRecord, c as ArbiHostProps, T as ThreadBinding, e as MentionCandidate, o as SearchStatus, m as SearchSession, l as NotifyVariant, A as AppNotification } from './index.d-AT7wdTWC.cjs';
|
|
2
|
-
export { C as ChatArtifact, D as DEFAULT_NOTIFY_TONE, L as LEGACY_THREAD_DOCUMENTS_KEY, M as MAX_SESSION_NOTIFICATIONS, d as MENTION_HREF_PREFIX, f as MentionKind,
|
|
1
|
+
import { b as ArbiHostConnection, H as HostConfigRecord, c as ArbiHostProps, T as ThreadBinding, e as MentionCandidate, g as MessageMentionRef, o as SearchStatus, m as SearchSession, l as NotifyVariant, A as AppNotification } from './index.d-AT7wdTWC.cjs';
|
|
2
|
+
export { C as ChatArtifact, D as DEFAULT_NOTIFY_TONE, L as LEGACY_THREAD_DOCUMENTS_KEY, M as MAX_SESSION_NOTIFICATIONS, d as MENTION_HREF_PREFIX, f as MentionKind, N as NotificationBell, h as NotificationBellProps, i as NotificationBellTriggerState, j as NotifyConfig, k as NotifyOptions, O as OpenDocumentRegistration, S as SavedDocumentInput, n as SearchSessionState, p as ThreadBindingRow, q as Toaster, r as TurnDocumentInput, U as UNBOUND, W as WordDocumentKind, s as bindingOfRow, t as clearChatArtifacts, u as clearSearchSession, v as configureNotify, w as createSearchSession, x as extractMentions, y as filterMentionCandidates, z as findMentionQuery, B as forgetLegacyThreadDocuments, E as getChatArtifact, F as getChatArtifacts, G as hasMessageBody, I as insertMention, J as latestThreadOfDocument, K as linkMentions, P as mentionFromHref, Q as notify, R as openDocumentId, V as opensInWord, X as persistNotifyHistory, Y as persistSearchSession, Z as readLegacyThreadDocuments, _ as recordChatArtifact, $ as requestSearch, a0 as savedDocumentIdFor, a1 as seedNotifications, a2 as selectUnread, a3 as sharedSearchSession, a4 as takeDocumentForTurn, a5 as takePendingSearch, a6 as toMessageMentions, a7 as useChatArtifact, a8 as useConversationChatArtifact, a9 as useHostConfigRecord, aa as useMessageChatArtifact, ab as useNotify, ac as useOpenDocumentId, ad as useRegisterOpenDocument, ae as useTurnDocumentId } from './index.d-AT7wdTWC.cjs';
|
|
3
3
|
import * as _arbidocs_sdk_browser from '@arbidocs/sdk/browser';
|
|
4
4
|
import { LoginProfile, Arbi, EventCreateBody, ScopedTarget, EventPatchBody, RespondParams, ArtifactEvent, MailDraftSSEEvent, QuotaExceeded, ProbeAnswerEvent, AskRequest, AgentStepEvent, ChatMessage, OutputItemDone, UserInputRequestEvent, MessageQueuedEvent, UserMessageEvent, SSEStreamStartData, MessageMetadataPayload, DeferredInterjectionEvent, AgentControlStateEvent, TokenBudgetContext, ConversationResponse, Thread, SSEStreamResult, AskHandlers, TagListQuery, workspaces, ListFactsOptions, UpdateFactRequest, FactSearchResponse, FactSearchRequest, StepActionRequest, UpdateConversationRequest, UpdateWorkflowRequest, DatabaseRow, tags, TagResponse, TagKind, TagKindSchema, TagChange, TagFieldDefinition, ProjectEventKind, ProjectUpdateRequest, ProjectResponse, ProjectCreateOptions, ProjectAddonKind, ProjectPlanChangeRequest, ProjectCheckoutRequest, ProjectQuoteRequest, ProjectAddonSettingsRequest, ProjectNextPeriodAddonsRequest, contacts, PersonalConnectionInput, settings, account, ListEventsParams, CalendarWindow, OverlayLayerName, RoomCreateBody, CalendarEvent, FindTimeParams, RoomQuery, ShareRole, CalendarUpdate, OAuthAccountKind, CalendarAccount, CalDavConnectBody, calls, SearchChunk, chats, UploadDocumentsOptions, UploadResult } from '@arbidocs/sdk/browser';
|
|
5
5
|
export { ACCOUNT_VENDOR, AccountSyncResult, ActivityKind, ActivityResponse, AgentStepEvent, Arbi, ArbiError, ArbiOptions, ArtifactEvent, AskHandlers, AskRequest, AttendeeRead, AuthMode, BookingConfirmation, BookingPage, BookingPageWriteBody, BookingRequestBody, BridgeTokensOptions, CalDavConnectBody, CalDavProfile, CalendarAccount, CalendarAccountKind, CalendarCreateBody, CalendarEvent, CalendarRead, CalendarSettings, CalendarSettingsBody, CalendarUpdate, CalendarWindow, ConnectionModel, ConnectorCatalogEntry, ConnectorFolder, ConnectorSyncProgress, ConnectorSyncStatus, ConnectorVendorKey, ConnectorVisibilitySettings, ConversationResponse, CreateFactRequest, CreateWorkRequest, CreateWorkflowRequest, DEFAULT_AI_USD_PER_GBP, DRIVE_SYNC_VENDORS, Database, DatabaseColumn, DatabaseColumnWrite, DatabaseImportResult, DatabaseRow, DatabaseRowPage, DateTimeSpec, DirectModelUsage, DriveSyncProgress, DriveSyncSummary, EditScope, EventCreateBody, EventPatchBody, FactResponse, FactSearchRequest, FactSearchResponse, FindTimeParams, FreeBusyEntry, GOOGLE_VENDORS, HolidayCountry, IMANAGE_VENDORS, ImportResult, InvitationRead, ListEventsParams, LoginProfile, MAILBOX_SYNC_VENDORS, MAX_RETRIEVE_DOC_IDS, MICROSOFT_VENDORS, MessageMetadataPayload, ModelConnection, OAuthAccountKind, OutputTokensDetails, OverlayItem, OverlayLayerName, PendingAuthResponse, PersonKey, PersonalConnectionInput, PlanWorkRequest, ProductResponse, ProjectAddonKind, ProjectCheckoutRequest, ProjectInvoicesResponse, ProjectPlanChangeRequest, ProjectQuoteRequest, ProjectResponse, ProjectUsageResponse, PublicBookingError, PublicBookingPage, RespondParams, RespondPartstat, ResponseCompletedEvent, ResponseContentPartAddedEvent, ResponseCreatedEvent, ResponseFailedEvent, ResponseOutputItemAddedEvent, ResponseOutputItemDoneEvent, ResponseOutputTextDeltaEvent, ResponseOutputTextDoneEvent, ResponseUsage, RoomCreateBody, RoomQuery, RoomRead, SHAREPOINT_VENDORS, SSEStreamCallbacks, SSEStreamResult, SSEStreamStartData, ScopedTarget, SearchChunk, ShareRead, ShareRole, SkillSummary, SlackConnectionStatus, SubscribeParams, SyncTriggerResult, TaskPlan, TaxQuoteResponse, TimeSuggestion, UpdateConversationRequest, UpdateWorkflowRequest, UserConnectorEntry, UserDailyUsageResponse, UserInputRequestEvent, UserMessageEvent, WeeklyHoursSpec, WorkStatus, WorkflowAuthMode, WorkflowResponse, WorkflowRunResponse, bookPublicSlot, cancelPublicBooking, connectErrorMessage, formatGbp, formatGbpPerMillionTokens, getPublicBookingPage, isConnectorVendorVisible, isDriveSyncVendor, isMailboxSyncVendor, isSharePointVendor, usdToGbp } from '@arbidocs/sdk/browser';
|
|
@@ -21,6 +21,7 @@ import { VerificationResult } from '@didit-protocol/sdk-web';
|
|
|
21
21
|
import { LucideIcon } from 'lucide-react';
|
|
22
22
|
import { Components } from 'react-markdown';
|
|
23
23
|
export { D as DraftCleanReport, a as DraftCleanStage, c as cleanDraftMarkdown, b as cleanDraftWithReport, p as promoteBoldTitle, r as repairParsedStructure, d as repairParsedTitle, s as stripAgentPreamble, u as unescapeMarkdown, e as unwrapCitationLinks } from './stored-markdown.d-Bp18vrbr.cjs';
|
|
24
|
+
import { PersistStorage } from 'zustand/middleware';
|
|
24
25
|
export { ToasterProps, toast } from 'sonner';
|
|
25
26
|
import 'zustand/vanilla';
|
|
26
27
|
import 'clsx';
|
|
@@ -807,6 +808,67 @@ declare function aliasTakenMessage(alias: string, suggestion: string, domain: st
|
|
|
807
808
|
/** The draft a `mail_draft_ready` notification is about (its content is `{"mail_id": …}`). */
|
|
808
809
|
declare function mailDraftIdFromContent(content: string | null | undefined): string | undefined;
|
|
809
810
|
|
|
811
|
+
/**
|
|
812
|
+
* The live state of a running turn that is not in the threads cache: follow-ups waiting in the
|
|
813
|
+
* agent bar's queue box, and the run-control state (pause / resume / report). Both are keyed by the
|
|
814
|
+
* streaming answer's id (the response id) and live in the session (`ArbiSessionState`); these are
|
|
815
|
+
* the pure updates every session store applies.
|
|
816
|
+
*/
|
|
817
|
+
|
|
818
|
+
/** A follow-up the person sent while a turn ran, shown in the agent bar until it is its own turn. */
|
|
819
|
+
interface QueuedMessage {
|
|
820
|
+
/** The client's own id, unique across turns. */
|
|
821
|
+
clientId: string;
|
|
822
|
+
content: string;
|
|
823
|
+
/** The stored user message, once the server confirmed the follow-up. */
|
|
824
|
+
serverId: string | null;
|
|
825
|
+
acknowledged: boolean;
|
|
826
|
+
/** When it was queued (epoch ms): a follow-up stays readable for a moment. */
|
|
827
|
+
createdAt: number;
|
|
828
|
+
}
|
|
829
|
+
/** Queued follow-ups per running answer (response id). */
|
|
830
|
+
type QueuedMessages = Readonly<Record<string, readonly QueuedMessage[]>>;
|
|
831
|
+
/**
|
|
832
|
+
* Control state of a running agent turn:
|
|
833
|
+
* - `running` normal streaming.
|
|
834
|
+
* - `pausing` the person sent /pause; awaiting the server's confirmed halt (optimistic).
|
|
835
|
+
* - `paused` the server confirmed the loop halted at a boundary.
|
|
836
|
+
* - `resuming` the person sent /resume; awaiting the stream to flow again (optimistic).
|
|
837
|
+
*/
|
|
838
|
+
type AgentRunControlState = 'running' | 'pausing' | 'paused' | 'resuming';
|
|
839
|
+
/** How long a confirmed follow-up stays in the queue box at least, so it can be read. */
|
|
840
|
+
declare const MIN_QUEUED_MESSAGE_VISIBILITY_MS = 800;
|
|
841
|
+
/** The queue updates. Client ids are unique, so the per-entry ones find it under any turn. */
|
|
842
|
+
declare const queuedMessages: {
|
|
843
|
+
add: (q: QueuedMessages, responseId: string, message: QueuedMessage) => QueuedMessages;
|
|
844
|
+
acknowledge: (q: QueuedMessages, clientId: string, serverId: string | null) => QueuedMessages;
|
|
845
|
+
remove: (q: QueuedMessages, clientId: string) => QueuedMessages;
|
|
846
|
+
removeByServerId: (q: QueuedMessages, serverId: string) => QueuedMessages;
|
|
847
|
+
removeByContent: (q: QueuedMessages, responseId: string, content: string) => QueuedMessages;
|
|
848
|
+
/** Take out the prompts a steering interjection delivered into the run. */
|
|
849
|
+
consume: (q: QueuedMessages, responseId: string, combinedContent: string) => QueuedMessages;
|
|
850
|
+
clear: (q: QueuedMessages, responseId: string) => QueuedMessages;
|
|
851
|
+
/** Move the entries still waiting on a finished turn to the turn that is now running. */
|
|
852
|
+
move: (q: QueuedMessages, fromResponseId: string, toResponseId: string) => QueuedMessages;
|
|
853
|
+
/** Find a queued follow-up by its client id, under whichever turn holds it. */
|
|
854
|
+
find: (q: QueuedMessages, clientId: string) => QueuedMessage | undefined;
|
|
855
|
+
};
|
|
856
|
+
/** The transient control state of the running turns, per response id. */
|
|
857
|
+
interface AgentControlMaps {
|
|
858
|
+
agentControlStates: Readonly<Record<string, AgentRunControlState>>;
|
|
859
|
+
agentProbeAnswers: Readonly<Record<string, ProbeAnswerEvent>>;
|
|
860
|
+
agentProbePending: Readonly<Record<string, boolean>>;
|
|
861
|
+
}
|
|
862
|
+
/** The control updates. */
|
|
863
|
+
declare const agentControl: {
|
|
864
|
+
setState: (c: AgentControlMaps, id: string, state: AgentRunControlState) => AgentControlMaps;
|
|
865
|
+
/** A probe answered: the latest answer, and nothing pending any more. */
|
|
866
|
+
setProbeAnswer: (c: AgentControlMaps, id: string, probe: ProbeAnswerEvent) => AgentControlMaps;
|
|
867
|
+
setProbePending: (c: AgentControlMaps, id: string, pending: boolean) => AgentControlMaps;
|
|
868
|
+
/** The turn is over: drop its control state. */
|
|
869
|
+
clear: (c: AgentControlMaps, id: string) => AgentControlMaps;
|
|
870
|
+
};
|
|
871
|
+
|
|
810
872
|
/**
|
|
811
873
|
* The composers' drafts kept across reloads: stored locally and encrypted, sealed to the signed-in
|
|
812
874
|
* person's own key like the other data kept on the device, so nothing typed is readable at rest.
|
|
@@ -927,9 +989,10 @@ declare function createStoragePersist<T>({ storage, key, parse, migrate, delayMs
|
|
|
927
989
|
|
|
928
990
|
/**
|
|
929
991
|
* The thread tabs: the conversations open in the Threads page (`ConnectedThreadTabs` shows them),
|
|
930
|
-
* each with the composer it was left with, so switching back finds its line, its
|
|
931
|
-
* its
|
|
932
|
-
* (without what was typed: a host keeps
|
|
992
|
+
* each with the composer it was left with, so switching back finds its line, its edit, its model and
|
|
993
|
+
* its scroll position (its draft is the chat state's, kept per conversation: `ArbiChatState.drafts`).
|
|
994
|
+
* They are part of the layout's `tabs` and kept across reloads (without what was typed: a host keeps
|
|
995
|
+
* drafts sealed, `ArbiDraftStorage`).
|
|
933
996
|
*
|
|
934
997
|
* The changes here are pure: each takes the tabs and the composer being left, and says what the
|
|
935
998
|
* composer shows next, so a session store (the in-memory one, or a host's adapter over its own
|
|
@@ -939,11 +1002,9 @@ declare function createStoragePersist<T>({ storage, key, parse, migrate, delayMs
|
|
|
939
1002
|
interface ArbiThreadTabView {
|
|
940
1003
|
/** The message the conversation continued from (its line). */
|
|
941
1004
|
cursor: string | null;
|
|
942
|
-
/** What was typed (kept in memory only; never in the saved layout). */
|
|
943
|
-
draft: string;
|
|
944
1005
|
/** The question being edited, or null. */
|
|
945
1006
|
editingMessageId: string | null;
|
|
946
|
-
/** The draft the edit put aside (in memory only
|
|
1007
|
+
/** The draft the edit put aside (in memory only; never in the saved layout). */
|
|
947
1008
|
preEditDraft: string | null;
|
|
948
1009
|
/** The line the edit put aside. */
|
|
949
1010
|
preEditCursor: string | null;
|
|
@@ -1162,8 +1223,6 @@ interface ArbiThreadTabsController {
|
|
|
1162
1223
|
/** The tab of `fromId` is now `toId`'s (a new chat got its id). */
|
|
1163
1224
|
rename(fromId: string, toId: string): void;
|
|
1164
1225
|
clear(): void;
|
|
1165
|
-
/** Fill in the tabs' drafts kept elsewhere, where none is typed. */
|
|
1166
|
-
restoreDrafts(drafts: Readonly<Record<string, string>>): void;
|
|
1167
1226
|
/** The scroll position the last tab switch brought back (once; null after). */
|
|
1168
1227
|
consumeScrollRestore(): number | null;
|
|
1169
1228
|
}
|
|
@@ -1187,165 +1246,25 @@ interface ArbiLayoutStoreOptions {
|
|
|
1187
1246
|
declare function createArbiLayoutStore({ persist, initial, }?: ArbiLayoutStoreOptions): ArbiLayoutStore;
|
|
1188
1247
|
|
|
1189
1248
|
/**
|
|
1190
|
-
* The session's
|
|
1191
|
-
*
|
|
1249
|
+
* The session's chat state: the open conversation and its composer (line, draft, edit, model), the
|
|
1250
|
+
* turns running in each conversation, the documents and facts in each conversation's context, and
|
|
1251
|
+
* the agent bar's queue and run control. One implementation for every host: the in-memory session
|
|
1252
|
+
* store is built on it, and so is ARBI-frontend's (which keeps it across reloads).
|
|
1192
1253
|
*
|
|
1193
|
-
* The
|
|
1194
|
-
*
|
|
1195
|
-
*
|
|
1196
|
-
* `useOpenSelectedWorkspace` opens the kept selection again.
|
|
1197
|
-
*/
|
|
1198
|
-
|
|
1199
|
-
/** Where the selection is kept across reloads. */
|
|
1200
|
-
interface ArbiWorkspaceStorage {
|
|
1201
|
-
load(): string | null;
|
|
1202
|
-
save(workspaceId: string | null): void;
|
|
1203
|
-
}
|
|
1204
|
-
/** The selection and its status. */
|
|
1205
|
-
interface ArbiWorkspaceState {
|
|
1206
|
-
workspaceId: string | null;
|
|
1207
|
-
workspaceStatus: ArbiWorkspaceStatus;
|
|
1208
|
-
}
|
|
1209
|
-
interface ArbiWorkspaceStore {
|
|
1210
|
-
getState(): ArbiWorkspaceState;
|
|
1211
|
-
subscribe(listener: () => void): () => void;
|
|
1212
|
-
setWorkspaceId(workspaceId: string | null): void;
|
|
1213
|
-
setWorkspaceStatus(status: ArbiWorkspaceStatus): void;
|
|
1214
|
-
/** No workspace, closed (a sign-in or sign-out: the next person starts on the workspace list). */
|
|
1215
|
-
reset(): void;
|
|
1216
|
-
}
|
|
1217
|
-
interface ArbiWorkspaceStoreOptions {
|
|
1218
|
-
storage?: ArbiWorkspaceStorage;
|
|
1219
|
-
/** The selection to start with instead of the kept one. */
|
|
1220
|
-
workspaceId?: string | null;
|
|
1221
|
-
}
|
|
1222
|
-
declare function createArbiWorkspaceStore({ storage, workspaceId, }?: ArbiWorkspaceStoreOptions): ArbiWorkspaceStore;
|
|
1223
|
-
/** The sessionStorage key of the selection (per tab). */
|
|
1224
|
-
declare const WORKSPACE_STORAGE_KEY = "arbi_workspace_id";
|
|
1225
|
-
/** The localStorage key of when each workspace was last opened (per browser). */
|
|
1226
|
-
declare const WORKSPACE_LAST_OPENED_KEY = "arbi_workspace_last_opened";
|
|
1227
|
-
interface BrowserWorkspaceStorageOptions {
|
|
1228
|
-
/** Default {@link WORKSPACE_STORAGE_KEY}. */
|
|
1229
|
-
key?: string;
|
|
1230
|
-
/** Default {@link WORKSPACE_LAST_OPENED_KEY}. */
|
|
1231
|
-
lastOpenedKey?: string;
|
|
1232
|
-
}
|
|
1233
|
-
/**
|
|
1234
|
-
* The browser's: the selection per tab (sessionStorage), and when each workspace was last opened
|
|
1235
|
-
* per browser (localStorage, read with {@link readWorkspaceLastOpened}: "recently opened" is a
|
|
1236
|
-
* history that outlives a tab, the selection deliberately does not).
|
|
1237
|
-
*/
|
|
1238
|
-
declare function browserWorkspaceStorage({ key, lastOpenedKey, }?: BrowserWorkspaceStorageOptions): ArbiWorkspaceStorage;
|
|
1239
|
-
/** When each workspace was last opened in this browser (`external_id` → epoch ms). */
|
|
1240
|
-
declare function readWorkspaceLastOpened(lastOpenedKey?: string): Record<string, number>;
|
|
1241
|
-
|
|
1242
|
-
/**
|
|
1243
|
-
* The live state of a running turn that is not in the threads cache: follow-ups waiting in the
|
|
1244
|
-
* agent bar's queue box, and the run-control state (pause / resume / report). Both are keyed by the
|
|
1245
|
-
* streaming answer's id (the response id) and live in the session (`ArbiSessionState`); these are
|
|
1246
|
-
* the pure updates every session store applies.
|
|
1247
|
-
*/
|
|
1248
|
-
|
|
1249
|
-
/** A follow-up the person sent while a turn ran, shown in the agent bar until it is its own turn. */
|
|
1250
|
-
interface QueuedMessage {
|
|
1251
|
-
/** The client's own id, unique across turns. */
|
|
1252
|
-
clientId: string;
|
|
1253
|
-
content: string;
|
|
1254
|
-
/** The stored user message, once the server confirmed the follow-up. */
|
|
1255
|
-
serverId: string | null;
|
|
1256
|
-
acknowledged: boolean;
|
|
1257
|
-
/** When it was queued (epoch ms): a follow-up stays readable for a moment. */
|
|
1258
|
-
createdAt: number;
|
|
1259
|
-
}
|
|
1260
|
-
/** Queued follow-ups per running answer (response id). */
|
|
1261
|
-
type QueuedMessages = Readonly<Record<string, readonly QueuedMessage[]>>;
|
|
1262
|
-
/**
|
|
1263
|
-
* Control state of a running agent turn:
|
|
1264
|
-
* - `running` normal streaming.
|
|
1265
|
-
* - `pausing` the person sent /pause; awaiting the server's confirmed halt (optimistic).
|
|
1266
|
-
* - `paused` the server confirmed the loop halted at a boundary.
|
|
1267
|
-
* - `resuming` the person sent /resume; awaiting the stream to flow again (optimistic).
|
|
1268
|
-
*/
|
|
1269
|
-
type AgentRunControlState = 'running' | 'pausing' | 'paused' | 'resuming';
|
|
1270
|
-
/** How long a confirmed follow-up stays in the queue box at least, so it can be read. */
|
|
1271
|
-
declare const MIN_QUEUED_MESSAGE_VISIBILITY_MS = 800;
|
|
1272
|
-
/** The queue updates. Client ids are unique, so the per-entry ones find it under any turn. */
|
|
1273
|
-
declare const queuedMessages: {
|
|
1274
|
-
add: (q: QueuedMessages, responseId: string, message: QueuedMessage) => QueuedMessages;
|
|
1275
|
-
acknowledge: (q: QueuedMessages, clientId: string, serverId: string | null) => QueuedMessages;
|
|
1276
|
-
remove: (q: QueuedMessages, clientId: string) => QueuedMessages;
|
|
1277
|
-
removeByServerId: (q: QueuedMessages, serverId: string) => QueuedMessages;
|
|
1278
|
-
removeByContent: (q: QueuedMessages, responseId: string, content: string) => QueuedMessages;
|
|
1279
|
-
/** Take out the prompts a steering interjection delivered into the run. */
|
|
1280
|
-
consume: (q: QueuedMessages, responseId: string, combinedContent: string) => QueuedMessages;
|
|
1281
|
-
clear: (q: QueuedMessages, responseId: string) => QueuedMessages;
|
|
1282
|
-
/** Move the entries still waiting on a finished turn to the turn that is now running. */
|
|
1283
|
-
move: (q: QueuedMessages, fromResponseId: string, toResponseId: string) => QueuedMessages;
|
|
1284
|
-
/** Find a queued follow-up by its client id, under whichever turn holds it. */
|
|
1285
|
-
find: (q: QueuedMessages, clientId: string) => QueuedMessage | undefined;
|
|
1286
|
-
};
|
|
1287
|
-
/** The transient control state of the running turns, per response id. */
|
|
1288
|
-
interface AgentControlMaps {
|
|
1289
|
-
agentControlStates: Readonly<Record<string, AgentRunControlState>>;
|
|
1290
|
-
agentProbeAnswers: Readonly<Record<string, ProbeAnswerEvent>>;
|
|
1291
|
-
agentProbePending: Readonly<Record<string, boolean>>;
|
|
1292
|
-
}
|
|
1293
|
-
/** The control updates. */
|
|
1294
|
-
declare const agentControl: {
|
|
1295
|
-
setState: (c: AgentControlMaps, id: string, state: AgentRunControlState) => AgentControlMaps;
|
|
1296
|
-
/** A probe answered: the latest answer, and nothing pending any more. */
|
|
1297
|
-
setProbeAnswer: (c: AgentControlMaps, id: string, probe: ProbeAnswerEvent) => AgentControlMaps;
|
|
1298
|
-
setProbePending: (c: AgentControlMaps, id: string, pending: boolean) => AgentControlMaps;
|
|
1299
|
-
/** The turn is over: drop its control state. */
|
|
1300
|
-
clear: (c: AgentControlMaps, id: string) => AgentControlMaps;
|
|
1301
|
-
};
|
|
1302
|
-
|
|
1303
|
-
/**
|
|
1304
|
-
* The session state every block reads and writes: the selected workspace, the current conversation,
|
|
1305
|
-
* the document being viewed, the document selection, generation per conversation, Personal
|
|
1306
|
-
* Assistant mode and the documents in each conversation.
|
|
1254
|
+
* The open composer and the thread tabs move together: a thread tab change (`openThreadTab` and the
|
|
1255
|
+
* like) is the layout's (`layout.threads`) applied here, and readers are told once, after both have
|
|
1256
|
+
* moved ({@link ArbiChatStore.batch}), so none sees a tab over another tab's conversation.
|
|
1307
1257
|
*
|
|
1308
|
-
*
|
|
1309
|
-
*
|
|
1310
|
-
* {@link
|
|
1311
|
-
* Other hosts use {@link createArbiSessionStore}, an in-memory store.
|
|
1258
|
+
* Kept across reloads (with a `persist`): the open conversation and its line, the context documents
|
|
1259
|
+
* and facts, each agent chat's agent and the chosen model. The drafts are kept apart, sealed to the
|
|
1260
|
+
* person ({@link ArbiDraftStorage}); everything else lives for the visit.
|
|
1312
1261
|
*/
|
|
1313
1262
|
|
|
1314
|
-
/** The document being viewed. */
|
|
1315
|
-
interface ArbiViewingDocument {
|
|
1316
|
-
/** The document (`doc-…`), or a version reference (`doc-…@v2`) while an earlier version shows. */
|
|
1317
|
-
id: string;
|
|
1318
|
-
/** The page being read, when known. */
|
|
1319
|
-
page: number | null;
|
|
1320
|
-
/** The passage being read, when one is. */
|
|
1321
|
-
passageId: string | null;
|
|
1322
|
-
}
|
|
1323
|
-
/** A tab of the document viewer. */
|
|
1324
|
-
type ArbiViewerTab = 'pdf' | 'edit' | 'html' | 'docx' | 'xlsx' | 'versions' | 'preview';
|
|
1325
|
-
/**
|
|
1326
|
-
* The document viewer's own state, shared with whatever opens documents (a citation opens the text
|
|
1327
|
-
* view, Compare from a documents list opens the redline): the open tab, the document compared with
|
|
1328
|
-
* the one viewed, and a tab asked for when a document was opened (applied once it has loaded).
|
|
1329
|
-
*/
|
|
1330
|
-
interface ArbiDocumentViewerState {
|
|
1331
|
-
tab: ArbiViewerTab;
|
|
1332
|
-
/** The document (or version reference) compared with the viewed one, or null. */
|
|
1333
|
-
compareId: string | null;
|
|
1334
|
-
/** A tab to show once `documentId` has loaded (a signature request opens on the PDF). */
|
|
1335
|
-
tabRequest: {
|
|
1336
|
-
documentId: string;
|
|
1337
|
-
tab: ArbiViewerTab;
|
|
1338
|
-
} | null;
|
|
1339
|
-
/** The text view's size, a multiplier of the normal size: a reading preference. */
|
|
1340
|
-
textScale: number;
|
|
1341
|
-
/** A phone user picked the PDF by hand: documents stop opening on the text view. */
|
|
1342
|
-
phonePdfChosen: boolean;
|
|
1343
|
-
}
|
|
1344
1263
|
/** Generation in one conversation. */
|
|
1345
1264
|
interface ArbiConversationGeneration {
|
|
1346
1265
|
isGenerating: boolean;
|
|
1347
1266
|
error: string | null;
|
|
1348
|
-
/** When the running turn started (epoch ms). */
|
|
1267
|
+
/** When the running turn started (epoch ms), once the server named its answer. */
|
|
1349
1268
|
startTime: number | null;
|
|
1350
1269
|
/** The answer being streamed (its response id), once the server named it. */
|
|
1351
1270
|
streamingAssistantId?: string | null;
|
|
@@ -1361,22 +1280,16 @@ interface ArbiConversationDocument {
|
|
|
1361
1280
|
docId: string;
|
|
1362
1281
|
isPinned: boolean;
|
|
1363
1282
|
}
|
|
1364
|
-
/**
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
/** Whether it is open on the server session (`useSwitchWorkspace` moves it). */
|
|
1373
|
-
workspaceStatus: ArbiWorkspaceStatus;
|
|
1283
|
+
/** An answer's timer: when its run started (epoch ms) and how long it took (seconds). */
|
|
1284
|
+
interface ArbiMessageTimer {
|
|
1285
|
+
startTime: number;
|
|
1286
|
+
elapsedTime: number;
|
|
1287
|
+
}
|
|
1288
|
+
/** A send's structured tools (`MessageInput.tools`). */
|
|
1289
|
+
type TurnTools = components['schemas']['MessageInput']['tools'];
|
|
1290
|
+
interface ArbiChatState extends AgentControlMaps {
|
|
1374
1291
|
/** The open conversation, or null for a new one / none. */
|
|
1375
1292
|
conversationId: string | null;
|
|
1376
|
-
viewingDocument: ArbiViewingDocument | null;
|
|
1377
|
-
documentViewer: ArbiDocumentViewerState;
|
|
1378
|
-
/** The documents selected in document lists. */
|
|
1379
|
-
selectedDocumentIds: readonly string[];
|
|
1380
1293
|
/** Generation state per conversation id. */
|
|
1381
1294
|
generating: Readonly<Record<string, ArbiConversationGeneration>>;
|
|
1382
1295
|
/** Personal Assistant mode for new conversations. */
|
|
@@ -1385,14 +1298,12 @@ interface ArbiSessionState extends AgentControlMaps, ArbiLayoutState {
|
|
|
1385
1298
|
conversationDocuments: Readonly<Record<string, readonly ArbiConversationDocument[]>>;
|
|
1386
1299
|
/**
|
|
1387
1300
|
* Per conversation id: true while an empty chat follows the workspace's documents (set by
|
|
1388
|
-
*
|
|
1301
|
+
* `useDocumentAutoAdd`); any other change of its documents is a choice and turns it off.
|
|
1389
1302
|
* Missing for a selection made before this was recorded.
|
|
1390
1303
|
*/
|
|
1391
1304
|
conversationDocumentAutoAdd: Readonly<Record<string, boolean>>;
|
|
1392
1305
|
/** The facts in each conversation's context, per conversation id (`new` for a new chat). */
|
|
1393
1306
|
conversationFacts: Readonly<Record<string, readonly string[]>>;
|
|
1394
|
-
/** The document read in full with each turn (one at a time). */
|
|
1395
|
-
pinnedDocumentId: string | null;
|
|
1396
1307
|
/** The message the open conversation continues from: the leaf of the line being viewed. */
|
|
1397
1308
|
cursor: string | null;
|
|
1398
1309
|
/** A follow-up the backend suggested for a conversation, offered in its composer. */
|
|
@@ -1403,9 +1314,9 @@ interface ArbiSessionState extends AgentControlMaps, ArbiLayoutState {
|
|
|
1403
1314
|
/** Follow-ups waiting in a running turn's agent bar, per response id. */
|
|
1404
1315
|
queuedMessages: QueuedMessages;
|
|
1405
1316
|
/**
|
|
1406
|
-
* What is typed in each
|
|
1407
|
-
*
|
|
1408
|
-
*
|
|
1317
|
+
* What is typed in each composer, per conversation id (`new` for a new chat): the open one's
|
|
1318
|
+
* (`selectDraft`) and each open thread tab's. A host may keep them across reloads, stored locally
|
|
1319
|
+
* and encrypted ({@link ArbiDraftStorage}).
|
|
1409
1320
|
*/
|
|
1410
1321
|
drafts: Readonly<Record<string, string>>;
|
|
1411
1322
|
/** The question being edited in the open conversation (sent as a new branch), or null. */
|
|
@@ -1444,62 +1355,26 @@ interface ArbiSessionState extends AgentControlMaps, ArbiLayoutState {
|
|
|
1444
1355
|
/** Each answer's timer, saved when it stops showing (`<conversation id>:<message id>`). */
|
|
1445
1356
|
messageTimers: Readonly<Record<string, ArbiMessageTimer>>;
|
|
1446
1357
|
}
|
|
1447
|
-
/**
|
|
1448
|
-
interface
|
|
1449
|
-
|
|
1450
|
-
elapsedTime: number;
|
|
1451
|
-
}
|
|
1452
|
-
/** A send's structured tools (`MessageInput.tools`). */
|
|
1453
|
-
type TurnTools = components['schemas']['MessageInput']['tools'];
|
|
1454
|
-
/** What to view: page and passage are left unchanged when omitted. */
|
|
1455
|
-
interface ArbiViewingDocumentInput {
|
|
1456
|
-
id: string;
|
|
1457
|
-
page?: number | null;
|
|
1458
|
-
passageId?: string | null;
|
|
1459
|
-
}
|
|
1460
|
-
interface ArbiSessionStore extends ArbiLayoutActions {
|
|
1461
|
-
/** The current state. The same object until something in it changes. */
|
|
1462
|
-
getState(): ArbiSessionState;
|
|
1463
|
-
/** Resolves once the saved layout has been read (at once when none is kept). */
|
|
1464
|
-
layoutHydrated(): Promise<void>;
|
|
1465
|
-
/** Whether the saved layout has been read. */
|
|
1466
|
-
isLayoutHydrated(): boolean;
|
|
1467
|
-
/** Be told when the state may have changed. Returns the unsubscribe. */
|
|
1468
|
-
subscribe(listener: () => void): () => void;
|
|
1469
|
-
setWorkspaceId(id: string | null): void;
|
|
1470
|
-
setWorkspaceStatus(status: ArbiWorkspaceStatus): void;
|
|
1471
|
-
/**
|
|
1472
|
-
* Drop everything scoped to the workspace being left (the open conversation and its generation,
|
|
1473
|
-
* the viewed document, the selection, the context documents and facts), before a switch. A host
|
|
1474
|
-
* with workspace-scoped state of its own clears that too.
|
|
1475
|
-
*/
|
|
1476
|
-
leaveWorkspace(): void;
|
|
1358
|
+
/** The chat's changes: every session store has them (`ArbiSessionStore`). */
|
|
1359
|
+
interface ArbiChatActions {
|
|
1360
|
+
/** Open a conversation in its thread tab (null: a new chat), as `openThreadTab`. */
|
|
1477
1361
|
setConversationId(id: string | null): void;
|
|
1478
|
-
/**
|
|
1479
|
-
* View a document, or none. Viewing another document resets the page; `page` and `passageId`
|
|
1480
|
-
* set them when given.
|
|
1481
|
-
*/
|
|
1482
|
-
setViewingDocument(document: ArbiViewingDocumentInput | null): void;
|
|
1483
|
-
/** Change the document viewer's state; fields not given stay. */
|
|
1484
|
-
setDocumentViewer(change: Partial<ArbiDocumentViewerState>): void;
|
|
1485
|
-
setSelectedDocumentIds(ids: string[]): void;
|
|
1486
1362
|
/** Start or end a conversation's turn; `abortController` is its local stream, which Stop aborts. */
|
|
1487
1363
|
setConversationGenerating(conversationId: string, isGenerating: boolean, abortController?: AbortController | null): void;
|
|
1488
1364
|
setPaMode(enabled: boolean): void;
|
|
1489
1365
|
/** Set a conversation's documents; `autoAdd` marks an automatic pick (default: the user's). */
|
|
1490
1366
|
setConversationDocuments(conversationId: string, documents: ArbiConversationDocument[], autoAdd?: boolean): void;
|
|
1491
1367
|
setConversationFacts(conversationId: string, factIds: string[]): void;
|
|
1492
|
-
setPinnedDocumentId(id: string | null): void;
|
|
1493
1368
|
/** The answer a conversation is streaming; `startTime` defaults to now (a re-attach passes the run's). */
|
|
1494
1369
|
setStreamingAssistantId(conversationId: string, assistantId: string, startTime?: number): void;
|
|
1495
1370
|
setBackendElapsed(conversationId: string, seconds: number): void;
|
|
1496
1371
|
/**
|
|
1497
|
-
* A new chat got its server id: its generation, documents and
|
|
1498
|
-
* `toId`, and it stays the open conversation.
|
|
1372
|
+
* A new chat got its server id: its generation, documents, facts, draft and tab move from
|
|
1373
|
+
* `fromId` (`new`) to `toId`, and it stays the open conversation.
|
|
1499
1374
|
*/
|
|
1500
1375
|
moveConversation(fromId: string, toId: string): void;
|
|
1501
1376
|
setCursor(messageId: string | null): void;
|
|
1502
|
-
setSuggestedQuery(suggestion:
|
|
1377
|
+
setSuggestedQuery(suggestion: ArbiChatState['suggestedQuery']): void;
|
|
1503
1378
|
addQueuedMessage(responseId: string, message: QueuedMessage): void;
|
|
1504
1379
|
acknowledgeQueuedMessage(clientId: string, serverId: string | null): void;
|
|
1505
1380
|
removeQueuedMessage(clientId: string): void;
|
|
@@ -1518,7 +1393,7 @@ interface ArbiSessionStore extends ArbiLayoutActions {
|
|
|
1518
1393
|
setChatModelName(model: string | undefined): void;
|
|
1519
1394
|
/**
|
|
1520
1395
|
* Show a conversation in its thread tab (null: a new chat) at its latest message, opening the tab
|
|
1521
|
-
* when it is not open (`tabs.threads`). Returns the tab's id.
|
|
1396
|
+
* when it is not open (`tabs.threads`); it is also the Threads page's tab. Returns the tab's id.
|
|
1522
1397
|
*/
|
|
1523
1398
|
openThreadTab(conversationId: string | null): string;
|
|
1524
1399
|
/** Close a thread tab; closing the one on screen shows the one beside it, else the thread list. */
|
|
@@ -1555,21 +1430,272 @@ interface ArbiSessionStore extends ArbiLayoutActions {
|
|
|
1555
1430
|
clearConversationError(conversationId: string): void;
|
|
1556
1431
|
/** Stop the conversation's local stream and end its turn. */
|
|
1557
1432
|
abortConversationGeneration(conversationId: string): void;
|
|
1558
|
-
/**
|
|
1433
|
+
/**
|
|
1434
|
+
* Leave the open conversation for a new one (its conversation was deleted): no line, edit, model
|
|
1435
|
+
* or document binding, Personal Assistant mode off.
|
|
1436
|
+
*/
|
|
1559
1437
|
startNewConversation(): void;
|
|
1560
1438
|
}
|
|
1439
|
+
interface ArbiChatStore extends ArbiChatActions {
|
|
1440
|
+
/** The current state. The same object until something in it changes. */
|
|
1441
|
+
getState(): ArbiChatState;
|
|
1442
|
+
/** Be told after each change (once per batch). Returns the unsubscribe. */
|
|
1443
|
+
subscribe(listener: () => void): () => void;
|
|
1444
|
+
/**
|
|
1445
|
+
* `listener`, told after the batch running when it is called (at once outside one): a session
|
|
1446
|
+
* store subscribes its readers to the layout and the rest through this, so a thread tab change
|
|
1447
|
+
* reaches them once.
|
|
1448
|
+
*/
|
|
1449
|
+
settled(listener: () => void): () => void;
|
|
1450
|
+
/** Drop a reader's notification still waiting for a batch to end (it unsubscribed). */
|
|
1451
|
+
forget(listener: () => void): void;
|
|
1452
|
+
/** Run `change`, telling readers once when it is done. */
|
|
1453
|
+
batch<T>(change: () => T): T;
|
|
1454
|
+
/** Resolves once the saved chat state has been read (at once without a `persist`). */
|
|
1455
|
+
hydrated(): Promise<void>;
|
|
1456
|
+
isHydrated(): boolean;
|
|
1457
|
+
/**
|
|
1458
|
+
* Bring back the saved drafts once they can be opened (the person's key is there once signed in
|
|
1459
|
+
* and a workspace is open); a draft typed meanwhile wins over its saved copy. Safe to call often.
|
|
1460
|
+
*/
|
|
1461
|
+
restoreDrafts(): void;
|
|
1462
|
+
/**
|
|
1463
|
+
* The workspace is being left: its turns stop (the server finishes them), and its conversation,
|
|
1464
|
+
* composers, thread tabs, facts, timers and the new chat's documents are dropped. Saved
|
|
1465
|
+
* conversations keep their documents.
|
|
1466
|
+
*/
|
|
1467
|
+
leave(): void;
|
|
1468
|
+
/**
|
|
1469
|
+
* Start over (sign-in, sign-out): everything is dropped and every running turn stopped, except
|
|
1470
|
+
* the agent chats' agents, which another person's sign-in drops.
|
|
1471
|
+
*/
|
|
1472
|
+
reset(): void;
|
|
1473
|
+
}
|
|
1474
|
+
/** What is kept across reloads. */
|
|
1475
|
+
interface ArbiSavedChat {
|
|
1476
|
+
version: 1;
|
|
1477
|
+
/** The pieces an earlier build's own saved state was brought in for (the host's migration). */
|
|
1478
|
+
migrated: string[];
|
|
1479
|
+
conversationId: string | null;
|
|
1480
|
+
cursor: string | null;
|
|
1481
|
+
conversationDocuments: Record<string, ArbiConversationDocument[]>;
|
|
1482
|
+
conversationDocumentAutoAdd: Record<string, boolean>;
|
|
1483
|
+
conversationFacts: Record<string, string[]>;
|
|
1484
|
+
agentChatOwners: Record<string, string>;
|
|
1485
|
+
/** Who the agent chats belong to (null: not known, as in an earlier build's save). */
|
|
1486
|
+
agentChatOwnersUser: string | null;
|
|
1487
|
+
chatModel: string | null;
|
|
1488
|
+
}
|
|
1489
|
+
declare const EMPTY_CHAT_STATE: ArbiChatState;
|
|
1490
|
+
/**
|
|
1491
|
+
* A saved chat state as this build reads it: whatever an earlier or a broken save left is dropped
|
|
1492
|
+
* rather than read. Never throws; null when there is nothing usable.
|
|
1493
|
+
*/
|
|
1494
|
+
declare function parseSavedChat(saved: unknown): ArbiSavedChat | null;
|
|
1495
|
+
/** What of a chat state is saved. */
|
|
1496
|
+
declare function savedChatOf(state: ArbiChatState, migrated: string[], agentChatOwnersUser?: string | null): ArbiSavedChat;
|
|
1497
|
+
interface ArbiChatStoreOptions {
|
|
1498
|
+
/** The layout whose thread tabs the composer moves with. */
|
|
1499
|
+
layout: ArbiLayoutStore;
|
|
1500
|
+
/** Keep the open conversation, the context and the model across reloads. */
|
|
1501
|
+
persist?: ArbiSessionPersist<ArbiSavedChat>;
|
|
1502
|
+
/** Keep the composers' drafts across reloads (see `createSealedDraftStorage`). */
|
|
1503
|
+
draftStorage?: ArbiDraftStorage;
|
|
1504
|
+
/** Where the open conversation is scrolled to, saved with its tab when another one shows. */
|
|
1505
|
+
scrollTop?: () => number | null;
|
|
1506
|
+
/**
|
|
1507
|
+
* The signed-in user (default: the draft storage's owner). The agent chats' agents are kept over a
|
|
1508
|
+
* sign-in of the same person and dropped when another person signs in.
|
|
1509
|
+
*/
|
|
1510
|
+
user?: () => string | null;
|
|
1511
|
+
/** The state to start from (unit tests, a host's initial state); a saved one fills it in. */
|
|
1512
|
+
initial?: Partial<ArbiChatState>;
|
|
1513
|
+
}
|
|
1514
|
+
declare function createArbiChatStore({ layout, persist, draftStorage, scrollTop, user, initial, }: ArbiChatStoreOptions): ArbiChatStore;
|
|
1515
|
+
|
|
1516
|
+
/**
|
|
1517
|
+
* The session's selected workspace (`workspaceId`) and where it stands on the server session
|
|
1518
|
+
* (`workspaceStatus`). `useSwitchWorkspace` moves both; a session store reads them from here.
|
|
1519
|
+
*
|
|
1520
|
+
* The selection is kept per tab (sessionStorage), so a reload stays in the workspace and each tab
|
|
1521
|
+
* can be in a different one; a new sign-in starts with none ({@link ArbiWorkspaceStore.reset}).
|
|
1522
|
+
* The status is never kept: after a reload the server session is new, and
|
|
1523
|
+
* `useOpenSelectedWorkspace` opens the kept selection again.
|
|
1524
|
+
*/
|
|
1525
|
+
|
|
1526
|
+
/** Where the selection is kept across reloads. */
|
|
1527
|
+
interface ArbiWorkspaceStorage {
|
|
1528
|
+
load(): string | null;
|
|
1529
|
+
save(workspaceId: string | null): void;
|
|
1530
|
+
}
|
|
1531
|
+
/** The selection and its status. */
|
|
1532
|
+
interface ArbiWorkspaceState {
|
|
1533
|
+
workspaceId: string | null;
|
|
1534
|
+
workspaceStatus: ArbiWorkspaceStatus;
|
|
1535
|
+
}
|
|
1536
|
+
interface ArbiWorkspaceStore {
|
|
1537
|
+
getState(): ArbiWorkspaceState;
|
|
1538
|
+
subscribe(listener: () => void): () => void;
|
|
1539
|
+
setWorkspaceId(workspaceId: string | null): void;
|
|
1540
|
+
setWorkspaceStatus(status: ArbiWorkspaceStatus): void;
|
|
1541
|
+
/** No workspace, closed (a sign-in or sign-out: the next person starts on the workspace list). */
|
|
1542
|
+
reset(): void;
|
|
1543
|
+
}
|
|
1544
|
+
interface ArbiWorkspaceStoreOptions {
|
|
1545
|
+
storage?: ArbiWorkspaceStorage;
|
|
1546
|
+
/** The selection to start with instead of the kept one. */
|
|
1547
|
+
workspaceId?: string | null;
|
|
1548
|
+
}
|
|
1549
|
+
declare function createArbiWorkspaceStore({ storage, workspaceId, }?: ArbiWorkspaceStoreOptions): ArbiWorkspaceStore;
|
|
1550
|
+
/** The sessionStorage key of the selection (per tab). */
|
|
1551
|
+
declare const WORKSPACE_STORAGE_KEY = "arbi_workspace_id";
|
|
1552
|
+
/** The localStorage key of when each workspace was last opened (per browser). */
|
|
1553
|
+
declare const WORKSPACE_LAST_OPENED_KEY = "arbi_workspace_last_opened";
|
|
1554
|
+
interface BrowserWorkspaceStorageOptions {
|
|
1555
|
+
/** Default {@link WORKSPACE_STORAGE_KEY}. */
|
|
1556
|
+
key?: string;
|
|
1557
|
+
/** Default {@link WORKSPACE_LAST_OPENED_KEY}. */
|
|
1558
|
+
lastOpenedKey?: string;
|
|
1559
|
+
}
|
|
1560
|
+
/**
|
|
1561
|
+
* The browser's: the selection per tab (sessionStorage), and when each workspace was last opened
|
|
1562
|
+
* per browser (localStorage, read with {@link readWorkspaceLastOpened}: "recently opened" is a
|
|
1563
|
+
* history that outlives a tab, the selection deliberately does not).
|
|
1564
|
+
*/
|
|
1565
|
+
declare function browserWorkspaceStorage({ key, lastOpenedKey, }?: BrowserWorkspaceStorageOptions): ArbiWorkspaceStorage;
|
|
1566
|
+
/** When each workspace was last opened in this browser (`external_id` → epoch ms). */
|
|
1567
|
+
declare function readWorkspaceLastOpened(lastOpenedKey?: string): Record<string, number>;
|
|
1568
|
+
|
|
1569
|
+
/**
|
|
1570
|
+
* The session state every block reads and writes: the selected workspace, the layout, the chat (the
|
|
1571
|
+
* open conversation and its composer, generation per conversation, the context documents and facts)
|
|
1572
|
+
* and the documents being viewed and selected.
|
|
1573
|
+
*
|
|
1574
|
+
* An {@link ArbiSessionStore} is the adapter a host gives as its configuration's `session`. It is
|
|
1575
|
+
* made of parts ({@link composeArbiSessionStore}): the layout (`createArbiLayoutStore`), the
|
|
1576
|
+
* workspace (`createArbiWorkspaceStore`), the chat (`createArbiChatStore`) and the documents
|
|
1577
|
+
* ({@link createArbiDocumentSessionStore}, or a host's own over its state). Hosts without state of
|
|
1578
|
+
* their own use {@link createArbiSessionStore}, every part in memory.
|
|
1579
|
+
*/
|
|
1580
|
+
|
|
1581
|
+
/** The document being viewed. */
|
|
1582
|
+
interface ArbiViewingDocument {
|
|
1583
|
+
/** The document (`doc-…`), or a version reference (`doc-…@v2`) while an earlier version shows. */
|
|
1584
|
+
id: string;
|
|
1585
|
+
/** The page being read, when known. */
|
|
1586
|
+
page: number | null;
|
|
1587
|
+
/** The passage being read, when one is. */
|
|
1588
|
+
passageId: string | null;
|
|
1589
|
+
}
|
|
1590
|
+
/** A tab of the document viewer. */
|
|
1591
|
+
type ArbiViewerTab = 'pdf' | 'edit' | 'html' | 'docx' | 'xlsx' | 'versions' | 'preview';
|
|
1592
|
+
/**
|
|
1593
|
+
* The document viewer's own state, shared with whatever opens documents (a citation opens the text
|
|
1594
|
+
* view, Compare from a documents list opens the redline): the open tab, the document compared with
|
|
1595
|
+
* the one viewed, and a tab asked for when a document was opened (applied once it has loaded).
|
|
1596
|
+
*/
|
|
1597
|
+
interface ArbiDocumentViewerState {
|
|
1598
|
+
tab: ArbiViewerTab;
|
|
1599
|
+
/** The document (or version reference) compared with the viewed one, or null. */
|
|
1600
|
+
compareId: string | null;
|
|
1601
|
+
/** A tab to show once `documentId` has loaded (a signature request opens on the PDF). */
|
|
1602
|
+
tabRequest: {
|
|
1603
|
+
documentId: string;
|
|
1604
|
+
tab: ArbiViewerTab;
|
|
1605
|
+
} | null;
|
|
1606
|
+
/** The text view's size, a multiplier of the normal size: a reading preference. */
|
|
1607
|
+
textScale: number;
|
|
1608
|
+
/** A phone user picked the PDF by hand: documents stop opening on the text view. */
|
|
1609
|
+
phonePdfChosen: boolean;
|
|
1610
|
+
}
|
|
1611
|
+
/**
|
|
1612
|
+
* Where the selected workspace stands on the server session: `opening` while a switch waits for
|
|
1613
|
+
* `/open` (the host may cover the page), `open` once workspace-scoped requests may run.
|
|
1614
|
+
*/
|
|
1615
|
+
type ArbiWorkspaceStatus = 'closed' | 'opening' | 'open';
|
|
1616
|
+
/** The documents being viewed and selected. */
|
|
1617
|
+
interface ArbiDocumentSessionState {
|
|
1618
|
+
viewingDocument: ArbiViewingDocument | null;
|
|
1619
|
+
documentViewer: ArbiDocumentViewerState;
|
|
1620
|
+
/** The documents selected in document lists. */
|
|
1621
|
+
selectedDocumentIds: readonly string[];
|
|
1622
|
+
/** The document read in full with each turn (one at a time). */
|
|
1623
|
+
pinnedDocumentId: string | null;
|
|
1624
|
+
}
|
|
1625
|
+
interface ArbiSessionState extends ArbiChatState, ArbiDocumentSessionState, ArbiLayoutState, ArbiWorkspaceState {
|
|
1626
|
+
}
|
|
1627
|
+
/** What to view: page and passage are left unchanged when omitted. */
|
|
1628
|
+
interface ArbiViewingDocumentInput {
|
|
1629
|
+
id: string;
|
|
1630
|
+
page?: number | null;
|
|
1631
|
+
passageId?: string | null;
|
|
1632
|
+
}
|
|
1633
|
+
/** The documents' changes. */
|
|
1634
|
+
interface ArbiDocumentSessionActions {
|
|
1635
|
+
/**
|
|
1636
|
+
* View a document, or none. Viewing another document resets the page; `page` and `passageId`
|
|
1637
|
+
* set them when given.
|
|
1638
|
+
*/
|
|
1639
|
+
setViewingDocument(document: ArbiViewingDocumentInput | null): void;
|
|
1640
|
+
/** Change the document viewer's state; fields not given stay. */
|
|
1641
|
+
setDocumentViewer(change: Partial<ArbiDocumentViewerState>): void;
|
|
1642
|
+
setSelectedDocumentIds(ids: string[]): void;
|
|
1643
|
+
setPinnedDocumentId(id: string | null): void;
|
|
1644
|
+
}
|
|
1645
|
+
/** The documents part of a session store. */
|
|
1646
|
+
interface ArbiDocumentSessionStore extends ArbiDocumentSessionActions {
|
|
1647
|
+
/** The current state. The same object until something in it changes. */
|
|
1648
|
+
getState(): ArbiDocumentSessionState;
|
|
1649
|
+
subscribe(listener: () => void): () => void;
|
|
1650
|
+
/** The workspace is being left: nothing is viewed, selected or pinned. */
|
|
1651
|
+
leave(): void;
|
|
1652
|
+
}
|
|
1653
|
+
interface ArbiSessionStore extends ArbiLayoutActions, ArbiChatActions, ArbiDocumentSessionActions {
|
|
1654
|
+
/** The current state. The same object until something in it changes. */
|
|
1655
|
+
getState(): ArbiSessionState;
|
|
1656
|
+
/** Resolves once the saved layout has been read (at once when none is kept). */
|
|
1657
|
+
layoutHydrated(): Promise<void>;
|
|
1658
|
+
/** Whether the saved layout has been read. */
|
|
1659
|
+
isLayoutHydrated(): boolean;
|
|
1660
|
+
/** Be told when the state may have changed. Returns the unsubscribe. */
|
|
1661
|
+
subscribe(listener: () => void): () => void;
|
|
1662
|
+
setWorkspaceId(id: string | null): void;
|
|
1663
|
+
setWorkspaceStatus(status: ArbiWorkspaceStatus): void;
|
|
1664
|
+
/**
|
|
1665
|
+
* Drop everything scoped to the workspace being left (the open conversation and its generation,
|
|
1666
|
+
* the thread tabs, the viewed document, the selection, the context documents and facts), before a
|
|
1667
|
+
* switch. A host with workspace-scoped state of its own clears that too.
|
|
1668
|
+
*/
|
|
1669
|
+
leaveWorkspace(): void;
|
|
1670
|
+
}
|
|
1561
1671
|
declare const DEFAULT_DOCUMENT_VIEWER_STATE: ArbiDocumentViewerState;
|
|
1562
1672
|
declare const EMPTY_SESSION_STATE: ArbiSessionState;
|
|
1563
1673
|
/** The viewed document itself (`doc-…`), also while one of its earlier versions is on screen. */
|
|
1564
1674
|
declare const selectViewingDocumentId: (state: ArbiSessionState) => string | null;
|
|
1565
1675
|
/** The conversation key drafts and context are kept under: its id, or `new` for a new chat. */
|
|
1566
|
-
declare const conversationKey: (state:
|
|
1676
|
+
declare const conversationKey: (state: Pick<ArbiChatState, "conversationId">) => string;
|
|
1567
1677
|
/** What is typed in the open conversation's composer. */
|
|
1568
|
-
declare const selectDraft: (state:
|
|
1678
|
+
declare const selectDraft: (state: Pick<ArbiChatState, "conversationId" | "drafts">) => string;
|
|
1569
1679
|
/** Whether `conversationId` is generating. */
|
|
1570
|
-
declare const selectIsGenerating: (conversationId: string | null | undefined) => (state:
|
|
1680
|
+
declare const selectIsGenerating: (conversationId: string | null | undefined) => (state: Pick<ArbiChatState, "generating">) => boolean;
|
|
1571
1681
|
/** The next viewing document, given the current one (shared by every store implementation). */
|
|
1572
1682
|
declare function nextViewingDocument(current: ArbiViewingDocument | null, input: ArbiViewingDocumentInput | null): ArbiViewingDocument | null;
|
|
1683
|
+
/** The documents part in memory. */
|
|
1684
|
+
declare function createArbiDocumentSessionStore(initial?: Partial<ArbiDocumentSessionState>): ArbiDocumentSessionStore;
|
|
1685
|
+
/** The layout actions of a session store, on its layout store. */
|
|
1686
|
+
declare function layoutActionsOf(layout: ArbiLayoutStore): ArbiLayoutActions;
|
|
1687
|
+
/** The parts a session store is made of. */
|
|
1688
|
+
interface ArbiSessionParts {
|
|
1689
|
+
layout: ArbiLayoutStore;
|
|
1690
|
+
workspace: ArbiWorkspaceStore;
|
|
1691
|
+
chat: ArbiChatStore;
|
|
1692
|
+
documents: ArbiDocumentSessionStore;
|
|
1693
|
+
}
|
|
1694
|
+
/**
|
|
1695
|
+
* A session store made of its parts: its state is theirs, and readers are told once per change (a
|
|
1696
|
+
* thread tab change moves the layout and the chat: once, after both).
|
|
1697
|
+
*/
|
|
1698
|
+
declare function composeArbiSessionStore({ layout, workspace, chat, documents, }: ArbiSessionParts): ArbiSessionStore;
|
|
1573
1699
|
/** Options of {@link createArbiSessionStore}. */
|
|
1574
1700
|
interface ArbiSessionStoreOptions {
|
|
1575
1701
|
/** Keep the composers' drafts across reloads (see {@link createSealedDraftStorage}). */
|
|
@@ -1583,8 +1709,7 @@ interface ArbiSessionStoreOptions {
|
|
|
1583
1709
|
*/
|
|
1584
1710
|
workspace?: ArbiWorkspaceStore;
|
|
1585
1711
|
}
|
|
1586
|
-
/**
|
|
1587
|
-
declare function layoutActionsOf(layout: ArbiLayoutStore): ArbiLayoutActions;
|
|
1712
|
+
/** An in-memory session store: the default for hosts without state of their own. */
|
|
1588
1713
|
declare function createArbiSessionStore(initial?: Partial<ArbiSessionState>, { draftStorage, persist, workspace, }?: ArbiSessionStoreOptions): ArbiSessionStore;
|
|
1589
1714
|
|
|
1590
1715
|
/** A PATCH of the user settings: only the fields given change (lists are sent whole). */
|
|
@@ -2142,6 +2267,12 @@ interface ArbiHostConfig {
|
|
|
2142
2267
|
* `getEntityLabel`. Absent: the registry's ("Project", "Workspace", "Thread", …).
|
|
2143
2268
|
*/
|
|
2144
2269
|
vocabulary?: EntityVocabulary;
|
|
2270
|
+
/**
|
|
2271
|
+
* What the site calls its assistant where people address it: the `@<name>` offered in a chat's
|
|
2272
|
+
* mention menu, the draft a shared thread starts with, and the name a message is routed to the
|
|
2273
|
+
* assistant on. Absent: "ARBI".
|
|
2274
|
+
*/
|
|
2275
|
+
assistantName?: string;
|
|
2145
2276
|
/**
|
|
2146
2277
|
* Charts and dashboards: more data sources (an external feed, a source relabelled in the site's
|
|
2147
2278
|
* words) and where saved dashboards are kept. Absent: the built-in sources, saved in a database.
|
|
@@ -2774,16 +2905,26 @@ declare function useThreadDocument(): {
|
|
|
2774
2905
|
type WorkspaceUser = components['schemas']['WorkspaceUserResponse'];
|
|
2775
2906
|
/** When the assistant answers in a conversation: every message, or only when @mentioned. */
|
|
2776
2907
|
type AssistantMode = components['schemas']['AssistantMode'];
|
|
2777
|
-
/**
|
|
2908
|
+
/**
|
|
2909
|
+
* What the assistant is called in the composer when the host names it nothing else
|
|
2910
|
+
* (`ArbiHostConfig.assistantName`). The server stores this label with every assistant mention.
|
|
2911
|
+
*/
|
|
2778
2912
|
declare const ASSISTANT_MENTION_LABEL = "ARBI";
|
|
2913
|
+
/** The host's name for its assistant, as people @mention it (`ArbiHostConfig.assistantName`). */
|
|
2914
|
+
declare function useAssistantName(): string;
|
|
2915
|
+
/**
|
|
2916
|
+
* `linkMentions` on this site: a mention of the assistant typed with the host's name for it is a
|
|
2917
|
+
* chip as well as one under the server's stored label (earlier `@ARBI` mentions).
|
|
2918
|
+
*/
|
|
2919
|
+
declare function useLinkMentions(): (content: string, mentions: ReadonlyArray<MessageMentionRef> | null | undefined) => string;
|
|
2779
2920
|
/**
|
|
2780
|
-
* The mention candidates for a workspace: the assistant first, then every
|
|
2781
|
-
* the current user (agents are not mentionable).
|
|
2782
|
-
* inserted `@<label>` matches what the server stores.
|
|
2921
|
+
* The mention candidates for a workspace: the assistant first (as `assistantName`), then every
|
|
2922
|
+
* human member except the current user (agents are not mentionable). People's labels use the
|
|
2923
|
+
* server's display-name rule so the inserted `@<label>` matches what the server stores.
|
|
2783
2924
|
*/
|
|
2784
|
-
declare function buildMentionCandidates(users: ReadonlyArray<WorkspaceUser>, currentUserId: string | null | undefined): MentionCandidate[];
|
|
2925
|
+
declare function buildMentionCandidates(users: ReadonlyArray<WorkspaceUser>, currentUserId: string | null | undefined, assistantName?: string): MentionCandidate[];
|
|
2785
2926
|
/** A workspace's mention candidates, from the cached member list. */
|
|
2786
|
-
declare function cachedMentionCandidates(queryClient: QueryClient, workspaceId: string | null | undefined, currentUserId: string | null | undefined): MentionCandidate[];
|
|
2927
|
+
declare function cachedMentionCandidates(queryClient: QueryClient, workspaceId: string | null | undefined, currentUserId: string | null | undefined, assistantName?: string): MentionCandidate[];
|
|
2787
2928
|
/**
|
|
2788
2929
|
* The assistant mode of a conversation from whatever is cached: its threads response (always
|
|
2789
2930
|
* present once it is open, even when it is not in the cached list, e.g. a thread someone just
|
|
@@ -5613,6 +5754,30 @@ declare function useArbiSession(): ArbiSignedInSession;
|
|
|
5613
5754
|
/** The same for a session the caller holds (the host building its `Arbi` on it). */
|
|
5614
5755
|
declare function useSignedInSession(session: SessionManager | null): ArbiSignedInSession;
|
|
5615
5756
|
|
|
5757
|
+
/**
|
|
5758
|
+
* Storage for the saved UI state: synchronous reads, debounced writes, never throws.
|
|
5759
|
+
*
|
|
5760
|
+
* Reads are synchronous (localStorage) so the store is fully restored inside `create()`, before
|
|
5761
|
+
* React renders anything. There is no "still restoring" phase for the app to wait on, so boot
|
|
5762
|
+
* cannot stall on storage and nothing has to time out.
|
|
5763
|
+
*
|
|
5764
|
+
* Writes are coalesced: zustand calls setItem on every state change, so the value is held and
|
|
5765
|
+
* serialised once, `debounceMs` after the last change (and immediately when the page is hidden,
|
|
5766
|
+
* so a reload or tab close keeps the last change). Every storage failure (quota, disabled
|
|
5767
|
+
* storage, unreadable JSON) is logged and absorbed; the app keeps working from memory.
|
|
5768
|
+
*/
|
|
5769
|
+
|
|
5770
|
+
interface UiStateStorage<S> extends PersistStorage<S> {
|
|
5771
|
+
/** Write every pending value now (page hide, logout). */
|
|
5772
|
+
flush: () => void;
|
|
5773
|
+
}
|
|
5774
|
+
declare function createUiStateStorage<S>(options?: {
|
|
5775
|
+
debounceMs?: number;
|
|
5776
|
+
maxWaitMs?: number;
|
|
5777
|
+
/** The backing store; resolved lazily so environments without localStorage just get none. */
|
|
5778
|
+
backing?: () => Storage | undefined;
|
|
5779
|
+
}): UiStateStorage<S>;
|
|
5780
|
+
|
|
5616
5781
|
/**
|
|
5617
5782
|
* The workspace the app is in: the session's selection, as the workspace list has it, and the
|
|
5618
5783
|
* signed-in person's membership in it.
|
|
@@ -8743,15 +8908,16 @@ declare function registerArbiMutationDefaults(queryClient: QueryClient, client:
|
|
|
8743
8908
|
* Whether a package query is worth persisting for an offline start (a host's
|
|
8744
8909
|
* `shouldDehydrateQuery`): the documents lists, documents, their versions and near-duplicate
|
|
8745
8910
|
* pairs (metadata, never a document's content), the workspace list (its keys stay wrapped), the
|
|
8746
|
-
* user settings and the
|
|
8911
|
+
* user settings, the projects and the entitlements.
|
|
8747
8912
|
*/
|
|
8748
8913
|
declare function isOfflineReadableArbiQuery(queryKey: QueryKey): boolean;
|
|
8749
8914
|
/**
|
|
8750
8915
|
* Whether a persisted package query may be restored when the app starts online. Not a documents
|
|
8751
8916
|
* list (it is never re-read on its own, so a stale copy would be trusted all session: it loads
|
|
8752
8917
|
* fresh instead), nor a document saved while still processing (its saved freshness would keep it
|
|
8753
|
-
* "processing" with no re-read)
|
|
8754
|
-
*
|
|
8918
|
+
* "processing" with no re-read), nor the entitlements (kept for an offline start only: online they
|
|
8919
|
+
* are read fresh, so a plan bought since shows at once). The other families (the workspace list,
|
|
8920
|
+
* the settings) always. Offline, everything persisted is restored.
|
|
8755
8921
|
*/
|
|
8756
8922
|
declare function isRestorableArbiQueryOnline(queryKey: QueryKey, data: unknown): boolean;
|
|
8757
8923
|
|
|
@@ -10906,6 +11072,11 @@ declare function useEntitlements(): _tanstack_react_query.UseQueryResult<NoInfer
|
|
|
10906
11072
|
host_calls: boolean;
|
|
10907
11073
|
reason?: ("pro_required" | "external_user" | "not_entitled") | null;
|
|
10908
11074
|
}>, Error>;
|
|
11075
|
+
/**
|
|
11076
|
+
* Read the entitlements again: after something that changes them (Pro bought, a plan change), so
|
|
11077
|
+
* the paid pages open at once instead of waiting out the cached copy.
|
|
11078
|
+
*/
|
|
11079
|
+
declare function useInvalidateEntitlements(): () => Promise<void>;
|
|
10909
11080
|
/** Whether the person may use `feature` (false while unknown, so nothing the API would refuse flashes up). */
|
|
10910
11081
|
declare function useIsEntitled(feature: EntitledFeature): boolean;
|
|
10911
11082
|
/** Why the paid features are off, in the words a UI shows. */
|
|
@@ -16142,4 +16313,4 @@ declare function finishEntityExtraction(docIds: readonly string[]): void;
|
|
|
16142
16313
|
/** The documents being extracted now. */
|
|
16143
16314
|
declare function useEntityExtractionDocIds(): readonly string[];
|
|
16144
16315
|
|
|
16145
|
-
export { AGENT_CONTROL_COMMANDS, AGGREGATE_FIELDS, ALLOWED_PORTAL_ORIGINS, ARCHIVE_POLL_MS, ASSISTANT_MENTION_LABEL, AUDIO_MIME_PREFERENCE, AUTO_CHAT_MODEL, type AccessRequestPayload, type AccessRequestRecipient, type AccountClient, type AccountClientContextValue, type AccountHost, type AccountSession, type AccountSignOutOptions, ActiveCall, type ActivityContent, type ActivityDescription, ActivityFeed, type ActivityFeedProps, type AddWorkspaceMembersRequest, type AgentAccessMode, type AgentConfigSections, type AgentControlMaps, AgentDmStatus, type AgentQuestionRef, type AgentRunControlState, type AggregateOp, type AggregatedDailyUsage, type AggregatedModelGroupUsage, AiActionCard, AiAnswer, type AiRunOptions, type AiTaskStatus, AppNotification, AppleIcon, type ApplyCallEventOptions, ArbiBotHeadIcon, ArbiBotIcon, type ArbiChatCitation, type ArbiChatDocument, type ArbiChatHost, type ArbiChatMessage, type ArbiChatMessageStatus, type ArbiChatPassage, type ArbiChatRole, type ArbiChatThread, type ArbiConversation, type ArbiConversationDocument, type ArbiConversationGeneration, type ArbiDmTab, type ArbiDocumentViewerState, type ArbiDraftStorage, type ArbiFeature, type ArbiFeatures, type ArbiGridLayoutState, ArbiHost, type ArbiHostConfig, ArbiHostConnection, ArbiHostProps, type ArbiKeyValueStorage, type ArbiLayoutActions, type ArbiLayoutState, type ArbiLayoutStore, type ArbiLayoutStoreOptions, type ArbiMessageTimer, type ArbiPanelMode, type ArbiPanelsState, type ArbiSavedLayout, type ArbiSessionPersist, type ArbiSessionState, type ArbiSessionStatus, type ArbiSessionStore, type ArbiSessionStoreOptions, type ArbiShellState, type ArbiSidebarState, type ArbiSignedInSession, type ArbiTabsState, type ArbiThreadComposer, type ArbiThreadTab, type ArbiThreadTabShow, type ArbiThreadTabView, type ArbiThreadTabsController, type ArbiThreadTabsState, type ArbiThreadView, type ArbiViewerTab, type ArbiViewingDocument, type ArbiViewingDocumentInput, type ArbiViewsState, ArbiWebSocketProvider, type ArbiWebSocketProviderProps, type ArbiWorkspaceState, type ArbiWorkspaceStatus, type ArbiWorkspaceStorage, type ArbiWorkspaceStore, type ArbiWorkspaceStoreOptions, type ArbiWsState, type ArbiWsStatus, ArtifactCanvas, type AskAgain, type AspectOption, type AssignDocTagsInput, type AssistantMode, AudIcon, type AudioPiece, type AvatarCrop, type AvatarFileProblem, BOOT_GATE_TIMEOUT_MS, BOX_SEAT_REFUSED, BOX_SEAT_REFUSED_ACTION, BOX_SEAT_REFUSED_TITLE, BUILTIN_DATA_SOURCES, type BranchNavigation, type BranchPoint, type BrowserWorkspaceStorageOptions, type BuildArchiveInput, type BuiltArchive, CALL_MODERATION_TOPIC, CONVERSATION_SWITCH_MEASURE, type CalendarConnectorSupport, type CalendarNotificationMeta, type CalendarOfflineSupport, type CalendarPendingWrite, type CalendarSupport, type CalendarWriteOp, type CallInviteContact, type CallMutedNotice, type CallRoomEvents, type CallSlotMode, type CallUserPillProps, type CallsHost, type ChartSpec, type ChartType, type ChatArrival, ChatBubble, type ChatBubbleProps, ChatMemberKey, type ChatPost, ChatResponse, type ChatSummary, ChatThreadMessage, type Chunk, type ChunkActivation, type ChunkedRecorder, type ChunkedRecorderOptions, CitationRenderer, type CitationRendererProps, type CitationState, ClaudeIcon, CommandPalette, type CommandPaletteClassNames, type CommandPaletteProps, CommandPaletteProvider, type CommandPaletteProviderProps, type CommandPaletteValue, type ConfigUpdate, type ConversationActionsInput, type ConversationEvent, ConversationList, type ConversationListProps, ConversationScope, type ConversationScopeProps, type ConversationsSourceLabels, type CreateProjectVars, type CreateSkillPackOptions, type CreateTagInput, type CreateWorkspaceVars, type CreatedProject, type CropArea, type CropOutput, type CropResult, type CurrentWorkspace, DATABASE_RELATION_PICK_LIMIT, DATABASE_ROWS_PAGE, DEFAULT_ASPECT_OPTIONS, DEFAULT_CONVERSATIONS_SOURCE_LABELS, DEFAULT_DATABASE_SOURCE_LABELS, DEFAULT_DOCUMENTS_SOURCE_LABELS, DEFAULT_DOCUMENT_VIEWER_STATE, DEFAULT_PASSWORD_CHANGE_FORM_MESSAGES, DEFAULT_PROJECTS_SOURCE_LABELS, DEFAULT_USAGE_SOURCE_LABELS, DEFAULT_WORKSPACES_SOURCE_LABELS, DISMISSED_TASK_TTL_MS, DOCUMENTS_FIRST_PAGE_MEASURE, DOCUMENTS_FIRST_PAGE_SIZE, DOCUMENTS_PAGE_SIZE, type DashboardSpec, type DashboardStore, type DashboardsHost, type DataSource, type DataSourceFieldsState, type DataSourceOption, type DataSourceParam, type DataSourceParams, type DataSourceRef, type DataSourceRegistry, type DatabaseAggregateRequest, type DatabaseAggregateResult, type DatabaseDashboardStoreOptions, type DatabaseSourceLabels, type Dataset, type DatasetField, type DatasetFieldType, type DatasetFilter, type DatasetOrder, type DatasetQuery, type DatasetRow, type DatasetSort, type DatasetState, type DatasetValue, DateSeparator, type DateSeparatorProps, type DebouncedWriter, type DebouncedWriterOptions, type DeleteAccountBlocker, type DeleteAccountFlow, type DeletedDocument, type DeletedDocumentsPage, type DescribeCalendarNotificationOptions, type DescribeServerNotificationOptions, DictateContextValue, DmAvatar, type DmAvatarProps, type DmClassNames, DmComposer, type DmComposerProps, type DmConversation, type DmMessage, type DmUser, DocIcon, DocQaPanel, DocSearch, DocumentCardMenu, type DocumentCardMenuProps, type DocumentHostActions, type DocumentPerson, DocumentReview, type DocumentReviewProps, type DocumentRowChange, type DocumentStartItem, type DocumentsSourceLabels, type DocumentsSupport, type DraftKeyValueStore, DraftTitleControls, type DraftTitleControlsProps, EMPTY_GROUP_LABEL, EMPTY_SESSION_STATE, EXPORT_SAMPLE_RATE, type EmailChange, type EmailPreferences, EmlIcon, type EnableDriveSyncVars, type EnableMailboxSyncVars, type EntitledFeature, EntityIconComponent, EntityVocabulary, type ExportDownloadRequest, type ExportFileKind, type ExtractedZip, FACTS_SEARCH_VIEW, FILE_TYPE_COLORS, FINISHED_DOCUMENT_STATUSES, FIRST_TOKEN_MEASURE, type FactListFilter, type FactSearchHit, type FactsSearch, type FactsSearchState, type FeatureEntitlements, type FeatureRefusal, type FeatureSource, type FeatureSwitch, FileIcon, type FilterOp, FireworksIcon, type FollowSaveCallbacks, GeminiIcon, type GenerateDocTagsInput, GitHubIcon, GoogleIcon, type GrantAgentAccessVars, HostConfigRecord, HtmlIcon, IN_FLIGHT_DOCUMENT_STATUSES, IdentityPurchase, IdentityStatus, IdentityStep, type IdentityVerificationApi, IdentityVerificationFlow, ImageCropModal, type ImageCropModalProps, ImageCropper, type ImageCropperProps, ImgIcon, IncomingCall, InlineMicButton, type InlineMicButtonProps, type InstallSkillPackVariables, JoinChoices, LIVE_UPDATE_TYPES, LinkedInIcon, type LiveTask, type LocalFeatureStore, type LocalFeatureStoreOptions, MAIL_DRAFT_REPLACED_EVENT, MAX_AVATAR_FILE_BYTES, MAX_DASHBOARD_SPEC_CHARS, MAX_SERIES, MAX_THREAD_TABS, MIN_NARRATION_DWELL_MS, MIN_QUEUED_MESSAGE_VISIBILITY_MS, MODEL_GROUP_LABELS, MUTED_DEDUPE_MS, type MailAccount, type MailAddress, type MailAttachment, type MailClient, type MailClientContextValue, type MailCompose, type MailDeliveryRecipient, type MailDeliveryStatus, type MailDeviceFallback, type MailDraftEditorRequest, type MailDraftEditorSession, type MailFetch, type MailFolder, type MailHost, type MailMessage, type MailMessageUpdate, MailOfflineUnavailableError, type MailPage, type MailPolicy, type MailProject, MeetingChatRef, MeetingChatTarget, MentionCandidate, type MessageArtifact, MessageArtifactCard, type MessageTimerResult, MicRecordingOverlay, type MicRecordingOverlayProps, MicWaveformIndicator, type MicWaveformIndicatorProps, type ModeratedTrack, type MountDiditOptions, type NameEditor, type NotificationPreferencesModel, type NotificationTarget, type NotificationTypeMeta, NotifyVariant, type OfflineDocumentRecord, OpenAIIcon, type OpenedRecording, type OptimisticDocumentEdit, type OrderResolver, PENDING_SYNC_PREDICATE, PLAYBACK_LOOKAHEAD_MS, POLL_EVERY_MS, PROJECT_CREATION_DENIED_REASON, type PaletteNavItem, type PanelDatasetState, type PanelSpec, type ParsedChunk, type ParsedChunkMetadata, type ParsedDocument, type ParsedDocumentMetadata, type PassageResolvers, type PasswordChangeForm, type PasswordChangeFormMessages, type PasswordChangeVars, PdfIcon, type PendingSyncItem, type PeopleDirectory, type Person, PhotoCapture, type PhotoCaptureProps, type ProcessingTask, type ProfileView, type ProjectsSourceLabels, type ProjectsSourceOptions, type ProjectsUsageAggregate, type QueuedCalendarWrite, type QueuedMessage, type QueuedMessages, type QuoteResolver, RECORDING_SEGMENTER, RUN_WINDOW_MS, type RawPending, type RecordedChunk, type RecordingWindow, type RefusedUploadFile, type RelatedDocs, type RelatedDocsMap, type RelevancePatch, type RemoveDocTagsInput, type RenderMarkdown, type RequestAccessOptions, type RowsSourceDefinition, type RowsState, SEGMENT_FRAME_MS, SEGMENT_PRE_ROLL_MS, SHORT_PIECE_MERGE_GAP_MS, SIGNATURE_NOTIFICATION_TYPES, SIMILARITY_THRESHOLD, SLOW_AFTER_MS, STILL_WORKING, type SaveAgentConfigVars, type SavedDashboard, type SealedDraftStorageOptions, type SearchMode, SearchSession, SearchStatus, SegmenterConfig, type SemanticSearch, type SemanticSearchOptions, type SendMessageOptions, type SequencedRow, type SequencedTask, type ServerNotificationBellOptions, type ServerNotificationDescription, type ShellRecentWorkspaceItem, type ShellWorkspaceItem, type ShellWorkspaceKind, type ShellWorkspaceMember, type ShellWorkspaceSeed, type ShellWorkspaceSource, type SignatureNotificationType, type SkillPack, type SkillPackEntry, type StartTaskQuery, StorageActionError, type StorageActions, type StorageDeploymentUsage, type StorageItem, type StorageItemKind, type StorageItemState, type StorageItemsQuery, type StorageKindUsage, type StoragePersistOptions, type StorageProjectUsage, type StorageScope, type StorageSnapshot, type StreamHandlerContext, type StreamHandlerParams, type StreamHandlers, type StreamState, type SwitchWorkspaceTarget, TRANSFER_POLL_MS, type TableView, type TableViewTable, TaskThreadPendingError, type ThreadAccessors, ThreadBinding, type ThreadItem, type TimeBucket, type TimelinePart, type ToolResponses, type TrackCutter, type TrackPiece, type TranscriptExportLine, type TranscriptLineRef, type TranscriptSegmentMarker, type TransferConflictPolicy, type TransferKind, type TransferMode, type TransferPlan, type TransferScope, type TransferStatus, type TurnTarget, type TurnTools, TxtIcon, TypingIndicator, UPLOAD_ACCEPT, UPLOAD_MAX_FILE_SIZE, type UnarchiveEstimate, type UpdateDocTagInput, type UpdateDocumentsInput, type UpdateProfileVars, type UploadDocumentsInput, type UploadFilesInput, type UploadFilesProgress, type UploadFilesResult, type UploadFromUrlsInput, type UploadFromUrlsResult, type UploadRefusal, type UploadUrlsInput, type UsageSourceLabels, type UsageTotals, type UseArbiShellWorkspacesOptions, type UseAskAgainOptions, type UseAvatarCropOptions, type UseCameraStreamResult, type UseConversationOptions, type UseDeleteAccountFlowOptions, type UseDownloadDocumentsOptions, type UseEmailChangeOptions, type UseFactsSearchOptions, type UseIdentityVerificationFlowOptions, type UseMessageTimerOptions, type UseNameEditorOptions, type UsePasswordChangeFormOptions, type UseShellWorkspacesOptions, type UseShellWorkspacesResult, type UseSwitchWorkspaceResult, type UseVideoRecorderResult, type UserResponse, type UserSettingFlag, type UserSettingsPatch, VIDEO_MIME_PREFERENCE, VidIcon, VideoCapture, type VideoCaptureProps, type VideoRecorderState, VoiceNoteRecorder, type VoiceNoteRecorderProps, WORKSPACE_LAST_OPENED_KEY, WORKSPACE_STORAGE_KEY, WORK_NOTIFICATION_LABELS, type WorkspaceArchive, type WorkspaceArchiveState, type WorkspaceDocument, type WorkspaceExport, type WorkspaceMember, type WorkspaceNotificationLevel, type WorkspaceProcessing, type WorkspaceRole, type WorkspaceSwitchContext, type WorkspaceUpdate, type WorkspacesSourceLabels, XlsIcon, type ZipExtractor, __resetPendingFinalCommitsForTests, __resetStreamingTokenBufferForTests, acceptRing, accountPath, addAssistantMessageToCache, addConversationToList, addUserMessageToCache, adjustTagCounts, adoptNewChatDocument, agentControl, aggregateDataset, aliasTakenMessage, allConversationThreads, annotateThread, announceMailDraftReplaced, appendTokenToMessage, applyCallEvent, applyConversationEvent, applyFinalContextToMessage, applyLiveUpdate, applyNotificationRow, applyOptimisticDocumentEdit, applyOutputItemToMessage, applyTaskEvent, arbiAccountClient, arbiMailClient, archiveName, archivedWorkspaceMessage, bindThreadDocument, boundDocumentOf, browserWorkspaceStorage, bucketOf, bucketRange, buildDocumentMetadataRows, buildMentionCandidates, buildPendingFirstTurn, buildPendingSyncItem, buildWorkspaceArchive, cacheThreadBinding, cachedAssistantMode, cachedMentionCandidates, cachedQuotaUsedUp, calendarNotificationMeta, callLink, callNotificationMeta, captureFrameAsBlob, chatTranscriptRef, classifyMediaError, clearLoadingState, clearSealedDrafts, clearUserInputRequest, clockTime, closePanelIn, commitFinalMessage, completeQueuedUserMessageByContent, compositeFiles, compositeTrack, connectOAuthCalendarAccount, connectorErrorStatus, connectorReturnTo, conversationKey, createArbiLayoutStore, createArbiSessionStore, createArbiWorkspaceStore, createChunkedRecorder, createConversationsSource, createDataSourceRegistry, createDatabaseSource, createDebouncedWriter, createDocumentsSource, createLocalFeatureStore, createMailClient, createMemoryDashboardStore, createMutedNotifier, createProjectsSource, createSealedDraftStorage, createSkillPack, createStoragePersist, createStreamHandlers, createTrackCutter, createUsageSource, createWorkspaceSwitch, createWorkspacesSource, cropImage, cutAtPauses, dayKey, declineRing, decodeMono16k, defaultLayoutState, defaultMailAlias, defineRowsSource, deploymentUserMeta, describeActivity, describeCalendarNotification, describeServerNotification, discardStreamingTokensForMessage, disconnectAttachedRun, dmTabId, documentActivityMeta, documentActivityPhrase, documentDisplayName, docxMentionMeta, downloadRecoveryFile, dropTagFromCachedDocuments, encodeWav, ensureAssistantMessageLoading, entitlementRefusal, extensionFor, extractZipFile, fallbackFileName, fetchPart, fileAttachment, fileSafe, filesFromDrop, fillTimeGaps, filterRows, findConversation, finishEntityExtraction, floatToWav, flushOnPageExit, flushStreamingTokens, forgetDocuments, forgetUploadedDocumentFolder, formatConfigValidationError, formatElapsed, formatIdentityPrice, formatTranscriptMarkdown, getCachedDocuments, getInterjectionText, getNotificationTypeMeta, getOfflineDocument, getOrphanedLastMessage, getRelatedLabels, getRelatedTotal, getRunStartedAt, getThreadsQueryKey, getWorkspaceActionText, getWorkspaceKind, getWorkspaceSentPhrase, hasPendingFinalCommit, hasRecordingTranscript, hasVideoTrack, identityStepFor, inputRequestTitle, invalidateCalendarEvents, invalidateCalendars, invalidateCall, invalidateConversationActivity, invalidateConversationDetails, invalidateConversationLists, invalidateTagData, invalidateTagTables, isActivityKey, isAliasTakenError, isArchiveMoving, isCommentToPeople, isConversationListKey, isConversationShared, isDeploymentAdmin, isDeploymentUserNotification, isDocumentsLoading, isFullConfig, isMessageRunning, isNotificationRow, isOfflineReadableArbiQuery, isOrphanedUserMessage, isPanelOpen, isQueuedCalendarWrite, isRecordingSegmentId, isReplayableArbiMutation, isRestorableArbiQueryOnline, isRowNewer, isSignatureNotificationType, isStaleTaskUpdate, isTableViewOf, isTransferFinished, isTransferResumable, isUsageMetered, isWorkspaceArchivedError, isWorkspaceGuestOf, isWorkspaceNotificationType, isZipFile, joinFromPreJoin, layoutActionsOf, loadOfflineDocument, mailDraftIdFromContent, mailJson, markMessageAsFailed, markNarrationSettled, mergeHostConfig, migrateLegacyThreadDocuments, mountDiditVerification, mutedNoticeFromEvent, mutedNoticeFromPacket, mutedNoticeText, nextAliasSuggestion, nextViewingDocument, notificationUserName, onCallEvent, openAccessRequest, openCall, openPanelIn, openRecording, panelPlace, parseActivityContent, parseDashboardSpec, parseDeleteAccountBlockers, parseSavedLayout, partKey, partsDue, patchCachedDocument, patchConversation, patchConversationList, patchDocuments, patchWorkspaceTags, pendingChatModelSave, peopleDirectory, personOfUser, pickRecentWorkspaces, pickRecorderMimeType, playheadAt, postRecordingDocsToThread, postTranscriptToThread, prepareUploadFiles, queryOfChart, queuedMessages, readLocalFeature, readWorkspaceLastOpened, recordingFiles, recordingWindowsOf, recordsOf, redlineStats, refreshDocuments, refuseChatWhenOffline, registerArbiMutationDefaults, registerAttachedRun, removeConversationFromLists, removeSettledNarration, requestPersistentStorage, resetCalendarAccountSyncState, resetMessageContent, resolveActiveWorkspace, resolveConfigModel, resolveDocumentStatus, resolveReplyTarget, restoreLayout, rollbackOptimisticDocumentEdit, safePortalUrl, saveRecordingFilesToThread, savedLayoutOf, schedulePart, selectDraft, selectIsGenerating, selectViewingDocumentId, serializeDashboardSpec, serverCallsExperimental, serverNotificationBellEntry, setCachedDocument, setMessageContent, setUserInputRequest, settledByRows, signatureNotificationPhrase, signatureRequestMeta, sortTranscriptMessages, sortedParts, speakerTracks, speakerWav, splitIntoFiles, standalone, startChatCall, startContactsCall, startDmCall, startEntityExtraction, startThreadCall, startsMediaFile, stopDocumentsLoading, stripSpeakerPrefix, subscribeDocumentReads, subscribeDocumentRows, supersedeLiveTranscript, supersededTranscriptLines, supportsHouseTemplates, textToArtifact, threadBinding, threadEndingAtContains, threadTabId, threadTranscriptLines, threadTranscriptRef, timelineDurationMs, timelineOf, titleFromQuestion, toChatCitations, toNotificationPreferences, toProfileView, toRedlineMarkdown, toShellWorkspace, transcribeRecording, transcriptSegmentOf, updateMessageWithMetadata, updateUserMessageInCache, updateUserMessageStateInCache, uploadFolderOf, uploadedDocumentFolder, upsertDocuments, useAccountClient, useActOnStep, useActiveConfigId, useActivity, useAddChatMembers, useAddDatabaseRows, useAddHolidayCalendar, useAddProjectAddonBlock, useAddWorkspaceMembers, useAddonQuote, useAgentChats, useAgentConfig, useAgentDmStatus, useAgentModels, useAgentRunControl, useAgentSession, useAgentWorkspaces, useAgents, useAiTask, useAnswerAgentQuestion, useApplyChatModel, useArbi, useArbiConnected, useArbiHost, useArbiSession, useArbiSessionState, useArbiSessionStore, useArbiShellWorkspaces, useArbiWebSocket, useArbiWsContext, useArbiWsMessage, useArbiWsStatus, useArbiWsStore, useArchiveProgressPolling, useArchiveWorkspace, useAskAgain, useAssignDocTags, useAssistantQuery, useAuthorizeLimits, useAutoSendDraft, useAvailableModels, useAvatarCrop, useBookingPages, useBootTimeout, useBoxRole, useBranchNavigation, useBuiltinCommands, useCalDavProfiles, useCalendarAccounts, useCalendarEvent, useCalendarEventByUid, useCalendarEvents, useCalendarInvitations, useCalendarOutbox, useCalendarOverlays, useCalendarSettings, useCalendarShares, useCalendarSupport, useCalendars, useCall, useCallInviteLinks, useCallRecording, useCallRecordings, useCallTranscriptionAvailable, useCallsConfig, useCallsEnabled, useCameraStream, useCanCreateProjects, useCanEditShared, useCanHostCalls, useCancelDriveSync, useCancelMailboxSync, useCancelManyPendingSync, useCancelProjectSubscription, useCancelWorkspaceTransfer, useChangeProjectPlan, useChargeWatch, useChatArrivals, useChatPost, useChatSummaries, useChatThread, useChatUnreadTotal, useChats, useClaimNativeAlias, useClaimSecureMail, useCloseAgentSession, useCommandPalette, useConfig, useConfigSchema, useConfigs, useConfirmEmailChange, useConnectCalDavAccount, useConnectMailAccount, useConnectOAuthAccount, useConnectRunStream, useConnectorAutoSync, useConnectorCatalog, useConnectorVendorVisibility, useContacts, useConversation, useConversationActions, useConversationActivity, useConversationData, useConversationDocuments, useConversationIsShared, useConversationItems, useConversationPendingAuth, useConversationSearch, useConversationThreads, useConversationTurn, useConversationUsage, useConversations, useCreateAgent, useCreateCalendar, useCreateContact, useCreateDatabase, useCreateEvent, useCreateFact, useCreateFacts, useCreateGroupChat, useCreateProject, useCreateProjectCheckout, useCreateRoom, useCreateTag, useCreateWork, useCreateWorkflow, useCreateWorkspace, useCurrentSessionId, useCurrentUser, useCurrentWorkspace, useDashboardStore, useDataSources, useDatabase, useDatabaseAggregate, useDatabaseDashboardStore, useDatabaseRows, useDatabases, useDecideCounter, useDeleteAccount, useDeleteAccountFlow, useDeleteAgents, useDeleteBookingPage, useDeleteCalendar, useDeleteChatMessage, useDeleteConfig, useDeleteContact, useDeleteConversation, useDeleteDashboard, useDeleteDatabase, useDeleteDatabaseRows, useDeleteDocuments, useDeleteEvent, useDeleteFact, useDeleteMessage, useDeleteNotifications, useDeleteProject, useDeleteSkill, useDeleteTag, useDeleteWorkflow, useDeleteWorkspaces, useDeploymentDomain, useDirectModelUsage, useDisconnectCalendarAccount, useDisconnectConnector, useDisconnectMailAccount, useDisconnectSlack, useDismissedTips, useDocument, useDocumentAutoAdd, useDocumentHostActions, useDocumentPendingSync, useDocumentThumbnails, useDocumentVersionList, useDocuments, useDocumentsById, useDocumentsLoading, useDocumentsSupport, useDownloadDocuments, useDriveFolderChildren, useDriveFolderDocCount, useDriveFolders, useDriveSyncEstimate, useDriveSyncProgress, useEmailChange, useEnableDriveSync, useEnableMailboxSync, useEntitlements, useEntityExtractionDocIds, useExportDatabase, useExtractEntities, useFacts, useFactsSearch, useFeature, useFeatureSwitch, useFetchCalendarEvent, useFilteredProjects, useFinaliseTranslation, useFindTime, useFirmPool, useFollowThread, useFreeBusy, useGenerateAgentAvatar, useGenerateDocTags, useGrantAgentAccess, useHealth, useHolidayCountries, useHouseTemplateCandidates, useIdentityVerification, useIdentityVerificationFlow, useImportCalendar, useImportContacts, useImportDatabase, useImportDatabaseRows, useInstallSkillPack, useInvalidateAfterTransfer, useInvalidateProjects, useInvalidateStorage, useInvalidateTagData, useInviteContacts, useIsCreatingTag, useIsEntitled, useIsSlow, useIsWorkspaceOwner, useKeepDocumentsOffline, useLinkContact, useMailAccounts, useMailAttachmentText, useMailCache, useMailClient, useMailDraftCompose, useMailDraftEditor, useMailDraftReplaced, useMailFolders, useMailMessage, useMailMessages, useMailOnline, useMailPolicy, useMailProjects, useMailUnlock, useMailboxFolders, useMailboxSyncProgress, useMarkChatRead, useMarkDocumentShared, useMarkNotificationsRead, useMcpTools, useMeetingReadOnly, useMentionCandidates, useMessageDetails, useMessageTimer, useModelConnections, useMoveEvent, useMoveWorkspaceToProject, useMyConnectors, useNameEditor, useNotificationPreferences, useNotifications, useNotifyConversation, useOfflineDocumentIds, useOpenCallMeetingChat, useOpenSelectedWorkspace, useOpenViewerDocumentId, usePanelDataset, useParsedDocument, usePassageQuotes, usePasswordChange, usePasswordChangeForm, usePendingContacts, usePendingSyncCounts, usePendingSyncItems, usePeople, usePeopleSearch, usePlanQuote, usePlanWork, usePlanWorkspaceTransfer, usePreviewProjectPlanChange, useProcessingTask, useProcessingTasks, useProducts, useProfile, useProjectBillingPortal, useProjectConversationUsage, useProjectEvents, useProjectInvoices, useProjectUsage, useProjects, useProjectsUsage, usePublishCalendar, useRecordingActions, useRecordingWindows, useRefreshCalendar, useRefreshConnectorsOnRunEnd, useRefreshDocuments, useRefreshProject, useRelatedDocuments, useRemoveChatMember, useRemoveDocTags, useRemoveDocumentsOffline, useRemoveModelConnection, useRemoveWorkspaceMembers, useRenameChat, useRenameFolder, useRequestEmailChange, useRequestWorkspaceAccess, useRespondToEvent, useResumeCalendarAccountConnect, useResumeWorkspaceTransfer, useRevokeAgentAccess, useRevokeCallInviteLink, useRooms, useRunConversation, useRunWorkflow, useSaveAgentConfig, useSaveBookingPage, useSaveCalendarSettings, useSaveConfig, useSaveConfigField, useSaveDashboard, useSaveMailDraft, useSaveModelConnection, useSaveSkill, useSaveToThread, useSavedDashboards, useSearchContacts, useSearchDatabaseRows, useSearchFacts, useSemanticSearch, useSendBackStep, useSendMail, useServerCallsEnabled, useServerCallsExperimental, useSessionPageTab, useSessionView, useSessions, useSetDeploymentHouseTemplate, useSetSkillVisibility, useSetTagValues, useSetWorkspaceHouseTemplate, useSetWorkspaceMemberRoles, useShareCalendar, useShellWorkspaces, useSignOut, useSignedInSession, useSimilarDocuments, useSkillSource, useSkills, useSlackConnection, useStartAgentSession, useStartCalendarAccountOAuth, useStartTaskQuery, useStartWorkspaceTransfer, useStorageActions, useStorageItemNames, useStorageItems, useStorageProjects, useStorageSnapshots, useStreamHandlers, useSubscribeCalendar, useSwitchWorkspace, useSyncAccountsOnOpen, useSyncCalendarAccount, useTagKindSchema, useTags, useTerminateSession, useThinkingContent, useThreadDocument, useThumbnails, useTopUpFirmPool, useTransientView, useTriggerDriveSync, useTriggerMailboxSync, useUnarchiveWorkspace, useUnlockModelConnections, useUnreadByPeer, useUnshareCalendar, useUpdateCalendar, useUpdateCalendarAccount, useUpdateContact, useUpdateConversation, useUpdateDatabase, useUpdateDatabaseRow, useUpdateDocTag, useUpdateDocuments, useUpdateEvent, useUpdateFact, useUpdateMailMessage, useUpdateProfile, useUpdateProjectAddonSettings, useUpdateProjectFields, useUpdateProjectNextPeriodAddons, useUpdateTag, useUpdateTagKindSchema, useUpdateUserSettings, useUpdateWorkflow, useUpdateWorkspace, useUploadDocuments, useUploadFiles, useUploadFromUrls, useUploadSkillFiles, useUploadUrls, useUserSettings, useUserUsageToday, useVideoRecorder, useWorkItems, useWorkNotifications, useWorkflowRuns, useWorkflows, useWorkspaceActivity, useWorkspaceArchive, useWorkspaceDocs, useWorkspaceExportDownload, useWorkspaceNotificationLevel, useWorkspaceProcessing, useWorkspaceRole, useWorkspaceTransfer, useWorkspaceTransfers, useWorkspaceTrash, useWorkspaceUsers, useWorkspaces, userDisplayName, userInitials, viewsOfTable, waitForResponseId, wipeOfflineDocuments, withRelativePath, workflowStepOf, workspaceHouseTemplateId, writeSamples };
|
|
16316
|
+
export { AGENT_CONTROL_COMMANDS, AGGREGATE_FIELDS, ALLOWED_PORTAL_ORIGINS, ARCHIVE_POLL_MS, ASSISTANT_MENTION_LABEL, AUDIO_MIME_PREFERENCE, AUTO_CHAT_MODEL, type AccessRequestPayload, type AccessRequestRecipient, type AccountClient, type AccountClientContextValue, type AccountHost, type AccountSession, type AccountSignOutOptions, ActiveCall, type ActivityContent, type ActivityDescription, ActivityFeed, type ActivityFeedProps, type AddWorkspaceMembersRequest, type AgentAccessMode, type AgentConfigSections, type AgentControlMaps, AgentDmStatus, type AgentQuestionRef, type AgentRunControlState, type AggregateOp, type AggregatedDailyUsage, type AggregatedModelGroupUsage, AiActionCard, AiAnswer, type AiRunOptions, type AiTaskStatus, AppNotification, AppleIcon, type ApplyCallEventOptions, ArbiBotHeadIcon, ArbiBotIcon, type ArbiChatActions, type ArbiChatCitation, type ArbiChatDocument, type ArbiChatHost, type ArbiChatMessage, type ArbiChatMessageStatus, type ArbiChatPassage, type ArbiChatRole, type ArbiChatState, type ArbiChatStore, type ArbiChatStoreOptions, type ArbiChatThread, type ArbiConversation, type ArbiConversationDocument, type ArbiConversationGeneration, type ArbiDmTab, type ArbiDocumentSessionActions, type ArbiDocumentSessionState, type ArbiDocumentSessionStore, type ArbiDocumentViewerState, type ArbiDraftStorage, type ArbiFeature, type ArbiFeatures, type ArbiGridLayoutState, ArbiHost, type ArbiHostConfig, ArbiHostConnection, ArbiHostProps, type ArbiKeyValueStorage, type ArbiLayoutActions, type ArbiLayoutState, type ArbiLayoutStore, type ArbiLayoutStoreOptions, type ArbiMessageTimer, type ArbiPanelMode, type ArbiPanelsState, type ArbiSavedChat, type ArbiSavedLayout, type ArbiSessionParts, type ArbiSessionPersist, type ArbiSessionState, type ArbiSessionStatus, type ArbiSessionStore, type ArbiSessionStoreOptions, type ArbiShellState, type ArbiSidebarState, type ArbiSignedInSession, type ArbiTabsState, type ArbiThreadComposer, type ArbiThreadTab, type ArbiThreadTabShow, type ArbiThreadTabView, type ArbiThreadTabsController, type ArbiThreadTabsState, type ArbiThreadView, type ArbiViewerTab, type ArbiViewingDocument, type ArbiViewingDocumentInput, type ArbiViewsState, ArbiWebSocketProvider, type ArbiWebSocketProviderProps, type ArbiWorkspaceState, type ArbiWorkspaceStatus, type ArbiWorkspaceStorage, type ArbiWorkspaceStore, type ArbiWorkspaceStoreOptions, type ArbiWsState, type ArbiWsStatus, ArtifactCanvas, type AskAgain, type AspectOption, type AssignDocTagsInput, type AssistantMode, AudIcon, type AudioPiece, type AvatarCrop, type AvatarFileProblem, BOOT_GATE_TIMEOUT_MS, BOX_SEAT_REFUSED, BOX_SEAT_REFUSED_ACTION, BOX_SEAT_REFUSED_TITLE, BUILTIN_DATA_SOURCES, type BranchNavigation, type BranchPoint, type BrowserWorkspaceStorageOptions, type BuildArchiveInput, type BuiltArchive, CALL_MODERATION_TOPIC, CONVERSATION_SWITCH_MEASURE, type CalendarConnectorSupport, type CalendarNotificationMeta, type CalendarOfflineSupport, type CalendarPendingWrite, type CalendarSupport, type CalendarWriteOp, type CallInviteContact, type CallMutedNotice, type CallRoomEvents, type CallSlotMode, type CallUserPillProps, type CallsHost, type ChartSpec, type ChartType, type ChatArrival, ChatBubble, type ChatBubbleProps, ChatMemberKey, type ChatPost, ChatResponse, type ChatSummary, ChatThreadMessage, type Chunk, type ChunkActivation, type ChunkedRecorder, type ChunkedRecorderOptions, CitationRenderer, type CitationRendererProps, type CitationState, ClaudeIcon, CommandPalette, type CommandPaletteClassNames, type CommandPaletteProps, CommandPaletteProvider, type CommandPaletteProviderProps, type CommandPaletteValue, type ConfigUpdate, type ConversationActionsInput, type ConversationEvent, ConversationList, type ConversationListProps, ConversationScope, type ConversationScopeProps, type ConversationsSourceLabels, type CreateProjectVars, type CreateSkillPackOptions, type CreateTagInput, type CreateWorkspaceVars, type CreatedProject, type CropArea, type CropOutput, type CropResult, type CurrentWorkspace, DATABASE_RELATION_PICK_LIMIT, DATABASE_ROWS_PAGE, DEFAULT_ASPECT_OPTIONS, DEFAULT_CONVERSATIONS_SOURCE_LABELS, DEFAULT_DATABASE_SOURCE_LABELS, DEFAULT_DOCUMENTS_SOURCE_LABELS, DEFAULT_DOCUMENT_VIEWER_STATE, DEFAULT_PASSWORD_CHANGE_FORM_MESSAGES, DEFAULT_PROJECTS_SOURCE_LABELS, DEFAULT_USAGE_SOURCE_LABELS, DEFAULT_WORKSPACES_SOURCE_LABELS, DISMISSED_TASK_TTL_MS, DOCUMENTS_FIRST_PAGE_MEASURE, DOCUMENTS_FIRST_PAGE_SIZE, DOCUMENTS_PAGE_SIZE, type DashboardSpec, type DashboardStore, type DashboardsHost, type DataSource, type DataSourceFieldsState, type DataSourceOption, type DataSourceParam, type DataSourceParams, type DataSourceRef, type DataSourceRegistry, type DatabaseAggregateRequest, type DatabaseAggregateResult, type DatabaseDashboardStoreOptions, type DatabaseSourceLabels, type Dataset, type DatasetField, type DatasetFieldType, type DatasetFilter, type DatasetOrder, type DatasetQuery, type DatasetRow, type DatasetSort, type DatasetState, type DatasetValue, DateSeparator, type DateSeparatorProps, type DebouncedWriter, type DebouncedWriterOptions, type DeleteAccountBlocker, type DeleteAccountFlow, type DeletedDocument, type DeletedDocumentsPage, type DescribeCalendarNotificationOptions, type DescribeServerNotificationOptions, DictateContextValue, DmAvatar, type DmAvatarProps, type DmClassNames, DmComposer, type DmComposerProps, type DmConversation, type DmMessage, type DmUser, DocIcon, DocQaPanel, DocSearch, DocumentCardMenu, type DocumentCardMenuProps, type DocumentHostActions, type DocumentPerson, DocumentReview, type DocumentReviewProps, type DocumentRowChange, type DocumentStartItem, type DocumentsSourceLabels, type DocumentsSupport, type DraftKeyValueStore, DraftTitleControls, type DraftTitleControlsProps, EMPTY_CHAT_STATE, EMPTY_GROUP_LABEL, EMPTY_SESSION_STATE, EXPORT_SAMPLE_RATE, type EmailChange, type EmailPreferences, EmlIcon, type EnableDriveSyncVars, type EnableMailboxSyncVars, type EntitledFeature, EntityIconComponent, EntityVocabulary, type ExportDownloadRequest, type ExportFileKind, type ExtractedZip, FACTS_SEARCH_VIEW, FILE_TYPE_COLORS, FINISHED_DOCUMENT_STATUSES, FIRST_TOKEN_MEASURE, type FactListFilter, type FactSearchHit, type FactsSearch, type FactsSearchState, type FeatureEntitlements, type FeatureRefusal, type FeatureSource, type FeatureSwitch, FileIcon, type FilterOp, FireworksIcon, type FollowSaveCallbacks, GeminiIcon, type GenerateDocTagsInput, GitHubIcon, GoogleIcon, type GrantAgentAccessVars, HostConfigRecord, HtmlIcon, IN_FLIGHT_DOCUMENT_STATUSES, IdentityPurchase, IdentityStatus, IdentityStep, type IdentityVerificationApi, IdentityVerificationFlow, ImageCropModal, type ImageCropModalProps, ImageCropper, type ImageCropperProps, ImgIcon, IncomingCall, InlineMicButton, type InlineMicButtonProps, type InstallSkillPackVariables, JoinChoices, LIVE_UPDATE_TYPES, LinkedInIcon, type LiveTask, type LocalFeatureStore, type LocalFeatureStoreOptions, MAIL_DRAFT_REPLACED_EVENT, MAX_AVATAR_FILE_BYTES, MAX_DASHBOARD_SPEC_CHARS, MAX_SERIES, MAX_THREAD_TABS, MIN_NARRATION_DWELL_MS, MIN_QUEUED_MESSAGE_VISIBILITY_MS, MODEL_GROUP_LABELS, MUTED_DEDUPE_MS, type MailAccount, type MailAddress, type MailAttachment, type MailClient, type MailClientContextValue, type MailCompose, type MailDeliveryRecipient, type MailDeliveryStatus, type MailDeviceFallback, type MailDraftEditorRequest, type MailDraftEditorSession, type MailFetch, type MailFolder, type MailHost, type MailMessage, type MailMessageUpdate, MailOfflineUnavailableError, type MailPage, type MailPolicy, type MailProject, MeetingChatRef, MeetingChatTarget, MentionCandidate, type MessageArtifact, MessageArtifactCard, MessageMentionRef, type MessageTimerResult, MicRecordingOverlay, type MicRecordingOverlayProps, MicWaveformIndicator, type MicWaveformIndicatorProps, type ModeratedTrack, type MountDiditOptions, type NameEditor, type NotificationPreferencesModel, type NotificationTarget, type NotificationTypeMeta, NotifyVariant, type OfflineDocumentRecord, OpenAIIcon, type OpenedRecording, type OptimisticDocumentEdit, type OrderResolver, PENDING_SYNC_PREDICATE, PLAYBACK_LOOKAHEAD_MS, POLL_EVERY_MS, PROJECT_CREATION_DENIED_REASON, type PaletteNavItem, type PanelDatasetState, type PanelSpec, type ParsedChunk, type ParsedChunkMetadata, type ParsedDocument, type ParsedDocumentMetadata, type PassageResolvers, type PasswordChangeForm, type PasswordChangeFormMessages, type PasswordChangeVars, PdfIcon, type PendingSyncItem, type PeopleDirectory, type Person, PhotoCapture, type PhotoCaptureProps, type ProcessingTask, type ProfileView, type ProjectsSourceLabels, type ProjectsSourceOptions, type ProjectsUsageAggregate, type QueuedCalendarWrite, type QueuedMessage, type QueuedMessages, type QuoteResolver, RECORDING_SEGMENTER, RUN_WINDOW_MS, type RawPending, type RecordedChunk, type RecordingWindow, type RefusedUploadFile, type RelatedDocs, type RelatedDocsMap, type RelevancePatch, type RemoveDocTagsInput, type RenderMarkdown, type RequestAccessOptions, type RowsSourceDefinition, type RowsState, SEGMENT_FRAME_MS, SEGMENT_PRE_ROLL_MS, SHORT_PIECE_MERGE_GAP_MS, SIGNATURE_NOTIFICATION_TYPES, SIMILARITY_THRESHOLD, SLOW_AFTER_MS, STILL_WORKING, type SaveAgentConfigVars, type SavedDashboard, type SealedDraftStorageOptions, type SearchMode, SearchSession, SearchStatus, SegmenterConfig, type SemanticSearch, type SemanticSearchOptions, type SendMessageOptions, type SequencedRow, type SequencedTask, type ServerNotificationBellOptions, type ServerNotificationDescription, type ShellRecentWorkspaceItem, type ShellWorkspaceItem, type ShellWorkspaceKind, type ShellWorkspaceMember, type ShellWorkspaceSeed, type ShellWorkspaceSource, type SignatureNotificationType, type SkillPack, type SkillPackEntry, type StartTaskQuery, StorageActionError, type StorageActions, type StorageDeploymentUsage, type StorageItem, type StorageItemKind, type StorageItemState, type StorageItemsQuery, type StorageKindUsage, type StoragePersistOptions, type StorageProjectUsage, type StorageScope, type StorageSnapshot, type StreamHandlerContext, type StreamHandlerParams, type StreamHandlers, type StreamState, type SwitchWorkspaceTarget, TRANSFER_POLL_MS, type TableView, type TableViewTable, TaskThreadPendingError, type ThreadAccessors, ThreadBinding, type ThreadItem, type TimeBucket, type TimelinePart, type ToolResponses, type TrackCutter, type TrackPiece, type TranscriptExportLine, type TranscriptLineRef, type TranscriptSegmentMarker, type TransferConflictPolicy, type TransferKind, type TransferMode, type TransferPlan, type TransferScope, type TransferStatus, type TurnTarget, type TurnTools, TxtIcon, TypingIndicator, UPLOAD_ACCEPT, UPLOAD_MAX_FILE_SIZE, type UiStateStorage, type UnarchiveEstimate, type UpdateDocTagInput, type UpdateDocumentsInput, type UpdateProfileVars, type UploadDocumentsInput, type UploadFilesInput, type UploadFilesProgress, type UploadFilesResult, type UploadFromUrlsInput, type UploadFromUrlsResult, type UploadRefusal, type UploadUrlsInput, type UsageSourceLabels, type UsageTotals, type UseArbiShellWorkspacesOptions, type UseAskAgainOptions, type UseAvatarCropOptions, type UseCameraStreamResult, type UseConversationOptions, type UseDeleteAccountFlowOptions, type UseDownloadDocumentsOptions, type UseEmailChangeOptions, type UseFactsSearchOptions, type UseIdentityVerificationFlowOptions, type UseMessageTimerOptions, type UseNameEditorOptions, type UsePasswordChangeFormOptions, type UseShellWorkspacesOptions, type UseShellWorkspacesResult, type UseSwitchWorkspaceResult, type UseVideoRecorderResult, type UserResponse, type UserSettingFlag, type UserSettingsPatch, VIDEO_MIME_PREFERENCE, VidIcon, VideoCapture, type VideoCaptureProps, type VideoRecorderState, VoiceNoteRecorder, type VoiceNoteRecorderProps, WORKSPACE_LAST_OPENED_KEY, WORKSPACE_STORAGE_KEY, WORK_NOTIFICATION_LABELS, type WorkspaceArchive, type WorkspaceArchiveState, type WorkspaceDocument, type WorkspaceExport, type WorkspaceMember, type WorkspaceNotificationLevel, type WorkspaceProcessing, type WorkspaceRole, type WorkspaceSwitchContext, type WorkspaceUpdate, type WorkspacesSourceLabels, XlsIcon, type ZipExtractor, __resetPendingFinalCommitsForTests, __resetStreamingTokenBufferForTests, acceptRing, accountPath, addAssistantMessageToCache, addConversationToList, addUserMessageToCache, adjustTagCounts, adoptNewChatDocument, agentControl, aggregateDataset, aliasTakenMessage, allConversationThreads, annotateThread, announceMailDraftReplaced, appendTokenToMessage, applyCallEvent, applyConversationEvent, applyFinalContextToMessage, applyLiveUpdate, applyNotificationRow, applyOptimisticDocumentEdit, applyOutputItemToMessage, applyTaskEvent, arbiAccountClient, arbiMailClient, archiveName, archivedWorkspaceMessage, bindThreadDocument, boundDocumentOf, browserWorkspaceStorage, bucketOf, bucketRange, buildDocumentMetadataRows, buildMentionCandidates, buildPendingFirstTurn, buildPendingSyncItem, buildWorkspaceArchive, cacheThreadBinding, cachedAssistantMode, cachedMentionCandidates, cachedQuotaUsedUp, calendarNotificationMeta, callLink, callNotificationMeta, captureFrameAsBlob, chatTranscriptRef, classifyMediaError, clearLoadingState, clearSealedDrafts, clearUserInputRequest, clockTime, closePanelIn, commitFinalMessage, completeQueuedUserMessageByContent, composeArbiSessionStore, compositeFiles, compositeTrack, connectOAuthCalendarAccount, connectorErrorStatus, connectorReturnTo, conversationKey, createArbiChatStore, createArbiDocumentSessionStore, createArbiLayoutStore, createArbiSessionStore, createArbiWorkspaceStore, createChunkedRecorder, createConversationsSource, createDataSourceRegistry, createDatabaseSource, createDebouncedWriter, createDocumentsSource, createLocalFeatureStore, createMailClient, createMemoryDashboardStore, createMutedNotifier, createProjectsSource, createSealedDraftStorage, createSkillPack, createStoragePersist, createStreamHandlers, createTrackCutter, createUiStateStorage, createUsageSource, createWorkspaceSwitch, createWorkspacesSource, cropImage, cutAtPauses, dayKey, declineRing, decodeMono16k, defaultLayoutState, defaultMailAlias, defineRowsSource, deploymentUserMeta, describeActivity, describeCalendarNotification, describeServerNotification, discardStreamingTokensForMessage, disconnectAttachedRun, dmTabId, documentActivityMeta, documentActivityPhrase, documentDisplayName, docxMentionMeta, downloadRecoveryFile, dropTagFromCachedDocuments, encodeWav, ensureAssistantMessageLoading, entitlementRefusal, extensionFor, extractZipFile, fallbackFileName, fetchPart, fileAttachment, fileSafe, filesFromDrop, fillTimeGaps, filterRows, findConversation, finishEntityExtraction, floatToWav, flushOnPageExit, flushStreamingTokens, forgetDocuments, forgetUploadedDocumentFolder, formatConfigValidationError, formatElapsed, formatIdentityPrice, formatTranscriptMarkdown, getCachedDocuments, getInterjectionText, getNotificationTypeMeta, getOfflineDocument, getOrphanedLastMessage, getRelatedLabels, getRelatedTotal, getRunStartedAt, getThreadsQueryKey, getWorkspaceActionText, getWorkspaceKind, getWorkspaceSentPhrase, hasPendingFinalCommit, hasRecordingTranscript, hasVideoTrack, identityStepFor, inputRequestTitle, invalidateCalendarEvents, invalidateCalendars, invalidateCall, invalidateConversationActivity, invalidateConversationDetails, invalidateConversationLists, invalidateTagData, invalidateTagTables, isActivityKey, isAliasTakenError, isArchiveMoving, isCommentToPeople, isConversationListKey, isConversationShared, isDeploymentAdmin, isDeploymentUserNotification, isDocumentsLoading, isFullConfig, isMessageRunning, isNotificationRow, isOfflineReadableArbiQuery, isOrphanedUserMessage, isPanelOpen, isQueuedCalendarWrite, isRecordingSegmentId, isReplayableArbiMutation, isRestorableArbiQueryOnline, isRowNewer, isSignatureNotificationType, isStaleTaskUpdate, isTableViewOf, isTransferFinished, isTransferResumable, isUsageMetered, isWorkspaceArchivedError, isWorkspaceGuestOf, isWorkspaceNotificationType, isZipFile, joinFromPreJoin, layoutActionsOf, loadOfflineDocument, mailDraftIdFromContent, mailJson, markMessageAsFailed, markNarrationSettled, mergeHostConfig, migrateLegacyThreadDocuments, mountDiditVerification, mutedNoticeFromEvent, mutedNoticeFromPacket, mutedNoticeText, nextAliasSuggestion, nextViewingDocument, notificationUserName, onCallEvent, openAccessRequest, openCall, openPanelIn, openRecording, panelPlace, parseActivityContent, parseDashboardSpec, parseDeleteAccountBlockers, parseSavedChat, parseSavedLayout, partKey, partsDue, patchCachedDocument, patchConversation, patchConversationList, patchDocuments, patchWorkspaceTags, pendingChatModelSave, peopleDirectory, personOfUser, pickRecentWorkspaces, pickRecorderMimeType, playheadAt, postRecordingDocsToThread, postTranscriptToThread, prepareUploadFiles, queryOfChart, queuedMessages, readLocalFeature, readWorkspaceLastOpened, recordingFiles, recordingWindowsOf, recordsOf, redlineStats, refreshDocuments, refuseChatWhenOffline, registerArbiMutationDefaults, registerAttachedRun, removeConversationFromLists, removeSettledNarration, requestPersistentStorage, resetCalendarAccountSyncState, resetMessageContent, resolveActiveWorkspace, resolveConfigModel, resolveDocumentStatus, resolveReplyTarget, restoreLayout, rollbackOptimisticDocumentEdit, safePortalUrl, saveRecordingFilesToThread, savedChatOf, savedLayoutOf, schedulePart, selectDraft, selectIsGenerating, selectViewingDocumentId, serializeDashboardSpec, serverCallsExperimental, serverNotificationBellEntry, setCachedDocument, setMessageContent, setUserInputRequest, settledByRows, signatureNotificationPhrase, signatureRequestMeta, sortTranscriptMessages, sortedParts, speakerTracks, speakerWav, splitIntoFiles, standalone, startChatCall, startContactsCall, startDmCall, startEntityExtraction, startThreadCall, startsMediaFile, stopDocumentsLoading, stripSpeakerPrefix, subscribeDocumentReads, subscribeDocumentRows, supersedeLiveTranscript, supersededTranscriptLines, supportsHouseTemplates, textToArtifact, threadBinding, threadEndingAtContains, threadTabId, threadTranscriptLines, threadTranscriptRef, timelineDurationMs, timelineOf, titleFromQuestion, toChatCitations, toNotificationPreferences, toProfileView, toRedlineMarkdown, toShellWorkspace, transcribeRecording, transcriptSegmentOf, updateMessageWithMetadata, updateUserMessageInCache, updateUserMessageStateInCache, uploadFolderOf, uploadedDocumentFolder, upsertDocuments, useAccountClient, useActOnStep, useActiveConfigId, useActivity, useAddChatMembers, useAddDatabaseRows, useAddHolidayCalendar, useAddProjectAddonBlock, useAddWorkspaceMembers, useAddonQuote, useAgentChats, useAgentConfig, useAgentDmStatus, useAgentModels, useAgentRunControl, useAgentSession, useAgentWorkspaces, useAgents, useAiTask, useAnswerAgentQuestion, useApplyChatModel, useArbi, useArbiConnected, useArbiHost, useArbiSession, useArbiSessionState, useArbiSessionStore, useArbiShellWorkspaces, useArbiWebSocket, useArbiWsContext, useArbiWsMessage, useArbiWsStatus, useArbiWsStore, useArchiveProgressPolling, useArchiveWorkspace, useAskAgain, useAssignDocTags, useAssistantName, useAssistantQuery, useAuthorizeLimits, useAutoSendDraft, useAvailableModels, useAvatarCrop, useBookingPages, useBootTimeout, useBoxRole, useBranchNavigation, useBuiltinCommands, useCalDavProfiles, useCalendarAccounts, useCalendarEvent, useCalendarEventByUid, useCalendarEvents, useCalendarInvitations, useCalendarOutbox, useCalendarOverlays, useCalendarSettings, useCalendarShares, useCalendarSupport, useCalendars, useCall, useCallInviteLinks, useCallRecording, useCallRecordings, useCallTranscriptionAvailable, useCallsConfig, useCallsEnabled, useCameraStream, useCanCreateProjects, useCanEditShared, useCanHostCalls, useCancelDriveSync, useCancelMailboxSync, useCancelManyPendingSync, useCancelProjectSubscription, useCancelWorkspaceTransfer, useChangeProjectPlan, useChargeWatch, useChatArrivals, useChatPost, useChatSummaries, useChatThread, useChatUnreadTotal, useChats, useClaimNativeAlias, useClaimSecureMail, useCloseAgentSession, useCommandPalette, useConfig, useConfigSchema, useConfigs, useConfirmEmailChange, useConnectCalDavAccount, useConnectMailAccount, useConnectOAuthAccount, useConnectRunStream, useConnectorAutoSync, useConnectorCatalog, useConnectorVendorVisibility, useContacts, useConversation, useConversationActions, useConversationActivity, useConversationData, useConversationDocuments, useConversationIsShared, useConversationItems, useConversationPendingAuth, useConversationSearch, useConversationThreads, useConversationTurn, useConversationUsage, useConversations, useCreateAgent, useCreateCalendar, useCreateContact, useCreateDatabase, useCreateEvent, useCreateFact, useCreateFacts, useCreateGroupChat, useCreateProject, useCreateProjectCheckout, useCreateRoom, useCreateTag, useCreateWork, useCreateWorkflow, useCreateWorkspace, useCurrentSessionId, useCurrentUser, useCurrentWorkspace, useDashboardStore, useDataSources, useDatabase, useDatabaseAggregate, useDatabaseDashboardStore, useDatabaseRows, useDatabases, useDecideCounter, useDeleteAccount, useDeleteAccountFlow, useDeleteAgents, useDeleteBookingPage, useDeleteCalendar, useDeleteChatMessage, useDeleteConfig, useDeleteContact, useDeleteConversation, useDeleteDashboard, useDeleteDatabase, useDeleteDatabaseRows, useDeleteDocuments, useDeleteEvent, useDeleteFact, useDeleteMessage, useDeleteNotifications, useDeleteProject, useDeleteSkill, useDeleteTag, useDeleteWorkflow, useDeleteWorkspaces, useDeploymentDomain, useDirectModelUsage, useDisconnectCalendarAccount, useDisconnectConnector, useDisconnectMailAccount, useDisconnectSlack, useDismissedTips, useDocument, useDocumentAutoAdd, useDocumentHostActions, useDocumentPendingSync, useDocumentThumbnails, useDocumentVersionList, useDocuments, useDocumentsById, useDocumentsLoading, useDocumentsSupport, useDownloadDocuments, useDriveFolderChildren, useDriveFolderDocCount, useDriveFolders, useDriveSyncEstimate, useDriveSyncProgress, useEmailChange, useEnableDriveSync, useEnableMailboxSync, useEntitlements, useEntityExtractionDocIds, useExportDatabase, useExtractEntities, useFacts, useFactsSearch, useFeature, useFeatureSwitch, useFetchCalendarEvent, useFilteredProjects, useFinaliseTranslation, useFindTime, useFirmPool, useFollowThread, useFreeBusy, useGenerateAgentAvatar, useGenerateDocTags, useGrantAgentAccess, useHealth, useHolidayCountries, useHouseTemplateCandidates, useIdentityVerification, useIdentityVerificationFlow, useImportCalendar, useImportContacts, useImportDatabase, useImportDatabaseRows, useInstallSkillPack, useInvalidateAfterTransfer, useInvalidateEntitlements, useInvalidateProjects, useInvalidateStorage, useInvalidateTagData, useInviteContacts, useIsCreatingTag, useIsEntitled, useIsSlow, useIsWorkspaceOwner, useKeepDocumentsOffline, useLinkContact, useLinkMentions, useMailAccounts, useMailAttachmentText, useMailCache, useMailClient, useMailDraftCompose, useMailDraftEditor, useMailDraftReplaced, useMailFolders, useMailMessage, useMailMessages, useMailOnline, useMailPolicy, useMailProjects, useMailUnlock, useMailboxFolders, useMailboxSyncProgress, useMarkChatRead, useMarkDocumentShared, useMarkNotificationsRead, useMcpTools, useMeetingReadOnly, useMentionCandidates, useMessageDetails, useMessageTimer, useModelConnections, useMoveEvent, useMoveWorkspaceToProject, useMyConnectors, useNameEditor, useNotificationPreferences, useNotifications, useNotifyConversation, useOfflineDocumentIds, useOpenCallMeetingChat, useOpenSelectedWorkspace, useOpenViewerDocumentId, usePanelDataset, useParsedDocument, usePassageQuotes, usePasswordChange, usePasswordChangeForm, usePendingContacts, usePendingSyncCounts, usePendingSyncItems, usePeople, usePeopleSearch, usePlanQuote, usePlanWork, usePlanWorkspaceTransfer, usePreviewProjectPlanChange, useProcessingTask, useProcessingTasks, useProducts, useProfile, useProjectBillingPortal, useProjectConversationUsage, useProjectEvents, useProjectInvoices, useProjectUsage, useProjects, useProjectsUsage, usePublishCalendar, useRecordingActions, useRecordingWindows, useRefreshCalendar, useRefreshConnectorsOnRunEnd, useRefreshDocuments, useRefreshProject, useRelatedDocuments, useRemoveChatMember, useRemoveDocTags, useRemoveDocumentsOffline, useRemoveModelConnection, useRemoveWorkspaceMembers, useRenameChat, useRenameFolder, useRequestEmailChange, useRequestWorkspaceAccess, useRespondToEvent, useResumeCalendarAccountConnect, useResumeWorkspaceTransfer, useRevokeAgentAccess, useRevokeCallInviteLink, useRooms, useRunConversation, useRunWorkflow, useSaveAgentConfig, useSaveBookingPage, useSaveCalendarSettings, useSaveConfig, useSaveConfigField, useSaveDashboard, useSaveMailDraft, useSaveModelConnection, useSaveSkill, useSaveToThread, useSavedDashboards, useSearchContacts, useSearchDatabaseRows, useSearchFacts, useSemanticSearch, useSendBackStep, useSendMail, useServerCallsEnabled, useServerCallsExperimental, useSessionPageTab, useSessionView, useSessions, useSetDeploymentHouseTemplate, useSetSkillVisibility, useSetTagValues, useSetWorkspaceHouseTemplate, useSetWorkspaceMemberRoles, useShareCalendar, useShellWorkspaces, useSignOut, useSignedInSession, useSimilarDocuments, useSkillSource, useSkills, useSlackConnection, useStartAgentSession, useStartCalendarAccountOAuth, useStartTaskQuery, useStartWorkspaceTransfer, useStorageActions, useStorageItemNames, useStorageItems, useStorageProjects, useStorageSnapshots, useStreamHandlers, useSubscribeCalendar, useSwitchWorkspace, useSyncAccountsOnOpen, useSyncCalendarAccount, useTagKindSchema, useTags, useTerminateSession, useThinkingContent, useThreadDocument, useThumbnails, useTopUpFirmPool, useTransientView, useTriggerDriveSync, useTriggerMailboxSync, useUnarchiveWorkspace, useUnlockModelConnections, useUnreadByPeer, useUnshareCalendar, useUpdateCalendar, useUpdateCalendarAccount, useUpdateContact, useUpdateConversation, useUpdateDatabase, useUpdateDatabaseRow, useUpdateDocTag, useUpdateDocuments, useUpdateEvent, useUpdateFact, useUpdateMailMessage, useUpdateProfile, useUpdateProjectAddonSettings, useUpdateProjectFields, useUpdateProjectNextPeriodAddons, useUpdateTag, useUpdateTagKindSchema, useUpdateUserSettings, useUpdateWorkflow, useUpdateWorkspace, useUploadDocuments, useUploadFiles, useUploadFromUrls, useUploadSkillFiles, useUploadUrls, useUserSettings, useUserUsageToday, useVideoRecorder, useWorkItems, useWorkNotifications, useWorkflowRuns, useWorkflows, useWorkspaceActivity, useWorkspaceArchive, useWorkspaceDocs, useWorkspaceExportDownload, useWorkspaceNotificationLevel, useWorkspaceProcessing, useWorkspaceRole, useWorkspaceTransfer, useWorkspaceTransfers, useWorkspaceTrash, useWorkspaceUsers, useWorkspaces, userDisplayName, userInitials, viewsOfTable, waitForResponseId, wipeOfflineDocuments, withRelativePath, workflowStepOf, workspaceHouseTemplateId, writeSamples };
|