@anuma/sdk 6.31.4 → 6.33.0

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.
@@ -2721,6 +2721,13 @@ type SendMessageResult = {
2721
2721
  * @inline
2722
2722
  */
2723
2723
  interface UseChatOptions extends BaseUseChatOptions {
2724
+ /** Buffer streamed rounds so a service can verify their canonical output. */
2725
+ resumable?: boolean;
2726
+ /** Inference identifier for each HTTP round, including client-tool continuations. */
2727
+ onStreamMeta?: (meta: {
2728
+ inferenceId: string;
2729
+ round: number;
2730
+ }) => void;
2724
2731
  /**
2725
2732
  * Which API endpoint to use. Default: "auto"
2726
2733
  * - "auto": automatically selects the best API based on model support
@@ -6342,6 +6349,8 @@ interface EntityOperationsContext {
6342
6349
  * `memory_vault.topics`, which this rewrites from the memory's FULL resulting
6343
6350
  * link set — see {@link prepareTopicsUpdate}. Add semantics mean that set is
6344
6351
  * old ∪ new, so already-linked entities are resolved for their names too.
6352
+ *
6353
+ * @deprecated App code: use `MemoryStore.addTopics` (`createLocalMemoryStore`).
6345
6354
  */
6346
6355
  declare function linkMemoryEntitiesOp(ctx: EntityOperationsContext, memoryId: string, entityInputs: ReadonlyArray<EntityInput>, options?: {
6347
6356
  unlessTopicsUserManaged?: boolean;
@@ -6405,6 +6414,8 @@ declare function backfillMemoryEntityUserIdsOp(ctx: EntityOperationsContext, vau
6405
6414
  * Multi-user safety: when `ctx.userId` is set, results are filtered to
6406
6415
  * memory_entity rows whose `user_id` matches. Without this filter the
6407
6416
  * lane returns IDs from every user who tagged a matching entity.
6417
+ *
6418
+ * @deprecated App code: use `MemoryStore.memoriesByTopics` (`createLocalMemoryStore`).
6408
6419
  */
6409
6420
  declare function getMemoriesByEntityNamesOp(ctx: EntityOperationsContext, entityNames: readonly string[]): Promise<Map<string, Set<string>>>;
6410
6421
  /**
@@ -6424,6 +6435,8 @@ declare function getMemoriesByEntityNamesOp(ctx: EntityOperationsContext, entity
6424
6435
  * lookup would leak entity links written by other users.
6425
6436
  *
6426
6437
  * @public
6438
+ *
6439
+ * @deprecated App code: use `MemoryStore.topicsByMemories` (`createLocalMemoryStore`).
6427
6440
  */
6428
6441
  declare function getEntitiesByMemoryIdsOp(ctx: EntityOperationsContext, memoryIds: readonly string[]): Promise<Map<string, Set<string>>>;
6429
6442
 
@@ -8422,9 +8435,13 @@ interface VaultMemoryOperationsContext {
8422
8435
  */
8423
8436
  entityCtx?: EntityOperationsContext;
8424
8437
  }
8438
+ /** @deprecated App code: use `MemoryStore.create` (`createLocalMemoryStore`). */
8425
8439
  declare function createVaultMemoryOp(ctx: VaultMemoryOperationsContext, opts: CreateVaultMemoryOptions): Promise<StoredVaultMemory>;
8440
+ /** @deprecated App code: use `MemoryStore.createMany` (`createLocalMemoryStore`). */
8426
8441
  declare function createVaultMemoriesBatchOp(ctx: VaultMemoryOperationsContext, optionsArray: CreateVaultMemoryOptions[]): Promise<StoredVaultMemory[]>;
8442
+ /** @deprecated App code: use `MemoryStore.get` (`createLocalMemoryStore`). */
8427
8443
  declare function getVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: string): Promise<StoredVaultMemory | null>;
8444
+ /** @deprecated App code: use `MemoryStore.list` (`createLocalMemoryStore`). */
8428
8445
  declare function getAllVaultMemoriesOp(ctx: VaultMemoryOperationsContext, options?: {
8429
8446
  scopes?: string[];
8430
8447
  since?: Date;
@@ -8541,6 +8558,8 @@ options?: {
8541
8558
  * Reuses `baseVaultConditions`, so deleted / superseded / cross-user rows are
8542
8559
  * excluded exactly as they are from recall — a caller can pass any id list and
8543
8560
  * only its own live rows come back.
8561
+ *
8562
+ * @deprecated App code: use `MemoryStore.list({ memoryIds })` (`createLocalMemoryStore`).
8544
8563
  */
8545
8564
  declare function getVaultMemoriesByIdsOp(ctx: VaultMemoryOperationsContext, ids: string[],
8546
8565
  /** See {@link getVaultEmbeddingsByIdsOp} — must match what admitted these ids. */
@@ -8550,6 +8569,7 @@ options?: {
8550
8569
  declare function getAllVaultMemoryContentsOp(ctx: VaultMemoryOperationsContext, options?: {
8551
8570
  since?: Date;
8552
8571
  }): Promise<string[]>;
8572
+ /** @deprecated App code: use `MemoryStore.update` (`createLocalMemoryStore`). */
8553
8573
  declare function updateVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: string, opts: UpdateVaultMemoryOptions): Promise<StoredVaultMemory | null>;
8554
8574
  /**
8555
8575
  * Replace a memory's topic (entity) links with a user-chosen set and mark the
@@ -8559,6 +8579,8 @@ declare function updateVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: stri
8559
8579
  * unclustered). Requires `ctx.entityCtx`. Preserves `updated_at` so a topic
8560
8580
  * edit doesn't inflate the recency multiplier — `topics_updated_at` is what
8561
8581
  * carries the edit to the user's other devices.
8582
+ *
8583
+ * @deprecated App code: use `MemoryStore.setTopics` (`createLocalMemoryStore`).
8562
8584
  */
8563
8585
  declare function setMemoryEntitiesOp(ctx: VaultMemoryOperationsContext, memoryId: string, entities: ReadonlyArray<EntityInput>): Promise<StoredVaultMemory | null>;
8564
8586
  /**
@@ -8600,12 +8622,15 @@ declare function clearMemoryTopicsOverrideOp(ctx: VaultMemoryOperationsContext,
8600
8622
  * Preserves `updated_at`: a visibility change is metadata, not a
8601
8623
  * re-observation, so it must not inflate the recency multiplier (mirrors
8602
8624
  * {@link setMemoryEntitiesOp}).
8625
+ *
8626
+ * @deprecated App code: use `MemoryStore.setVisibility` (`createLocalMemoryStore`).
8603
8627
  */
8604
8628
  declare function setMemoryVisibilityOp(ctx: VaultMemoryOperationsContext, id: string, opts: {
8605
8629
  visibility: VaultMemoryVisibility;
8606
8630
  /** If provided, sets the twin opt-in flag alongside the visibility. */
8607
8631
  twinOptIn?: boolean;
8608
8632
  }): Promise<StoredVaultMemory | null>;
8633
+ /** @deprecated App code: use `MemoryStore.delete` (`createLocalMemoryStore`). */
8609
8634
  declare function deleteVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: string): Promise<boolean>;
8610
8635
  /**
8611
8636
  * Mark a memory as superseded by a newer one (A2 write-time supersession).
@@ -8617,6 +8642,8 @@ declare function deleteVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: stri
8617
8642
  *
8618
8643
  * @param id - the memory being retired (e.g. "Lives in Portland")
8619
8644
  * @param supersededById - the newer memory that replaced it (e.g. "Lives in SF")
8645
+ *
8646
+ * @deprecated App code: use `MemoryStore.supersede` (`createLocalMemoryStore`).
8620
8647
  */
8621
8648
  declare function supersedeVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: string, supersededById: string): Promise<boolean>;
8622
8649
  /**
@@ -8707,6 +8734,8 @@ interface MemoriesNeedingTopicExtraction {
8707
8734
  * a contradiction only a pre-v42 restore produces, and this is the one place
8708
8735
  * that can see all three facts at once, so it clears the flag there (capped by
8709
8736
  * `limit`) before returning. See the branch for why that's safe.
8737
+ *
8738
+ * @deprecated App code: use `MemoryStore.maintenance.getTopicBacklog` (`createLocalMemoryStore`).
8710
8739
  */
8711
8740
  declare function getMemoriesNeedingTopicExtractionOp(ctx: VaultMemoryOperationsContext, options?: {
8712
8741
  limit?: number;
@@ -8736,6 +8765,8 @@ declare function getMemoriesNeedingTopicExtractionOp(ctx: VaultMemoryOperationsC
8736
8765
  * Callers bound the input via `getMemoriesNeedingTopicExtractionOp`'s `limit`
8737
8766
  * (both `pending` and `linkedUnstamped` are capped), so the per-row Model load
8738
8767
  * needed to `prepareUpdate` stays bounded and never spikes the RecordCache.
8768
+ *
8769
+ * @deprecated App code: use `MemoryStore.maintenance.stampTopicsExtracted` (`createLocalMemoryStore`).
8739
8770
  */
8740
8771
  declare function stampTopicsExtractedAtOp(ctx: VaultMemoryOperationsContext, memoryIds: readonly string[], extractedAt: number, version?: number): Promise<string[]>;
8741
8772
  /**
@@ -8752,6 +8783,8 @@ declare function stampTopicsExtractedAtOp(ctx: VaultMemoryOperationsContext, mem
8752
8783
  *
8753
8784
  * Skips deleted rows, foreign-user rows, and rows with null topics.
8754
8785
  * Empty topics remove stale links. Returns the relinked IDs.
8786
+ *
8787
+ * @deprecated App code: use `MemoryStore.maintenance.relinkTopics` (`createLocalMemoryStore`).
8755
8788
  */
8756
8789
  declare function relinkMemoryTopicsOp(ctx: VaultMemoryOperationsContext, memoryIds: readonly string[]): Promise<string[]>;
8757
8790
  /**
@@ -8776,6 +8809,8 @@ declare function relinkMemoryTopicsOp(ctx: VaultMemoryOperationsContext, memoryI
8776
8809
  * per memory (~107 on a single dev launch, sdk#891); it also cost N writes.
8777
8810
  * Same treatment as {@link stampTopicsExtractedAtOp}, including its
8778
8811
  * transpilation hazard — the prepare pass MUST stay a `.map()`.
8812
+ *
8813
+ * @deprecated App code: use `MemoryStore.maintenance.backfillTopics` (`createLocalMemoryStore`).
8779
8814
  */
8780
8815
  declare function backfillMemoryTopicsOp(ctx: VaultMemoryOperationsContext, memoryIds: readonly string[]): Promise<string[]>;
8781
8816
  declare function deleteAllVaultMemoriesForUserOp(ctx: VaultMemoryOperationsContext, userId: string): Promise<number>;
@@ -8830,6 +8865,8 @@ declare function getDecayCandidatesRawOp(ctx: VaultMemoryOperationsContext): Pro
8830
8865
  *
8831
8866
  * @returns `true` if this call archived the row; `false` if it was stale
8832
8867
  * (deleted / not owned / already archived / refreshed under us).
8868
+ *
8869
+ * @deprecated App code: use `MemoryStore.archive` (`createLocalMemoryStore`).
8833
8870
  */
8834
8871
  declare function archiveVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: string, opts?: {
8835
8872
  /** Timestamp to stamp into `archived_at`. Default `Date.now()`. */
@@ -8847,6 +8884,8 @@ declare function archiveVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: str
8847
8884
  *
8848
8885
  * @returns `true` if the row was restored (or already active); `false` if it was
8849
8886
  * deleted / not owned / missing.
8887
+ *
8888
+ * @deprecated App code: use `MemoryStore.restore` (`createLocalMemoryStore`).
8850
8889
  */
8851
8890
  declare function restoreVaultMemoryOp(ctx: VaultMemoryOperationsContext, id: string): Promise<boolean>;
8852
8891
  /**
@@ -10240,6 +10279,397 @@ declare class RerankerUnavailableError extends Error {
10240
10279
  */
10241
10280
  declare function isRerankerAvailable(): boolean | undefined;
10242
10281
 
10282
+ /**
10283
+ * Standalone topic (entity) extraction for EXISTING memories.
10284
+ *
10285
+ * The conversation pipeline (autoExtract.ts) assigns entities only to facts it
10286
+ * extracts from a live transcript — manually created, imported, and edited
10287
+ * memories never get LLM topics and used to fall back to a client-side regex.
10288
+ * This module is the LLM half of "continuously LLM-managed topics": a batched
10289
+ * pass that takes memories already in the vault, asks the extraction model for
10290
+ * their named entities, REPLACES their auto-managed links (guarded — a manual
10291
+ * edit or delete always wins), and stamps `topics_extracted_at` so the sweep
10292
+ * query (`getMemoriesNeedingTopicExtractionOp`) only revisits edited memories.
10293
+ *
10294
+ * Batching: memories are classified ~10 per LLM call (mirroring the folder
10295
+ * Auto-Sort harness) with per-memory content truncation, so a whole-vault
10296
+ * backfill or a bulk import costs ceil(n/10) requests, not n.
10297
+ */
10298
+
10299
+ /** Memories per LLM call. Mirrors the folder Auto-Sort batch size — the cost
10300
+ * lever that makes a whole-vault backfill viable. */
10301
+ declare const TOPIC_EXTRACTION_BATCH_SIZE = 10;
10302
+ /** One memory to extract topics for. `content` must be the DECRYPTED text. */
10303
+ interface TopicExtractionInput {
10304
+ id: string;
10305
+ content: string;
10306
+ }
10307
+ /**
10308
+ * Options for the topic-extraction LLM call. Auth follows the portal dual
10309
+ * pattern — one of `apiKey` / `getToken` is required (see {@link PortalLlmAuth}).
10310
+ */
10311
+ interface TopicExtractOptions extends PortalLlmAuth {
10312
+ baseUrl?: string;
10313
+ /**
10314
+ * Optional per-call request path override, forwarded to
10315
+ * {@link callPortalJsonCompletion}. When set, topic extraction POSTs to
10316
+ * `baseUrl + endpointOverride` instead of the default
10317
+ * `/api/v1/chat/completions`. The body follows the transport, not the path: a
10318
+ * model that needs the Responses API is moved from a `.../chat/completions`
10319
+ * override to its sibling `.../responses` with a Responses-shaped body. Lets callers route
10320
+ * this internal-utility pass to a dedicated endpoint. Invalid values throw at
10321
+ * call time (see {@link validateEndpointOverride}).
10322
+ */
10323
+ endpointOverride?: string;
10324
+ /** Defaults to {@link DEFAULT_EXTRACTION_MODEL} — the sanctioned extraction
10325
+ * model. Don't point this at a second model without an eval. */
10326
+ model?: string;
10327
+ /** Override the global fetch implementation (useful for tests). */
10328
+ fetchFn?: typeof fetch;
10329
+ maxAttempts?: number;
10330
+ timeoutMs?: number;
10331
+ totalTimeoutMs?: number;
10332
+ backoffMs?: (attempt: number) => number;
10333
+ /**
10334
+ * The user's existing entity vocabulary (canonical names). Included in the
10335
+ * prompt so independent batches reuse canonical names instead of fragmenting
10336
+ * ("ZetaChain" / "Zetachain" / "zeta chain" as three graph nodes). Truncated
10337
+ * to the first {@link MAX_VOCABULARY_NAMES} names — pass the most-linked
10338
+ * names first.
10339
+ */
10340
+ existingEntityNames?: readonly string[];
10341
+ /**
10342
+ * When set, PII in memory contents is replaced with tagged placeholders
10343
+ * before the LLM call and returned entity names are de-anonymized (entities
10344
+ * whose placeholders can't be restored are dropped) — mirrors
10345
+ * `ExtractFactsOptions.piiRedaction`. Vault contents hold REAL values, so
10346
+ * callers that redact the conversation pipeline must redact this pass too.
10347
+ */
10348
+ piiRedaction?: boolean | PiiRedactor;
10349
+ }
10350
+ /**
10351
+ * Ask the extraction LLM for the named entities of each memory, in batches of
10352
+ * {@link TOPIC_EXTRACTION_BATCH_SIZE}. Pure LLM step — no persistence.
10353
+ *
10354
+ * Returns memoryId → entities. A memory PRESENT with an empty array is a
10355
+ * successful, explicit "no named entities" answer; a memory ABSENT from the
10356
+ * map is UNANSWERED — its batch failed after retries, returned an unusable
10357
+ * shape, or the model omitted its id. Callers must retry absent ids in a
10358
+ * later sweep, never stamp them.
10359
+ */
10360
+ declare function extractEntitiesForMemories(memories: readonly TopicExtractionInput[], options: TopicExtractOptions): Promise<Map<string, ExtractedEntity[]>>;
10361
+ /**
10362
+ * Why one memory was skipped by a topic sweep.
10363
+ *
10364
+ * Split along the line that actually matters operationally — did the sweep
10365
+ * DECLINE this row on purpose, or did something BREAK:
10366
+ *
10367
+ * Deliberate (healthy; a sweep of nothing but these is a success):
10368
+ * - `excluded` — deleted, owned by another user, or `topicsUserManaged`.
10369
+ * - `link-declined` — the entity-link write's in-row guard declined (the row
10370
+ * became user-managed / deleted / absent mid-run).
10371
+ * - `stamp-declined` — same, caught by the stamp op's own re-check.
10372
+ *
10373
+ * Degraded (something is wrong; see {@link isDegradedTopicSkip}):
10374
+ * - `llm-unanswered` — the batch failed or the model omitted this id. THE one
10375
+ * to alarm on: it is how a wholly broken sweep looks.
10376
+ * - `unreadable` — the row could not be loaded/decrypted.
10377
+ * - `not-found` — the lookup threw (absent row or read fault).
10378
+ * - `link-failed` — the entity-link write threw.
10379
+ *
10380
+ * @public
10381
+ */
10382
+ type TopicSkipReason = "excluded" | "link-declined" | "stamp-declined" | "llm-unanswered" | "unreadable" | "not-found" | "link-failed";
10383
+ /**
10384
+ * Whether a skip reason means the sweep FAILED on that row, rather than
10385
+ * deliberately passing over it.
10386
+ *
10387
+ * Exported so callers classify identically instead of each re-deriving the
10388
+ * split — the reason this type exists is that one wrong grouping turns a broken
10389
+ * sweep back into a healthy-looking one.
10390
+ *
10391
+ * @public
10392
+ */
10393
+ declare function isDegradedTopicSkip(reason: TopicSkipReason): boolean;
10394
+ /** Outcome of one {@link extractAndLinkEntitiesForMemoriesOp} run. */
10395
+ interface TopicExtractionRunResult {
10396
+ /** memoryId → entities the LLM returned (post-validation, post-linking). */
10397
+ entitiesByMemory: Map<string, ExtractedEntity[]>;
10398
+ /** Memories stamped `topics_extracted_at` this run — includes zero-entity
10399
+ * results so quiet memories aren't re-asked every sweep. */
10400
+ stampedIds: string[];
10401
+ /** Memories NOT processed: missing/deleted/foreign rows, user-managed rows
10402
+ * (including ones that became user-managed mid-run), and members of failed
10403
+ * LLM batches. Skipped ids are not stamped, so failed batches are retried
10404
+ * by a later sweep — callers should apply their own attempt caps. */
10405
+ skippedIds: string[];
10406
+ /**
10407
+ * Why each id in {@link skippedIds} was skipped.
10408
+ *
10409
+ * `skippedIds` alone cannot distinguish a sweep that deliberately declined
10410
+ * work from one that FAILED: a run where every LLM batch errored and a run
10411
+ * over rows the user has taken manual control of produce an identical array.
10412
+ * That is the same blindness `outcome: 'empty-after-retry'` had before #888 —
10413
+ * a degradation wearing the shape of normal control flow.
10414
+ *
10415
+ * It matters here because topics feed the entity recall lane, so a silently
10416
+ * failing sweep means memories that exist but cannot be found by entity, with
10417
+ * nothing in production saying so.
10418
+ *
10419
+ * Populated in lockstep with `skippedIds` (single `skip()` helper), so the two
10420
+ * cannot drift. Group by {@link isDegradedTopicSkip} to separate "declined" from
10421
+ * "broke".
10422
+ */
10423
+ skippedReasons: Map<string, TopicSkipReason>;
10424
+ }
10425
+ /**
10426
+ * Run LLM topic extraction over existing vault memories and persist the
10427
+ * results: REPLACE each memory's auto-managed entity links with the extracted
10428
+ * set (via {@link replaceMemoryEntitiesGuardedOp} — an edited memory drops the
10429
+ * entities its previous content mentioned) and stamp `topics_extracted_at`.
10430
+ *
10431
+ * User intent is enforced twice: rows already user-managed are skipped up
10432
+ * front, and the replace write re-checks the vault row INSIDE its writer
10433
+ * (user-managed / deleted / absent ⇒ null, and the memory is neither linked
10434
+ * nor stamped) so a manual topic edit or delete landing during the LLM
10435
+ * round-trip wins — a manual edit's own replace semantics also erase anything
10436
+ * this pass linked just before it. The watermark is captured BEFORE contents
10437
+ * are read: an edit landing mid-run keeps `updated_at` > stamp, so the next
10438
+ * sweep re-extracts it rather than trusting this run's stale read.
10439
+ *
10440
+ * Requires `ctx.entityCtx`. Contents are decrypted via the ctx's wallet
10441
+ * fields, exactly like the vault read ops; a memory whose decryption fails is
10442
+ * skipped (retried next sweep), not fatal to the run.
10443
+ *
10444
+ * @deprecated App code: use `MemoryStore.maintenance.extractTopics` (`createLocalMemoryStore`).
10445
+ */
10446
+ declare function extractAndLinkEntitiesForMemoriesOp(ctx: VaultMemoryOperationsContext, memoryIds: readonly string[], options: TopicExtractOptions & {
10447
+ /** Watermark timestamp (Unix ms) recorded as `topics_extracted_at`.
10448
+ * Defaults to now; tests pass a fixed value. */
10449
+ now?: number;
10450
+ }): Promise<TopicExtractionRunResult>;
10451
+
10452
+ /**
10453
+ * Read filter for {@link MemoryStore.list}. Same semantics as the vault read
10454
+ * ops: every non-visible state (deleted, archived, quarantined, superseded) is
10455
+ * hidden by default and has its own opt-in flag.
10456
+ * @public
10457
+ */
10458
+ interface MemoryListOptions {
10459
+ scopes?: string[];
10460
+ /** Only memories updated after this instant (results then sort by `updatedAt`). */
10461
+ since?: Date;
10462
+ limit?: number;
10463
+ /** Restrict to these ids. Absent or foreign ids are dropped, never an error. */
10464
+ memoryIds?: string[];
10465
+ factTypes?: string[];
10466
+ /** People Nearby visibility filter; a legacy NULL column reads as "private". */
10467
+ visibility?: VaultMemoryVisibility[];
10468
+ /** Memory Graph "forgotten" nodes — rows carry `isDeleted: true`. */
10469
+ includeDeleted?: boolean;
10470
+ includeArchived?: boolean;
10471
+ includeQuarantined?: boolean;
10472
+ /** Memory history — rows carry `supersededBy`. */
10473
+ includeSuperseded?: boolean;
10474
+ }
10475
+ /**
10476
+ * A manual memory save. Creation uses private visibility, manual provenance
10477
+ * and a proof count of one. Missing embeddings are filled in the background.
10478
+ * Publication uses `setVisibility`; extraction uses `retain`. Migration and
10479
+ * restore use the dedicated lower-level vault/import operations rather than
10480
+ * passing provenance, trust or publication metadata through manual creation.
10481
+ * @public
10482
+ */
10483
+ type MemoryCreate = Pick<CreateVaultMemoryOptions, "content" | "scope" | "factType" | "eventTime" | "embedding" | "embeddingModel" | "geohash">;
10484
+ /**
10485
+ * The edits an app makes to an existing memory. Deliberately narrower than
10486
+ * {@link UpdateVaultMemoryOptions}: the re-observation knobs (`proofCountIncrement`,
10487
+ * `observationSourceIds`, `preserveUpdatedAt`, `restore`, `lastObservedAt`, …)
10488
+ * belong to `retain()` and backup sync, and an HTTP backend should never have
10489
+ * to accept them from a client. No `folderId` either: vault folders are gone
10490
+ * from the server surface (they leaked across tenants), so a remote backend
10491
+ * could not honour it.
10492
+ *
10493
+ * Omitting `embedding` drops the stored vector (and its model tag) and the
10494
+ * store re-embeds the new content in the background — useChatStorage's edit
10495
+ * behaviour, so an edit never keeps a vector for text that is gone. Pass
10496
+ * `embedding` (with `embeddingModel`) only when you already have the new one.
10497
+ * @public
10498
+ */
10499
+ type MemoryUpdate = Pick<UpdateVaultMemoryOptions, "content" | "scope" | "factType" | "eventTime" | "embedding" | "embeddingModel">;
10500
+ /**
10501
+ * Fact-only recall. Conversation chunks are message storage, not memory, so
10502
+ * the chunk-lane knobs are not part of this surface; nor is `folderId` (see
10503
+ * {@link MemoryUpdate}).
10504
+ *
10505
+ * DEVICE-LOCAL: `decomposeOptions` (portal credentials) and `onDiagnostics` (a
10506
+ * callback) configure work on the device, including with a remote store.
10507
+ * Query embedding/decomposition and the decrypted recall pipeline stay on the
10508
+ * device. Nearby ranks encrypted rows using embeddings and metadata; credentials
10509
+ * and callbacks are never forwarded to it.
10510
+ * @public
10511
+ */
10512
+ type MemoryRecallOptions = Omit<RecallOptions, "types" | "includeChunks" | "conversationId" | "excludeConversationId" | "folderId">;
10513
+ /**
10514
+ * `retain()` options minus `folderId` (see {@link MemoryUpdate}).
10515
+ *
10516
+ * DEVICE-LOCAL: `consolidateOptions` carries portal credentials, an `onFallback`
10517
+ * callback and possibly a `PiiRedactor` instance — it configures the
10518
+ * consolidation LLM call on the device. A remote store fetches encrypted
10519
+ * candidates, decrypts and consolidates them on the device, then persists
10520
+ * encrypted results through versioned writes. Nearby holds no decryption key
10521
+ * and never receives these credentials, callbacks or redactor instances.
10522
+ * @public
10523
+ */
10524
+ type MemoryRetainOptions = Omit<RetainOptions, "folderId">;
10525
+ /** @public */
10526
+ interface MemorySubscribeOptions {
10527
+ /**
10528
+ * Watch the whole table, soft-deleted rows included, and fire on row-SET
10529
+ * changes only (create / delete / undelete) — the Memory Graph's mode. A
10530
+ * column-aware watch would re-fire on every row a decay sweep archives.
10531
+ * Default `false`: watch live rows for user-visible edits and list membership
10532
+ * changes. Background embedding, proof and watermark bookkeeping does not
10533
+ * trigger default notifications.
10534
+ */
10535
+ includeDeleted?: boolean;
10536
+ /** Also fire when topic (entity / link) state changes. Default `false`. */
10537
+ topics?: boolean;
10538
+ /**
10539
+ * Also fire for embedding vector/model changes. Default `false`.
10540
+ * Ignored when `includeDeleted` is `true`, which remains membership-only.
10541
+ */
10542
+ embeddings?: boolean;
10543
+ }
10544
+ /**
10545
+ * Background jobs that keep a LOCAL store healthy.
10546
+ *
10547
+ * TRANSITIONAL local-vault plumbing. A remote store may omit these hooks, but
10548
+ * their absence does not mean plaintext-dependent work moves to nearby.
10549
+ * Topic extraction and other jobs that need decrypted memory content remain
10550
+ * on the device and persist encrypted rows/metadata through the remote store.
10551
+ * Metadata-only maintenance can run server-side. Nothing here should gain a
10552
+ * new caller that isn't a background worker.
10553
+ *
10554
+ * Not here on purpose: the client's quality sweep (`list` + `delete`) and
10555
+ * folder→topic migration (`list` + `topicsByMemories` + `addTopics`) compose
10556
+ * from the main interface.
10557
+ * @public
10558
+ */
10559
+ interface MemoryMaintenance {
10560
+ /** Decay sweeper bound to this store's vault (see `createDecaySweeper`). */
10561
+ createDecaySweeper(options?: Omit<CreateDecaySweeperOptions, "vaultCtx">): DecaySweeper;
10562
+ /** One page of the topic-extraction backlog (see `getMemoriesNeedingTopicExtractionOp`). */
10563
+ getTopicBacklog(options?: {
10564
+ limit?: number;
10565
+ }): Promise<MemoriesNeedingTopicExtraction>;
10566
+ /** LLM topic extraction + link + stamp for these memories. */
10567
+ extractTopics(memoryIds: readonly string[], options: TopicExtractOptions & {
10568
+ now?: number;
10569
+ }): Promise<TopicExtractionRunResult>;
10570
+ /** Grandfather already-linked rows without an LLM call. Returns the ids stamped. */
10571
+ stampTopicsExtracted(memoryIds: readonly string[], extractedAt: number, version?: number): Promise<string[]>;
10572
+ /** Rebuild the local link index from each row's synced `topics`. Returns the ids relinked. */
10573
+ relinkTopics(memoryIds: readonly string[]): Promise<string[]>;
10574
+ /** Fill `topics` on pre-v42 rows from their existing links. Returns the ids filled. */
10575
+ backfillTopics(memoryIds: readonly string[]): Promise<string[]>;
10576
+ }
10577
+ /**
10578
+ * One user's memories, pitched at what the apps do with them rather than at
10579
+ * the storage ops underneath. Two backends are intended: the on-device
10580
+ * WatermelonDB vault ({@link createLocalMemoryStore}) and, later, an HTTP
10581
+ * client for the server-side store.
10582
+ *
10583
+ * Every value crossing this interface is plain data — no WatermelonDB Model,
10584
+ * Query or Collection — so a remote backend can serialize it. The one
10585
+ * exception is the DEVICE-LOCAL LLM-call knobs on {@link MemoryRecallOptions}
10586
+ * and {@link MemoryRetainOptions}, which a remote store uses on the device
10587
+ * rather than forwarding to nearby. Server persistence is authoritative;
10588
+ * content decryption and plaintext-dependent processing remain on the device. Reads are
10589
+ * whole-result rather than per-row so a chat turn costs a handful of calls
10590
+ * (`recall`, then `retain` per fact), not one per memory.
10591
+ *
10592
+ * Writes resolve `null` / `false` for a memory that is missing, deleted or
10593
+ * not owned by this store's user; they don't throw for it.
10594
+ * @public
10595
+ */
10596
+ interface MemoryStore {
10597
+ /** Memories newest-first, decrypted, WITH `embedding` (Memory Graph edges read it). */
10598
+ list(options?: MemoryListOptions): Promise<StoredVaultMemory[]>;
10599
+ get(id: string): Promise<StoredVaultMemory | null>;
10600
+ /** Decay-archived memories (not deleted, quarantined or superseded), most recently archived first. */
10601
+ listArchived(): Promise<StoredVaultMemory[]>;
10602
+ /** Memory id → which of `names` it is linked to. Names are matched case-insensitively. */
10603
+ memoriesByTopics(names: readonly string[]): Promise<Map<string, Set<string>>>;
10604
+ /** Memory id → its canonical (lowercased) topic names. Unlinked ids are absent. */
10605
+ topicsByMemories(memoryIds: readonly string[]): Promise<Map<string, Set<string>>>;
10606
+ /** Manual save; missing embeddings are filled in the background. */
10607
+ create(input: MemoryCreate): Promise<StoredVaultMemory>;
10608
+ /** One write for a batch of manual saves; migration/restore uses lower-level operations. */
10609
+ createMany(inputs: MemoryCreate[]): Promise<StoredVaultMemory[]>;
10610
+ update(id: string, patch: MemoryUpdate): Promise<StoredVaultMemory | null>;
10611
+ /** Soft delete; also drops the memory's topic links. */
10612
+ delete(id: string): Promise<boolean>;
10613
+ /** Retire `id` behind the newer `supersededById` (both must be live and owned). */
10614
+ supersede(id: string, supersededById: string): Promise<boolean>;
10615
+ archive(id: string): Promise<boolean>;
10616
+ restore(id: string): Promise<boolean>;
10617
+ /** Replace the memory's topics with a user-chosen set and stop auto-tagging it. */
10618
+ setTopics(memoryId: string, topics: readonly EntityInput[]): Promise<StoredVaultMemory | null>;
10619
+ /** Add topics alongside the existing ones (auto-tagging stays on). */
10620
+ addTopics(memoryId: string, topics: readonly EntityInput[]): Promise<StoredEntity[]>;
10621
+ setVisibility(id: string, visibility: VaultMemoryVisibility, options?: {
10622
+ twinOptIn?: boolean;
10623
+ }): Promise<StoredVaultMemory | null>;
10624
+ recall(query: string, options?: MemoryRecallOptions): Promise<RecallResult>;
10625
+ retain(content: string, options?: MemoryRetainOptions): Promise<RetainResult>;
10626
+ /**
10627
+ * Call `onChange` after the store's memories change; re-read to see what
10628
+ * changed. Does not fire for the state at subscription time — read once
10629
+ * after subscribing. Returns the unsubscribe function.
10630
+ */
10631
+ subscribe(onChange: () => void, options?: MemorySubscribeOptions): () => void;
10632
+ /** TRANSITIONAL — see {@link MemoryMaintenance}. Absent on a remote backend. */
10633
+ maintenance?: MemoryMaintenance;
10634
+ }
10635
+
10636
+ /** @public */
10637
+ interface LocalMemoryStoreOptions {
10638
+ /** A database built from `sdkSchema` (memory_vault + entity + memory_entity). */
10639
+ database: Database;
10640
+ /** With `signMessage`, encrypts content on write and decrypts on read. */
10641
+ walletAddress?: string;
10642
+ signMessage?: SignMessageFn;
10643
+ embeddedWalletSigner?: EmbeddedWalletSignerFn;
10644
+ /**
10645
+ * Scope every read/write to this user — for a shared, multi-tenant database
10646
+ * whose rows all carry their `user_id`. Rows with no `user_id` are invisible
10647
+ * to a scoped store, so the per-wallet client DBs (every useChatStorage row is
10648
+ * `user_id = null`) use `singleTenant` instead, exactly like useChatStorage's
10649
+ * vault ctx.
10650
+ */
10651
+ userId?: string;
10652
+ /**
10653
+ * The database holds exactly one owner's rows (the per-wallet client DBs).
10654
+ * Required for the decay sweep to run without `userId` — see
10655
+ * `VaultMemoryOperationsContext.singleTenant`.
10656
+ */
10657
+ singleTenant?: boolean;
10658
+ /** Admit pre-v31 `user_id = null` link rows alongside `userId`'s (LokiJS web). */
10659
+ allowUnscopedRows?: boolean;
10660
+ /** Embedding API options for `recall` / `retain`. */
10661
+ embeddingOptions: EmbeddingOptions;
10662
+ /** Share a warm cache with other recall surfaces; one is created when omitted. */
10663
+ vaultCache?: VaultEmbeddingCache;
10664
+ }
10665
+ /**
10666
+ * {@link MemoryStore} over the on-device WatermelonDB vault. Builds the vault +
10667
+ * entity contexts once and delegates every method to the existing ops, so
10668
+ * behavior is exactly theirs.
10669
+ * @public
10670
+ */
10671
+ declare function createLocalMemoryStore(options: LocalMemoryStoreOptions): MemoryStore;
10672
+
10243
10673
  /**
10244
10674
  * synthesizeProfile — client-side profile synthesis for People Nearby (C1).
10245
10675
  *
@@ -10424,174 +10854,6 @@ interface SynthesizeProfileOptions extends PortalLlmAuth {
10424
10854
  */
10425
10855
  declare function synthesizeProfile(ctx: RecallContext, options?: SynthesizeProfileOptions): Promise<ProfileDoc>;
10426
10856
 
10427
- /**
10428
- * Standalone topic (entity) extraction for EXISTING memories.
10429
- *
10430
- * The conversation pipeline (autoExtract.ts) assigns entities only to facts it
10431
- * extracts from a live transcript — manually created, imported, and edited
10432
- * memories never get LLM topics and used to fall back to a client-side regex.
10433
- * This module is the LLM half of "continuously LLM-managed topics": a batched
10434
- * pass that takes memories already in the vault, asks the extraction model for
10435
- * their named entities, REPLACES their auto-managed links (guarded — a manual
10436
- * edit or delete always wins), and stamps `topics_extracted_at` so the sweep
10437
- * query (`getMemoriesNeedingTopicExtractionOp`) only revisits edited memories.
10438
- *
10439
- * Batching: memories are classified ~10 per LLM call (mirroring the folder
10440
- * Auto-Sort harness) with per-memory content truncation, so a whole-vault
10441
- * backfill or a bulk import costs ceil(n/10) requests, not n.
10442
- */
10443
-
10444
- /** Memories per LLM call. Mirrors the folder Auto-Sort batch size — the cost
10445
- * lever that makes a whole-vault backfill viable. */
10446
- declare const TOPIC_EXTRACTION_BATCH_SIZE = 10;
10447
- /** One memory to extract topics for. `content` must be the DECRYPTED text. */
10448
- interface TopicExtractionInput {
10449
- id: string;
10450
- content: string;
10451
- }
10452
- /**
10453
- * Options for the topic-extraction LLM call. Auth follows the portal dual
10454
- * pattern — one of `apiKey` / `getToken` is required (see {@link PortalLlmAuth}).
10455
- */
10456
- interface TopicExtractOptions extends PortalLlmAuth {
10457
- baseUrl?: string;
10458
- /**
10459
- * Optional per-call request path override, forwarded to
10460
- * {@link callPortalJsonCompletion}. When set, topic extraction POSTs to
10461
- * `baseUrl + endpointOverride` instead of the default
10462
- * `/api/v1/chat/completions`. The body follows the transport, not the path: a
10463
- * model that needs the Responses API is moved from a `.../chat/completions`
10464
- * override to its sibling `.../responses` with a Responses-shaped body. Lets callers route
10465
- * this internal-utility pass to a dedicated endpoint. Invalid values throw at
10466
- * call time (see {@link validateEndpointOverride}).
10467
- */
10468
- endpointOverride?: string;
10469
- /** Defaults to {@link DEFAULT_EXTRACTION_MODEL} — the sanctioned extraction
10470
- * model. Don't point this at a second model without an eval. */
10471
- model?: string;
10472
- /** Override the global fetch implementation (useful for tests). */
10473
- fetchFn?: typeof fetch;
10474
- maxAttempts?: number;
10475
- timeoutMs?: number;
10476
- totalTimeoutMs?: number;
10477
- backoffMs?: (attempt: number) => number;
10478
- /**
10479
- * The user's existing entity vocabulary (canonical names). Included in the
10480
- * prompt so independent batches reuse canonical names instead of fragmenting
10481
- * ("ZetaChain" / "Zetachain" / "zeta chain" as three graph nodes). Truncated
10482
- * to the first {@link MAX_VOCABULARY_NAMES} names — pass the most-linked
10483
- * names first.
10484
- */
10485
- existingEntityNames?: readonly string[];
10486
- /**
10487
- * When set, PII in memory contents is replaced with tagged placeholders
10488
- * before the LLM call and returned entity names are de-anonymized (entities
10489
- * whose placeholders can't be restored are dropped) — mirrors
10490
- * `ExtractFactsOptions.piiRedaction`. Vault contents hold REAL values, so
10491
- * callers that redact the conversation pipeline must redact this pass too.
10492
- */
10493
- piiRedaction?: boolean | PiiRedactor;
10494
- }
10495
- /**
10496
- * Ask the extraction LLM for the named entities of each memory, in batches of
10497
- * {@link TOPIC_EXTRACTION_BATCH_SIZE}. Pure LLM step — no persistence.
10498
- *
10499
- * Returns memoryId → entities. A memory PRESENT with an empty array is a
10500
- * successful, explicit "no named entities" answer; a memory ABSENT from the
10501
- * map is UNANSWERED — its batch failed after retries, returned an unusable
10502
- * shape, or the model omitted its id. Callers must retry absent ids in a
10503
- * later sweep, never stamp them.
10504
- */
10505
- declare function extractEntitiesForMemories(memories: readonly TopicExtractionInput[], options: TopicExtractOptions): Promise<Map<string, ExtractedEntity[]>>;
10506
- /**
10507
- * Why one memory was skipped by a topic sweep.
10508
- *
10509
- * Split along the line that actually matters operationally — did the sweep
10510
- * DECLINE this row on purpose, or did something BREAK:
10511
- *
10512
- * Deliberate (healthy; a sweep of nothing but these is a success):
10513
- * - `excluded` — deleted, owned by another user, or `topicsUserManaged`.
10514
- * - `link-declined` — the entity-link write's in-row guard declined (the row
10515
- * became user-managed / deleted / absent mid-run).
10516
- * - `stamp-declined` — same, caught by the stamp op's own re-check.
10517
- *
10518
- * Degraded (something is wrong; see {@link isDegradedTopicSkip}):
10519
- * - `llm-unanswered` — the batch failed or the model omitted this id. THE one
10520
- * to alarm on: it is how a wholly broken sweep looks.
10521
- * - `unreadable` — the row could not be loaded/decrypted.
10522
- * - `not-found` — the lookup threw (absent row or read fault).
10523
- * - `link-failed` — the entity-link write threw.
10524
- *
10525
- * @public
10526
- */
10527
- type TopicSkipReason = "excluded" | "link-declined" | "stamp-declined" | "llm-unanswered" | "unreadable" | "not-found" | "link-failed";
10528
- /**
10529
- * Whether a skip reason means the sweep FAILED on that row, rather than
10530
- * deliberately passing over it.
10531
- *
10532
- * Exported so callers classify identically instead of each re-deriving the
10533
- * split — the reason this type exists is that one wrong grouping turns a broken
10534
- * sweep back into a healthy-looking one.
10535
- *
10536
- * @public
10537
- */
10538
- declare function isDegradedTopicSkip(reason: TopicSkipReason): boolean;
10539
- /** Outcome of one {@link extractAndLinkEntitiesForMemoriesOp} run. */
10540
- interface TopicExtractionRunResult {
10541
- /** memoryId → entities the LLM returned (post-validation, post-linking). */
10542
- entitiesByMemory: Map<string, ExtractedEntity[]>;
10543
- /** Memories stamped `topics_extracted_at` this run — includes zero-entity
10544
- * results so quiet memories aren't re-asked every sweep. */
10545
- stampedIds: string[];
10546
- /** Memories NOT processed: missing/deleted/foreign rows, user-managed rows
10547
- * (including ones that became user-managed mid-run), and members of failed
10548
- * LLM batches. Skipped ids are not stamped, so failed batches are retried
10549
- * by a later sweep — callers should apply their own attempt caps. */
10550
- skippedIds: string[];
10551
- /**
10552
- * Why each id in {@link skippedIds} was skipped.
10553
- *
10554
- * `skippedIds` alone cannot distinguish a sweep that deliberately declined
10555
- * work from one that FAILED: a run where every LLM batch errored and a run
10556
- * over rows the user has taken manual control of produce an identical array.
10557
- * That is the same blindness `outcome: 'empty-after-retry'` had before #888 —
10558
- * a degradation wearing the shape of normal control flow.
10559
- *
10560
- * It matters here because topics feed the entity recall lane, so a silently
10561
- * failing sweep means memories that exist but cannot be found by entity, with
10562
- * nothing in production saying so.
10563
- *
10564
- * Populated in lockstep with `skippedIds` (single `skip()` helper), so the two
10565
- * cannot drift. Group by {@link isDegradedTopicSkip} to separate "declined" from
10566
- * "broke".
10567
- */
10568
- skippedReasons: Map<string, TopicSkipReason>;
10569
- }
10570
- /**
10571
- * Run LLM topic extraction over existing vault memories and persist the
10572
- * results: REPLACE each memory's auto-managed entity links with the extracted
10573
- * set (via {@link replaceMemoryEntitiesGuardedOp} — an edited memory drops the
10574
- * entities its previous content mentioned) and stamp `topics_extracted_at`.
10575
- *
10576
- * User intent is enforced twice: rows already user-managed are skipped up
10577
- * front, and the replace write re-checks the vault row INSIDE its writer
10578
- * (user-managed / deleted / absent ⇒ null, and the memory is neither linked
10579
- * nor stamped) so a manual topic edit or delete landing during the LLM
10580
- * round-trip wins — a manual edit's own replace semantics also erase anything
10581
- * this pass linked just before it. The watermark is captured BEFORE contents
10582
- * are read: an edit landing mid-run keeps `updated_at` > stamp, so the next
10583
- * sweep re-extracts it rather than trusting this run's stale read.
10584
- *
10585
- * Requires `ctx.entityCtx`. Contents are decrypted via the ctx's wallet
10586
- * fields, exactly like the vault read ops; a memory whose decryption fails is
10587
- * skipped (retried next sweep), not fatal to the run.
10588
- */
10589
- declare function extractAndLinkEntitiesForMemoriesOp(ctx: VaultMemoryOperationsContext, memoryIds: readonly string[], options: TopicExtractOptions & {
10590
- /** Watermark timestamp (Unix ms) recorded as `topics_extracted_at`.
10591
- * Defaults to now; tests pass a fixed value. */
10592
- now?: number;
10593
- }): Promise<TopicExtractionRunResult>;
10594
-
10595
10857
  /**
10596
10858
  * Post-hoc support verification for extracted memories (#707).
10597
10859
  *
@@ -11819,6 +12081,13 @@ declare function previewToolSelection(options: {
11819
12081
  * @inline
11820
12082
  */
11821
12083
  interface UseChatStorageOptions extends BaseUseChatStorageOptions {
12084
+ /** Opt into the portal stream buffer for every generated round. */
12085
+ resumable?: boolean;
12086
+ /** Inference identifier for each HTTP round, including client-tool continuations. */
12087
+ onStreamMeta?: (meta: {
12088
+ inferenceId: string;
12089
+ round: number;
12090
+ }) => void;
11822
12091
  /**
11823
12092
  * Which API endpoint to use. Default: "responses"
11824
12093
  * - "responses": OpenAI Responses API (supports thinking, reasoning, conversations)
@@ -11979,6 +12248,11 @@ type SendMessageWithStorageResult = {
11979
12248
  error: null;
11980
12249
  userMessage?: undefined;
11981
12250
  assistantMessage?: undefined;
12251
+ /** Client-tool output remains available even when no private history is written. */
12252
+ autoExecutedToolResults?: {
12253
+ name: string;
12254
+ result: unknown;
12255
+ }[];
11982
12256
  /** Indicates this was a skipStorage request - no messages were persisted */
11983
12257
  skipped: true;
11984
12258
  } | {
@@ -12313,6 +12587,43 @@ interface ChatStorageAdapter {
12313
12587
  write<T>(fn: (adapter: ChatStorageAdapter) => Promise<T>): Promise<T>;
12314
12588
  }
12315
12589
 
12590
+ /**
12591
+ * Pure functions for extracting MCP media URLs (images and videos).
12592
+ *
12593
+ * These are extracted from `useChatMedia.extractAndStoreEncryptedMCPImages`
12594
+ * so they can be tested in isolation without React hooks or OPFS dependencies.
12595
+ */
12596
+ /** Minimal tool call event shape needed for URL extraction. */
12597
+ interface ToolCallEvent {
12598
+ name?: string;
12599
+ output?: string;
12600
+ }
12601
+ /** Media kind an extracted URL resolves to. */
12602
+ type ExtractedMediaKind = "image" | "video";
12603
+ /** Extracted media URL with its associated model and resolved kind. */
12604
+ interface ExtractedMediaUrl {
12605
+ url: string;
12606
+ model: string;
12607
+ /** "video" when the URL/tool is a video source, otherwise "image". */
12608
+ mediaType: ExtractedMediaKind;
12609
+ }
12610
+ /**
12611
+ * Extracts MCP media URLs from tool_call_events (primary) or content (fallback).
12612
+ *
12613
+ * Primary path: parses JSON output of image- and video-generation tool calls.
12614
+ * Fallback path: regex-matches MCP R2 domain URLs in content and classifies
12615
+ * each by file extension (so videos aren't mislabeled as images).
12616
+ *
12617
+ * The function name is retained for call-site stability; it now returns videos
12618
+ * too, each tagged with `mediaType`.
12619
+ *
12620
+ * @param content - The message content (may contain markdown/HTML media refs)
12621
+ * @param toolCallEvents - Tool call events from streaming accumulator
12622
+ * @param mcpR2Domain - The R2 domain to match
12623
+ * @returns Array of extracted URLs with model + mediaType info
12624
+ */
12625
+ declare function extractMCPImageUrls(content: string, toolCallEvents: ToolCallEvent[] | undefined, mcpR2Domain: string): ExtractedMediaUrl[];
12626
+
12316
12627
  /**
12317
12628
  * OPFS (Origin Private File System) storage utilities with encryption support.
12318
12629
  *
@@ -16687,4 +16998,4 @@ declare function renderAnumaTree(node: AnumaNode): React.ReactElement | null;
16687
16998
  */
16688
16999
  declare function renderAnumaJsx(jsx: string): React.ReactElement | null;
16689
17000
 
16690
- export { Anuma, type AnumaChild, AnumaJsxError, type AnumaNode, AnumaShadowIsolationProvider, type AnumaShadowIsolationProviderProps, type AnumaTheme, AnumaThemeProvider, type AnumaThemeProviderProps, AppFile as AppFileModel, type AppFileOperationsContext, type AttrValue, type AutoExtractMessage, type AutoExtractor, DEFAULT_CONVERSATIONS_FOLDER as BACKUP_DRIVE_CONVERSATIONS_FOLDER, DEFAULT_ROOT_FOLDER as BACKUP_DRIVE_ROOT_FOLDER, DEFAULT_BACKUP_FOLDER as BACKUP_ICLOUD_FOLDER, BUILT_IN_TOOL_SETS, type BackupAuthContextValue, BackupAuthProvider, type BackupAuthProviderProps, type BackupOperationOptions, BlobUrlManager, type Budget, CHUNKS_DISCARDED_ORIGIN, type CachedChunkVectors, type CachedServerTools, ChartCard, type ChartCardProps, type ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Conversation as ChatConversation, Message as ChatMessage, type ChatRole, type ChatStorageAdapter, type ChatStorageObservable, type ChunkSearchResult, type ChunkVectorCache, type ChunkingOptions, type CircleProps, type ClientToolsFilterFn, type ConsolidationAction, type ConsolidationFallbackReason, type ConversationMemoryInput, ConversationMemory as ConversationMemoryModel, type ConversationMemoryOperationsContext, type ConversationQueryOptions, type CreateAutoExtractorOptions, type CreateConversationOptions, type CreateDecaySweeperOptions, type CreateEntityOptions, type CreateMediaOptions, type CreateMessageOptions, type CreateModelPreferenceOptions, type CreateProjectOptions, type CreateSavedToolOptions, type CreateServerToolsFilterOptions, type CreateUserPreferenceOptions, type CreateVaultFolderOptions, type CreateVaultMemoryOptions, type CryptoPriceClassification, type CryptoPricePreProcessorOptions, DEFAULT_BACKUP_FOLDER$1 as DEFAULT_BACKUP_FOLDER, DEFAULT_CACHE_EXPIRATION_MS, DEFAULT_CHUNK_CACHE_SIZE, DEFAULT_CHUNK_OVERLAP, DEFAULT_CHUNK_SIZE, DEFAULT_DECAY_POLICY, DEFAULT_CONVERSATIONS_FOLDER as DEFAULT_DRIVE_CONVERSATIONS_FOLDER, DEFAULT_ROOT_FOLDER as DEFAULT_DRIVE_ROOT_FOLDER, DEFAULT_BACKUP_FOLDER$1 as DEFAULT_DROPBOX_FOLDER, DEFAULT_EXCLUDED_SERVER_TOOLS, DEFAULT_BACKUP_FOLDER as DEFAULT_ICLOUD_BACKUP_FOLDER, DEFAULT_MAX_CLASSIFIER_CALLS_PER_SWEEP, DEFAULT_MIN_CHUNK_SIZE, DEFAULT_PERSONALITY_SETTINGS, DEFAULT_PROFILE_FACETS, DEFAULT_PROFILE_FACT_TYPE_WEIGHTS, DEFAULT_PROFILE_PROOF_ALPHA, DEFAULT_PROFILE_TREND_MULTIPLIERS, DEFAULT_SERVER_TOOLS_MATCH_OPTIONS, DEFAULT_VAULT_CACHE_SIZE, DatabaseManager, type DatabaseManagerLogger, type DatabaseManagerOptions, type DecayCandidateRaw, type DecayClassifier, type DecayInput, type DecayPolicy, type DecaySweepResult, type DecaySweeper, type DecayVerdict, type DeckProps, type DisplayToolMigrations, type DropboxAuthContextValue, DropboxAuthProvider, type DropboxAuthProviderProps, type DropboxExportResult, type DropboxImportResult, type DurableAutoExtractorOptions, ENTITY_FANOUT, ENTITY_KINDS, type EmbeddedWalletSignerFn, EncryptionKeyMissingError, type EncryptionKeyVersion, type EntityInput, type EntityKind, Entity as EntityModel, type EntityOperationsContext, ExcelProcessor, type ExtractFactsOptions, type ExtractOutcome, type ExtractedCandidate, type ExtractedEntity, type ExtractionCursorStore, type ExtractionFunnel, type ExtractionTimings, FILE_PLACEHOLDER_PREFIX, FILE_PLACEHOLDER_REGEX, type FactType, type FileMetadata, type FileProcessingReason, type FileProcessingStatus, type FileProcessor, type FileTypeQuery, type FileWithData, type FlushResult, type GetConversationsPageOptions, type GetMessagesPageOptions, type GoogleDriveAuthContextValue, GoogleDriveAuthProvider, type GoogleDriveAuthProviderProps, type GoogleDriveExportResult, type GoogleDriveImportResult, type GraphTraversalOptions, type GroupProps, HARD_DELETE_WINDOW_MS, type ICloudAuthContextValue, ICloudAuthProvider, type ICloudAuthProviderProps, type ICloudExportResult, type ICloudImportResult, INFERENCE_ID_HEADER, INTERNAL_FLOW_MARKER, type IconProps, type ImageProps, type InjectionClassifierOptions, type InjectionReason, type InteractionType, type KnownTag, type LazyStoredConversation, type LineProps, type LlmDecayClassifierOptions, type LlmNeighborRefinerOptions, type Logger, LoggerProvider, type LoggerProviderProps, MAX_HOPS, MEDIUM_TTL_MS, type ManualFactType, type MediaDimensions, type MediaFilterOptions, type MediaMetadata, type MediaOperationsContext, type MediaRole, type MediaType, type MemoriesNeedingTopicExtraction, type MemoryContextItem, type MemoryContextLane, type MemoryContextOptions, type MemoryContextResult, type EmbeddingOptions as MemoryEngineEmbeddingOptions, type MemoryEngineResult, type MemoryEngineSearchOptions, MemoryEntity as MemoryEntityModel, type MemoryExtractedEvent, type MemoryKind, type MemoryQuarantinedEvent, type MemoryToVerify, type MemoryVaultSearchOptions, type MemoryVaultToolOptions, type MemoryVerification, type MessageChunk, type MessageFeedback, type MessageOrigin, type MessageSkeleton, type ModelLoadProgress, NEVER_TTL_MS, NODE_BUDGET, type NeighborRefiner, type NowSource, type OCRFile, type ObservationTrend, type ObservationTrendInput, type OperationExecutor, PAST_EVENT_GRACE_MS, PROFILE_DOC_VERSION, type ParsedServerToolsResponse, type PdfExportOptions, type PdfExportProgress, type PdfExportStage, type PdfFile, PdfProcessor, type PendingInteraction, type PersonalitySettings, type PersonalitySliders, type PersonalityStyle, type PhoneCallPollingOptions, type PhotoIngestResult, type PhotoMediaRef, type PlatformStorage, type PortalLlmAuth, type PortalLlmFailure, type PortalLlmFailureReason, type PreprocessingOptions, type PreprocessingResult, type ProcessedFileResult, ProcessorRegistry, type ProfileConfigFingerprint, type ProfileDoc, type ProfileFacet, type ProfileFacetKey, type ProfileSalienceInput, type ProfileSection, type ProfileUpdate, type ProgressCallback, Project, type ProjectOperationsContext, type PromptPreProcessor, type PromptPreProcessorContext, type ProviderAuthState, type ProviderBackupState, ProviderStreamError, type PublishedPhotoMemory, type QuantizedEmbedding, type QuarantinedMemoryInfo, type QueueEncryptionContext, QueueManager, type QueueStatus, type QueuedOperation, type QueuedOperationType, R2_DEFAULT_TTL_MS, RECALL_MAX_LIMIT, RECALL_TOOL_NAME, type RankableVaultMemory, type RankedMemory, type RankedProfileCandidate, type RecallContext, type RecallDegradation, type RecallDiagnostics, type RecallEmptyReason, type RecallOptions, type RecallResult, type RecallToolCallbacks, type RecallToolOptions, type RecencyOptions, type RectProps, type ReflectOptions, type ReflectResult, type RequestEncryptionKeyOptions, RerankerUnavailableError, type ResumeStreamOptions, type ResumeStreamResult, type RetainAction, type RetainContext, type RetainOptions, type RetainResult, type RetainSource, SDK_SCHEMA_VERSION, SERVER_TOOL_DEPENDENCY_SETS, SHORT_TTL_MS, SLIDER_CONFIG, SLIDES_FILE_PATH, SLIDE_CANVAS_HEIGHT, SLIDE_CANVAS_WIDTH, STREAM_RESUMABLE_HEADER, SavedTool as SavedToolModel, type SavedToolOperationsContext, type SavedToolParameter, type ScoreBreakdown, type ScoreProfileSalienceOptions, type ScreenProps, type ScreenResult, type ScreenedCandidate, type SearchMessagesOptions, type SearchSource, type SelectServerToolsForPromptOptions, type SendMessageWithStorageArgs, type SendMessageWithStorageResult, type ServerTool, type ServerToolsFilter, type ServerToolsFilterFn, type ServerToolsFilterFunction, type ServerToolsOptions, type ServerToolsResponse, type SignMessageFn, type SignMessageOptions, type SlideProps, type StepFinishEvent, type StockPriceClassification, type StockPricePreProcessorOptions, type StorageOperationsContext, type StoredAppFile, type ChatCompletionUsage as StoredChatCompletionUsage, type StoredConversation, type StoredConversationMemory, type StoredEntity, type StoredFileWithContext, type StoredMedia, Media as StoredMediaModel, type StoredMessage, type StoredMessageWithSimilarity, type StoredModelPreference, ModelPreference as StoredModelPreferenceModel, type StoredProject, type StoredSavedTool, type StoredTopic, type StoredUserPreference, UserPreference as StoredUserPreferenceModel, type StoredVaultFolder, VaultFolder as StoredVaultFolderModel, type StoredVaultMemory, VaultMemory as StoredVaultMemoryModel, StreamExpiredError, type StreamMetaEvent, type StreamResumeHandle, type StreamSmoothingConfig, type SynthesizeProfileOptions, THEME_ATTRS, TOOL_RESULT_ORIGIN, TOPICS_EXTRACTION_VERSION, TOPIC_EXTRACTION_BATCH_SIZE, TREND_RECENT_WINDOW_DAYS, TREND_STALE_WINDOW_DAYS, type TextChunk, TextProcessor, type TextProps, type ThemeAttr, type ToolCallArgumentsDeltaEvent, type ToolMatchOptions, type ToolMatchResult, type ToolSet, type TopicExtractOptions, type TopicExtractionInput, type TopicExtractionRunResult, type TopicSkipReason, type TopicSource, type TranscriptionResult, type TurnCompleteEvent, type TurnSkippedEvent, type UIInteractionContextValue, UIInteractionProvider, type UIInteractionProviderProps, type UncheckedReason, type UnverifiableReason, type UpdateMediaOptions, type UpdateModelPreferenceOptions, type UpdateProjectOptions, type UpdateSavedToolOptions, type UpdateUserPreferenceOptions, type UpdateVaultFolderOptions, type UpdateVaultMemoryOptions, type UseBackupOptions, type UseBackupResult, type UseChatStorageOptions, type UseChatStorageResult, type UseCreditsOptions, type UseCreditsResult, type UseDropboxBackupOptions, type UseDropboxBackupResult, type UseEncryptionResult, type UseExportPdfResult, type UseFilesOptions, type UseFilesResult, type UseGoogleDriveBackupOptions, type UseGoogleDriveBackupResult, type UseICloudBackupOptions, type UseICloudBackupResult, type UseModelsResult, type UseOCRResult, type UsePdfResult, type UsePhoneCallsOptions, type UsePhoneCallsResult, type UseProjectsOptions, type UseProjectsResult, type UseSettingsOptions, type UseSettingsResult, type UseSubscriptionOptions, type UseSubscriptionResult, type UseToolsOptions, type UseToolsResult, type UseVoiceOptions, type UseVoiceResult, type UseWalletBindingOptions, type UseWalletBindingResult, VAULT_SIZE_HOP_CAP, type VaultCandidateKey, type VaultEmbeddingCache, type VaultEmbeddingExpectation, type VaultFolderOperationsContext, type VaultMemoryOperationsContext, type VaultMemoryVisibility, type VaultMemoryWriter, type VaultSaveOperation, type VaultSearchResult, type VaultWriteAction, type VaultWriteInput, type VaultWriteOutcome, type VerificationSources, type VerifyMemoriesForPublishOptions, type VoiceRecording, WalletPoller, WatermelonChatStorageAdapter, type WatermelonChatStorageAdapterOptions, type WeatherClassification, type WeatherPreProcessorOptions, type WebSearchClassification, type WebSearchPreProcessorOptions, type WhisperModel, WordProcessor, ZipProcessor, type ZipProcessorOptions, addConversationMemoriesOp, appFileToStored, archiveVaultMemoryOp, assembleMemoryContext, attachFileContextToLastUserMessage, backfillMemoryEntityUserIdsOp, backfillMemoryTopicsOp, buildAttachedFilesText, capHopsForDensity, chatStorageMigrations, chatStorageSchema, chunkAndEmbedAllMessages, chunkAndEmbedMessage, chunkText, classifyCryptoPrice, classifyCryptoPriceBatch, classifyDecay, classifyInjectionCandidates, classifyObservationTrend, classifyStockPrice, classifyStockPriceBatch, classifyWeather, classifyWeatherBatch, classifyWebSearch, classifyWebSearchBatch, clearAllEncryptionKeys, clearAllEncryptionState, clearAllKeyPairs, clearCalendarToken, clearConversationMemoriesOp, clearDriveToken, clearToken as clearDropboxToken, clearEncryptionKey, clearGithubToken, clearGoogleDriveToken, clearICloudAuth, clearKeyPair, clearLazyTitleCache, clearMemoryTopicsOverrideOp, clearNotionToken, clearServerToolsCache, consoleLogger, conversationMemoryToStored, cosineInt8, createAutoExtractor, createChunkVectorCache, createCryptoPricePreProcessor, createDecaySweeper, createDurableAutoExtractor, createGitHubTools, createLlmDecayClassifier, createLlmNeighborRefiner, createMediaBatchOp, createMediaOp, createMemoryEngineTool, createMemoryVaultSearchTool, createMemoryVaultTool, createMessageSourceResolver, createPlatformCursorStore, createProjectOp, createRecallTool, createSavedToolOp, createServerToolsFilter, createStockPricePreProcessor, createVaultEmbeddingCache, createVaultFolderOp, createVaultMemoriesBatchOp, createVaultMemoryOp, createWeatherPreProcessor, createWebSearchPreProcessor, decodeChunkVector, decryptConversationTitle, decryptData, decryptDataBatch, decryptDataBytes, decryptDataBytesFromBytes, decryptDataWithKey, defaultServerToolsFilter, deleteAllAppFilesOp, deleteAllVaultMemoriesForUserOp, deleteAppFileOp, deleteEncryptedFile, deleteMediaByConversationOp, deleteMediaByMessageOp, deleteMediaOp, deleteMessageOp, deleteProjectOp, deleteSavedToolOp, deleteVaultFolderOp, deleteVaultMemoryOp, dequantizeEmbedding, deriveKeyFromSignatureBytes, eagerEmbedContent, embedAllMessages, embedMessage, encodeChunkVector, encryptData, encryptDataBatch, encryptDataBytes, encryptDataWithKey, ensureDefaultFoldersOp, expandToolSetsAdditive, exportElementToPdf, exportMarkdownToPdf, exportPublicKey, extractAndLinkEntitiesForMemoriesOp, extractAndRetain, extractEntitiesForMemories, extractFacts, extractFileIds, fileExists, findById, findMatchingTools, findParentOfId, formatFileProcessingNotes, generateConversationId, generateEmbedding, generateEmbeddings, generateMediaId, generateProjectId, getAIGeneratedMediaOp, getAllSavedToolsOp, getAllVaultFoldersOp, getAllVaultMemoriesOp, getAllVaultMemoryContentsOp, getAndClearCalendarPendingMessage, getAndClearCalendarReturnUrl, getAndClearDrivePendingMessage, getAndClearDriveReturnUrl, getAndClearGithubPendingMessage, getAndClearGithubReturnUrl, getAndClearNotionPendingMessage, getAndClearNotionReturnUrl, getAppFileMapOp, getAppFileOp, getAppFilesOp, getAudioOp, getCachedServerTools, getCalendarAccessToken, getConversationMemoriesOp, getConversationsByProjectLazyOp, getConversationsByProjectOp, getConversationsLazyOp, getConversationsPageOp, getDecayCandidatesRawOp, getDocumentsOp, getDriveAccessToken, getEncryptionKey, getEntitiesByMemoryIdsOp, getGithubAccessToken, getGoogleDriveStoredToken, getId, getImagesOp, getLogger, getMediaByConversationOp, getMediaByIdOp, getMediaByIdsOp, getMediaByMessageOp, getMediaByModelOp, getMediaByRoleOp, getMediaBySourceUrlOp, getMediaByTypeOp, getMediaCountOp, getMediaCountsByTypeOp, getMediaOp, getMediaTypeFromMime, getMemoriesByEntityNamesOp, getMemoriesNeedingTopicExtractionOp, getNotionAccessToken, getNotionMCPUrl, getNumberAttr, getProjectConversationCountOp, getProjectConversationsOp, getProjectOp, getProjectsOp, getRecentMediaOp, getSavedToolByIdOp, getServerTools, getStringAttr, getSupportedFileTypes, getToolsChecksum, getUnfiledVaultMemoriesOp, getUserUploadedMediaOp, getValidCalendarToken, getValidDriveToken, getValidGithubToken, getValidNotionToken, getVaultCandidateKeysOp, getVaultEmbeddingsByIdsOp, getVaultFolderMemoryCountOp, getVaultMemoriesByIdsOp, getVaultMemoryOp, getVaultRankingProjectionsOp, getVideosOp, handleCalendarCallback, handleDriveCallback, handleGithubCallback, handleNotionCallback, hardDeleteDecayedOp, hardDeleteMediaOp, hasCalendarCredentials, hasDriveCredentials, hasDropboxCredentials, hasEncryptionKey, hasGithubCredentials, hasGoogleDriveCredentials, hasICloudCredentials, hasKeyPair, hasNotionCredentials, ingestPublishedPhotoMemoriesOp, injectionSignatureCatalog, insertAfterId, insertChild, isAnumaTag, isAttachedFilesText, isCalendarCallback, isDegradedTopicSkip, isDriveCallback, isEncrypted, isGithubCallback, isHtmlTag, isNotionCallback, isOPFSSupported, isR2UrlExpired, isRerankerAvailable, isSupportedFile, isSupportedMediaType, linkMemoryEntitiesOp, maskScopedEmbeddingCache, mediaToStored, migrateCalendarToken, migrateDisplayResult, migrateDriveToken, migrateGithubToken, migrateNotionClientRegistration, migrateNotionToken, moveMemoriesToFolderOp, noopLogger, onKeyAvailable, parseJsx, parseMedia, preEmbedVaultMemories, preprocessFiles, previewToolSelection, projectToStored, putAppFileOp, quantizeEmbedding, queueManager, rankProfileCandidates, readEncryptedFile, recall, reflect, refreshCalendarToken, refreshDriveToken, refreshEncryptionKeyIfMatches, refreshGithubToken, refreshNotionToken, relinkMemoryTopicsOp, relinkMisclassifiedVideosOp, removeById, renderAnumaJsx, renderAnumaTree, renderElementToCanvas, replaceById, replaceMemoryEntitiesGuardedOp, requestEncryptionKey, requestKeyPair, resolveFilePlaceholders, resolveThemeColor, restoreVaultMemoryOp, resumeStream, retain, revokeCalendarToken, revokeDriveToken, revokeGithubToken, revokeNotionAccess, savedToolToStored, scoreProfileSalience, screenCandidatesForInjection, sdkMigrations, sdkModelClasses, sdkSchema, searchChunksOp, searchMediaOp, searchMessagesOp, searchVaultMemories, seedEncryptionKeys, selectServerToolsForPrompt, serializeJsx, setLogger, setMemoryEntitiesOp, setMemoryVisibilityOp, settingsStorageSchema, shouldChunkMessage, shouldRecallMemory, shouldRefreshTools, stampTopicsExtractedAtOp, startGithubAuth, startNotionAuth, storeCalendarPendingMessage, storeCalendarReturnUrl, storeCalendarToken, storeDrivePendingMessage, storeDriveReturnUrl, storeDriveToken, storeGithubPendingMessage, storeGithubReturnUrl, storeGithubToken, storeNotionPendingMessage, storeNotionReturnUrl, streamCancelPath, streamReplayPath, stripLegacyChunkTextOp, summarizeObservationTrends, supersedeVaultMemoryOp, synthesizeProfile, traverseGraphLane, ttlForType, updateAttrs, updateConversationProjectOp, updateMediaMessageIdBatchOp, updateMediaOp, updateMessageFeedbackOp, updateProjectNameOp, updateProjectOp, updateSavedToolOp, updateVaultFolderContextOp, updateVaultFolderOp, updateVaultMemoryEmbeddingOp, updateVaultMemoryOp, useAnumaTheme, useBackup, useBackupAuth, useChat, useChatStorage, useCredits, useDatabaseManager, useDropboxAuth, useDropboxBackup, useEncryption, useExportPdf, useFiles, useGoogleDriveAuth, useGoogleDriveBackup, useICloudAuth, useICloudBackup, useModels, useOCR, usePdf, usePhoneCalls, useProjects, useSettings, useSubscription, useTools, useUIInteraction, useVoice, useWalletBinding, userPreferencesStorageSchema, verifyMemoriesForPublish, walk, webPlatformStorage, withActiveToolSetServerTools, withInternalFlowMarker, writeEncryptedFile };
17001
+ export { Anuma, type AnumaChild, AnumaJsxError, type AnumaNode, AnumaShadowIsolationProvider, type AnumaShadowIsolationProviderProps, type AnumaTheme, AnumaThemeProvider, type AnumaThemeProviderProps, AppFile as AppFileModel, type AppFileOperationsContext, type AttrValue, type AutoExtractMessage, type AutoExtractor, DEFAULT_CONVERSATIONS_FOLDER as BACKUP_DRIVE_CONVERSATIONS_FOLDER, DEFAULT_ROOT_FOLDER as BACKUP_DRIVE_ROOT_FOLDER, DEFAULT_BACKUP_FOLDER as BACKUP_ICLOUD_FOLDER, BUILT_IN_TOOL_SETS, type BackupAuthContextValue, BackupAuthProvider, type BackupAuthProviderProps, type BackupOperationOptions, BlobUrlManager, type Budget, CHUNKS_DISCARDED_ORIGIN, type CachedChunkVectors, type CachedServerTools, ChartCard, type ChartCardProps, type ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Conversation as ChatConversation, Message as ChatMessage, type ChatRole, type ChatStorageAdapter, type ChatStorageObservable, type ChunkSearchResult, type ChunkVectorCache, type ChunkingOptions, type CircleProps, type ClientToolsFilterFn, type ConsolidationAction, type ConsolidationFallbackReason, type ConversationMemoryInput, ConversationMemory as ConversationMemoryModel, type ConversationMemoryOperationsContext, type ConversationQueryOptions, type CreateAutoExtractorOptions, type CreateConversationOptions, type CreateDecaySweeperOptions, type CreateEntityOptions, type CreateMediaOptions, type CreateMessageOptions, type CreateModelPreferenceOptions, type CreateProjectOptions, type CreateSavedToolOptions, type CreateServerToolsFilterOptions, type CreateUserPreferenceOptions, type CreateVaultFolderOptions, type CreateVaultMemoryOptions, type CryptoPriceClassification, type CryptoPricePreProcessorOptions, DEFAULT_BACKUP_FOLDER$1 as DEFAULT_BACKUP_FOLDER, DEFAULT_CACHE_EXPIRATION_MS, DEFAULT_CHUNK_CACHE_SIZE, DEFAULT_CHUNK_OVERLAP, DEFAULT_CHUNK_SIZE, DEFAULT_DECAY_POLICY, DEFAULT_CONVERSATIONS_FOLDER as DEFAULT_DRIVE_CONVERSATIONS_FOLDER, DEFAULT_ROOT_FOLDER as DEFAULT_DRIVE_ROOT_FOLDER, DEFAULT_BACKUP_FOLDER$1 as DEFAULT_DROPBOX_FOLDER, DEFAULT_EXCLUDED_SERVER_TOOLS, DEFAULT_BACKUP_FOLDER as DEFAULT_ICLOUD_BACKUP_FOLDER, DEFAULT_MAX_CLASSIFIER_CALLS_PER_SWEEP, DEFAULT_MIN_CHUNK_SIZE, DEFAULT_PERSONALITY_SETTINGS, DEFAULT_PROFILE_FACETS, DEFAULT_PROFILE_FACT_TYPE_WEIGHTS, DEFAULT_PROFILE_PROOF_ALPHA, DEFAULT_PROFILE_TREND_MULTIPLIERS, DEFAULT_SERVER_TOOLS_MATCH_OPTIONS, DEFAULT_VAULT_CACHE_SIZE, DatabaseManager, type DatabaseManagerLogger, type DatabaseManagerOptions, type DecayCandidateRaw, type DecayClassifier, type DecayInput, type DecayPolicy, type DecaySweepResult, type DecaySweeper, type DecayVerdict, type DeckProps, type DisplayToolMigrations, type DropboxAuthContextValue, DropboxAuthProvider, type DropboxAuthProviderProps, type DropboxExportResult, type DropboxImportResult, type DurableAutoExtractorOptions, ENTITY_FANOUT, ENTITY_KINDS, type EmbeddedWalletSignerFn, EncryptionKeyMissingError, type EncryptionKeyVersion, type EntityInput, type EntityKind, Entity as EntityModel, type EntityOperationsContext, ExcelProcessor, type ExtractFactsOptions, type ExtractOutcome, type ExtractedCandidate, type ExtractedEntity, type ExtractionCursorStore, type ExtractionFunnel, type ExtractionTimings, FILE_PLACEHOLDER_PREFIX, FILE_PLACEHOLDER_REGEX, type FactType, type FileMetadata, type FileProcessingReason, type FileProcessingStatus, type FileProcessor, type FileTypeQuery, type FileWithData, type FlushResult, type GetConversationsPageOptions, type GetMessagesPageOptions, type GoogleDriveAuthContextValue, GoogleDriveAuthProvider, type GoogleDriveAuthProviderProps, type GoogleDriveExportResult, type GoogleDriveImportResult, type GraphTraversalOptions, type GroupProps, HARD_DELETE_WINDOW_MS, type ICloudAuthContextValue, ICloudAuthProvider, type ICloudAuthProviderProps, type ICloudExportResult, type ICloudImportResult, INFERENCE_ID_HEADER, INTERNAL_FLOW_MARKER, type IconProps, type ImageProps, type InjectionClassifierOptions, type InjectionReason, type InteractionType, type KnownTag, type LazyStoredConversation, type LineProps, type LlmDecayClassifierOptions, type LlmNeighborRefinerOptions, type LocalMemoryStoreOptions, type Logger, LoggerProvider, type LoggerProviderProps, MAX_HOPS, MEDIUM_TTL_MS, type ManualFactType, type MediaDimensions, type MediaFilterOptions, type MediaMetadata, type MediaOperationsContext, type MediaRole, type MediaType, type MemoriesNeedingTopicExtraction, type MemoryContextItem, type MemoryContextLane, type MemoryContextOptions, type MemoryContextResult, type MemoryCreate, type EmbeddingOptions as MemoryEngineEmbeddingOptions, type MemoryEngineResult, type MemoryEngineSearchOptions, MemoryEntity as MemoryEntityModel, type MemoryExtractedEvent, type MemoryKind, type MemoryListOptions, type MemoryMaintenance, type MemoryQuarantinedEvent, type MemoryRecallOptions, type MemoryRetainOptions, type MemoryStore, type MemorySubscribeOptions, type MemoryToVerify, type MemoryUpdate, type MemoryVaultSearchOptions, type MemoryVaultToolOptions, type MemoryVerification, type MessageChunk, type MessageFeedback, type MessageOrigin, type MessageSkeleton, type ModelLoadProgress, NEVER_TTL_MS, NODE_BUDGET, type NeighborRefiner, type NowSource, type OCRFile, type ObservationTrend, type ObservationTrendInput, type OperationExecutor, PAST_EVENT_GRACE_MS, PROFILE_DOC_VERSION, type ParsedServerToolsResponse, type PdfExportOptions, type PdfExportProgress, type PdfExportStage, type PdfFile, PdfProcessor, type PendingInteraction, type PersonalitySettings, type PersonalitySliders, type PersonalityStyle, type PhoneCallPollingOptions, type PhotoIngestResult, type PhotoMediaRef, type PlatformStorage, type PortalLlmAuth, type PortalLlmFailure, type PortalLlmFailureReason, type PreprocessingOptions, type PreprocessingResult, type ProcessedFileResult, ProcessorRegistry, type ProfileConfigFingerprint, type ProfileDoc, type ProfileFacet, type ProfileFacetKey, type ProfileSalienceInput, type ProfileSection, type ProfileUpdate, type ProgressCallback, Project, type ProjectOperationsContext, type PromptPreProcessor, type PromptPreProcessorContext, type ProviderAuthState, type ProviderBackupState, ProviderStreamError, type PublishedPhotoMemory, type QuantizedEmbedding, type QuarantinedMemoryInfo, type QueueEncryptionContext, QueueManager, type QueueStatus, type QueuedOperation, type QueuedOperationType, R2_DEFAULT_TTL_MS, RECALL_MAX_LIMIT, RECALL_TOOL_NAME, type RankableVaultMemory, type RankedMemory, type RankedProfileCandidate, type RecallContext, type RecallDegradation, type RecallDiagnostics, type RecallEmptyReason, type RecallOptions, type RecallResult, type RecallToolCallbacks, type RecallToolOptions, type RecencyOptions, type RectProps, type ReflectOptions, type ReflectResult, type RequestEncryptionKeyOptions, RerankerUnavailableError, type ResumeStreamOptions, type ResumeStreamResult, type RetainAction, type RetainContext, type RetainOptions, type RetainResult, type RetainSource, SDK_SCHEMA_VERSION, SERVER_TOOL_DEPENDENCY_SETS, SHORT_TTL_MS, SLIDER_CONFIG, SLIDES_FILE_PATH, SLIDE_CANVAS_HEIGHT, SLIDE_CANVAS_WIDTH, STREAM_RESUMABLE_HEADER, SavedTool as SavedToolModel, type SavedToolOperationsContext, type SavedToolParameter, type ScoreBreakdown, type ScoreProfileSalienceOptions, type ScreenProps, type ScreenResult, type ScreenedCandidate, type SearchMessagesOptions, type SearchSource, type SelectServerToolsForPromptOptions, type SendMessageWithStorageArgs, type SendMessageWithStorageResult, type ServerTool, type ServerToolsFilter, type ServerToolsFilterFn, type ServerToolsFilterFunction, type ServerToolsOptions, type ServerToolsResponse, type SignMessageFn, type SignMessageOptions, type SlideProps, type StepFinishEvent, type StockPriceClassification, type StockPricePreProcessorOptions, type StorageOperationsContext, type StoredAppFile, type ChatCompletionUsage as StoredChatCompletionUsage, type StoredConversation, type StoredConversationMemory, type StoredEntity, type StoredFileWithContext, type StoredMedia, Media as StoredMediaModel, type StoredMessage, type StoredMessageWithSimilarity, type StoredModelPreference, ModelPreference as StoredModelPreferenceModel, type StoredProject, type StoredSavedTool, type StoredTopic, type StoredUserPreference, UserPreference as StoredUserPreferenceModel, type StoredVaultFolder, VaultFolder as StoredVaultFolderModel, type StoredVaultMemory, VaultMemory as StoredVaultMemoryModel, StreamExpiredError, type StreamMetaEvent, type StreamResumeHandle, type StreamSmoothingConfig, type SynthesizeProfileOptions, THEME_ATTRS, TOOL_RESULT_ORIGIN, TOPICS_EXTRACTION_VERSION, TOPIC_EXTRACTION_BATCH_SIZE, TREND_RECENT_WINDOW_DAYS, TREND_STALE_WINDOW_DAYS, type TextChunk, TextProcessor, type TextProps, type ThemeAttr, type ToolCallArgumentsDeltaEvent, type ToolMatchOptions, type ToolMatchResult, type ToolSet, type TopicExtractOptions, type TopicExtractionInput, type TopicExtractionRunResult, type TopicSkipReason, type TopicSource, type TranscriptionResult, type TurnCompleteEvent, type TurnSkippedEvent, type UIInteractionContextValue, UIInteractionProvider, type UIInteractionProviderProps, type UncheckedReason, type UnverifiableReason, type UpdateMediaOptions, type UpdateModelPreferenceOptions, type UpdateProjectOptions, type UpdateSavedToolOptions, type UpdateUserPreferenceOptions, type UpdateVaultFolderOptions, type UpdateVaultMemoryOptions, type UseBackupOptions, type UseBackupResult, type UseChatStorageOptions, type UseChatStorageResult, type UseCreditsOptions, type UseCreditsResult, type UseDropboxBackupOptions, type UseDropboxBackupResult, type UseEncryptionResult, type UseExportPdfResult, type UseFilesOptions, type UseFilesResult, type UseGoogleDriveBackupOptions, type UseGoogleDriveBackupResult, type UseICloudBackupOptions, type UseICloudBackupResult, type UseModelsResult, type UseOCRResult, type UsePdfResult, type UsePhoneCallsOptions, type UsePhoneCallsResult, type UseProjectsOptions, type UseProjectsResult, type UseSettingsOptions, type UseSettingsResult, type UseSubscriptionOptions, type UseSubscriptionResult, type UseToolsOptions, type UseToolsResult, type UseVoiceOptions, type UseVoiceResult, type UseWalletBindingOptions, type UseWalletBindingResult, VAULT_SIZE_HOP_CAP, type VaultCandidateKey, type VaultEmbeddingCache, type VaultEmbeddingExpectation, type VaultFolderOperationsContext, type VaultMemoryOperationsContext, type VaultMemoryVisibility, type VaultMemoryWriter, type VaultSaveOperation, type VaultSearchResult, type VaultWriteAction, type VaultWriteInput, type VaultWriteOutcome, type VerificationSources, type VerifyMemoriesForPublishOptions, type VoiceRecording, WalletPoller, WatermelonChatStorageAdapter, type WatermelonChatStorageAdapterOptions, type WeatherClassification, type WeatherPreProcessorOptions, type WebSearchClassification, type WebSearchPreProcessorOptions, type WhisperModel, WordProcessor, ZipProcessor, type ZipProcessorOptions, addConversationMemoriesOp, appFileToStored, archiveVaultMemoryOp, assembleMemoryContext, attachFileContextToLastUserMessage, backfillMemoryEntityUserIdsOp, backfillMemoryTopicsOp, buildAttachedFilesText, capHopsForDensity, chatStorageMigrations, chatStorageSchema, chunkAndEmbedAllMessages, chunkAndEmbedMessage, chunkText, classifyCryptoPrice, classifyCryptoPriceBatch, classifyDecay, classifyInjectionCandidates, classifyObservationTrend, classifyStockPrice, classifyStockPriceBatch, classifyWeather, classifyWeatherBatch, classifyWebSearch, classifyWebSearchBatch, clearAllEncryptionKeys, clearAllEncryptionState, clearAllKeyPairs, clearCalendarToken, clearConversationMemoriesOp, clearDriveToken, clearToken as clearDropboxToken, clearEncryptionKey, clearGithubToken, clearGoogleDriveToken, clearICloudAuth, clearKeyPair, clearLazyTitleCache, clearMemoryTopicsOverrideOp, clearNotionToken, clearServerToolsCache, consoleLogger, conversationMemoryToStored, cosineInt8, createAutoExtractor, createChunkVectorCache, createCryptoPricePreProcessor, createDecaySweeper, createDurableAutoExtractor, createGitHubTools, createLlmDecayClassifier, createLlmNeighborRefiner, createLocalMemoryStore, createMediaBatchOp, createMediaOp, createMemoryEngineTool, createMemoryVaultSearchTool, createMemoryVaultTool, createMessageSourceResolver, createPlatformCursorStore, createProjectOp, createRecallTool, createSavedToolOp, createServerToolsFilter, createStockPricePreProcessor, createVaultEmbeddingCache, createVaultFolderOp, createVaultMemoriesBatchOp, createVaultMemoryOp, createWeatherPreProcessor, createWebSearchPreProcessor, decodeChunkVector, decryptConversationTitle, decryptData, decryptDataBatch, decryptDataBytes, decryptDataBytesFromBytes, decryptDataWithKey, defaultServerToolsFilter, deleteAllAppFilesOp, deleteAllVaultMemoriesForUserOp, deleteAppFileOp, deleteEncryptedFile, deleteMediaByConversationOp, deleteMediaByMessageOp, deleteMediaOp, deleteMessageOp, deleteProjectOp, deleteSavedToolOp, deleteVaultFolderOp, deleteVaultMemoryOp, dequantizeEmbedding, deriveKeyFromSignatureBytes, eagerEmbedContent, embedAllMessages, embedMessage, encodeChunkVector, encryptData, encryptDataBatch, encryptDataBytes, encryptDataWithKey, ensureDefaultFoldersOp, expandToolSetsAdditive, exportElementToPdf, exportMarkdownToPdf, exportPublicKey, extractAndLinkEntitiesForMemoriesOp, extractAndRetain, extractEntitiesForMemories, extractFacts, extractFileIds, extractMCPImageUrls, fileExists, findById, findMatchingTools, findParentOfId, formatFileProcessingNotes, generateConversationId, generateEmbedding, generateEmbeddings, generateMediaId, generateProjectId, getAIGeneratedMediaOp, getAllSavedToolsOp, getAllVaultFoldersOp, getAllVaultMemoriesOp, getAllVaultMemoryContentsOp, getAndClearCalendarPendingMessage, getAndClearCalendarReturnUrl, getAndClearDrivePendingMessage, getAndClearDriveReturnUrl, getAndClearGithubPendingMessage, getAndClearGithubReturnUrl, getAndClearNotionPendingMessage, getAndClearNotionReturnUrl, getAppFileMapOp, getAppFileOp, getAppFilesOp, getAudioOp, getCachedServerTools, getCalendarAccessToken, getConversationMemoriesOp, getConversationsByProjectLazyOp, getConversationsByProjectOp, getConversationsLazyOp, getConversationsPageOp, getDecayCandidatesRawOp, getDocumentsOp, getDriveAccessToken, getEncryptionKey, getEntitiesByMemoryIdsOp, getGithubAccessToken, getGoogleDriveStoredToken, getId, getImagesOp, getLogger, getMediaByConversationOp, getMediaByIdOp, getMediaByIdsOp, getMediaByMessageOp, getMediaByModelOp, getMediaByRoleOp, getMediaBySourceUrlOp, getMediaByTypeOp, getMediaCountOp, getMediaCountsByTypeOp, getMediaOp, getMediaTypeFromMime, getMemoriesByEntityNamesOp, getMemoriesNeedingTopicExtractionOp, getNotionAccessToken, getNotionMCPUrl, getNumberAttr, getProjectConversationCountOp, getProjectConversationsOp, getProjectOp, getProjectsOp, getRecentMediaOp, getSavedToolByIdOp, getServerTools, getStringAttr, getSupportedFileTypes, getToolsChecksum, getUnfiledVaultMemoriesOp, getUserUploadedMediaOp, getValidCalendarToken, getValidDriveToken, getValidGithubToken, getValidNotionToken, getVaultCandidateKeysOp, getVaultEmbeddingsByIdsOp, getVaultFolderMemoryCountOp, getVaultMemoriesByIdsOp, getVaultMemoryOp, getVaultRankingProjectionsOp, getVideosOp, handleCalendarCallback, handleDriveCallback, handleGithubCallback, handleNotionCallback, hardDeleteDecayedOp, hardDeleteMediaOp, hasCalendarCredentials, hasDriveCredentials, hasDropboxCredentials, hasEncryptionKey, hasGithubCredentials, hasGoogleDriveCredentials, hasICloudCredentials, hasKeyPair, hasNotionCredentials, ingestPublishedPhotoMemoriesOp, injectionSignatureCatalog, insertAfterId, insertChild, isAnumaTag, isAttachedFilesText, isCalendarCallback, isDegradedTopicSkip, isDriveCallback, isEncrypted, isGithubCallback, isHtmlTag, isNotionCallback, isOPFSSupported, isR2UrlExpired, isRerankerAvailable, isSupportedFile, isSupportedMediaType, linkMemoryEntitiesOp, maskScopedEmbeddingCache, mediaToStored, migrateCalendarToken, migrateDisplayResult, migrateDriveToken, migrateGithubToken, migrateNotionClientRegistration, migrateNotionToken, moveMemoriesToFolderOp, noopLogger, onKeyAvailable, parseJsx, parseMedia, preEmbedVaultMemories, preprocessFiles, previewToolSelection, projectToStored, putAppFileOp, quantizeEmbedding, queueManager, rankProfileCandidates, readEncryptedFile, recall, reflect, refreshCalendarToken, refreshDriveToken, refreshEncryptionKeyIfMatches, refreshGithubToken, refreshNotionToken, relinkMemoryTopicsOp, relinkMisclassifiedVideosOp, removeById, renderAnumaJsx, renderAnumaTree, renderElementToCanvas, replaceById, replaceMemoryEntitiesGuardedOp, requestEncryptionKey, requestKeyPair, resolveFilePlaceholders, resolveThemeColor, restoreVaultMemoryOp, resumeStream, retain, revokeCalendarToken, revokeDriveToken, revokeGithubToken, revokeNotionAccess, savedToolToStored, scoreProfileSalience, screenCandidatesForInjection, sdkMigrations, sdkModelClasses, sdkSchema, searchChunksOp, searchMediaOp, searchMessagesOp, searchVaultMemories, seedEncryptionKeys, selectServerToolsForPrompt, serializeJsx, setLogger, setMemoryEntitiesOp, setMemoryVisibilityOp, settingsStorageSchema, shouldChunkMessage, shouldRecallMemory, shouldRefreshTools, stampTopicsExtractedAtOp, startGithubAuth, startNotionAuth, storeCalendarPendingMessage, storeCalendarReturnUrl, storeCalendarToken, storeDrivePendingMessage, storeDriveReturnUrl, storeDriveToken, storeGithubPendingMessage, storeGithubReturnUrl, storeGithubToken, storeNotionPendingMessage, storeNotionReturnUrl, streamCancelPath, streamReplayPath, stripLegacyChunkTextOp, summarizeObservationTrends, supersedeVaultMemoryOp, synthesizeProfile, traverseGraphLane, ttlForType, updateAttrs, updateConversationProjectOp, updateMediaMessageIdBatchOp, updateMediaOp, updateMessageFeedbackOp, updateProjectNameOp, updateProjectOp, updateSavedToolOp, updateVaultFolderContextOp, updateVaultFolderOp, updateVaultMemoryEmbeddingOp, updateVaultMemoryOp, useAnumaTheme, useBackup, useBackupAuth, useChat, useChatStorage, useCredits, useDatabaseManager, useDropboxAuth, useDropboxBackup, useEncryption, useExportPdf, useFiles, useGoogleDriveAuth, useGoogleDriveBackup, useICloudAuth, useICloudBackup, useModels, useOCR, usePdf, usePhoneCalls, useProjects, useSettings, useSubscription, useTools, useUIInteraction, useVoice, useWalletBinding, userPreferencesStorageSchema, verifyMemoriesForPublish, walk, webPlatformStorage, withActiveToolSetServerTools, withInternalFlowMarker, writeEncryptedFile };