@arbidocs/sdk 0.3.140 → 0.3.141

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.
@@ -1414,7 +1414,7 @@ declare namespace assistant {
1414
1414
  */
1415
1415
 
1416
1416
  declare function listContacts(arbi: ArbiClient): Promise<{
1417
- external_id: string;
1417
+ external_id?: string | null | undefined;
1418
1418
  email: string;
1419
1419
  user?: {
1420
1420
  external_id: string;
@@ -1426,11 +1426,13 @@ declare function listContacts(arbi: ArbiClient): Promise<{
1426
1426
  encryption_public_key: string;
1427
1427
  is_sso: boolean;
1428
1428
  } | null | undefined;
1429
- status: "invitation_pending" | "invitation_expired" | "registered";
1429
+ status: "invitation_pending" | "invitation_expired" | "registered" | "failed";
1430
1430
  created_at: string;
1431
+ outcome?: ("invited" | "reinvited" | "not_resent_still_pending" | "contact_added" | "already_contact" | "failed") | null | undefined;
1432
+ outcome_detail?: string | null | undefined;
1431
1433
  }[]>;
1432
1434
  declare function addContacts(arbi: ArbiClient, emails: string[]): Promise<{
1433
- external_id: string;
1435
+ external_id?: string | null | undefined;
1434
1436
  email: string;
1435
1437
  user?: {
1436
1438
  external_id: string;
@@ -1442,8 +1444,10 @@ declare function addContacts(arbi: ArbiClient, emails: string[]): Promise<{
1442
1444
  encryption_public_key: string;
1443
1445
  is_sso: boolean;
1444
1446
  } | null | undefined;
1445
- status: "invitation_pending" | "invitation_expired" | "registered";
1447
+ status: "invitation_pending" | "invitation_expired" | "registered" | "failed";
1446
1448
  created_at: string;
1449
+ outcome?: ("invited" | "reinvited" | "not_resent_still_pending" | "contact_added" | "already_contact" | "failed") | null | undefined;
1450
+ outcome_detail?: string | null | undefined;
1447
1451
  }[]>;
1448
1452
  declare function removeContacts(arbi: ArbiClient, contactIds: string[]): Promise<void>;
1449
1453
  /**
@@ -1901,13 +1905,35 @@ type NoteSearchResponse = components['schemas']['NoteSearchResponse'];
1901
1905
  /** Create a note. `content` is required; `shared` makes it workspace-wide. */
1902
1906
  declare function createNote(arbi: ArbiClient, body: CreateNoteRequest): Promise<NoteResponse>;
1903
1907
  /** List the open workspace's notes (newest first). */
1908
+ /**
1909
+ * List notes. Passing a date range — or `datedOnly` — turns this into the
1910
+ * TIMELINE: only dated notes, ordered by when they happened rather than when
1911
+ * they were written. Each bound is read at its own precision and widened
1912
+ * outward, so `to: '2019'` runs through 31 December.
1913
+ *
1914
+ * The range selects by overlap, so a note spanning all of 2019 shows up in a
1915
+ * one-month window it covers.
1916
+ */
1904
1917
  declare function listNotes(arbi: ArbiClient, options?: {
1905
1918
  pinnedOnly?: boolean;
1919
+ from?: string;
1920
+ to?: string;
1921
+ datedOnly?: boolean;
1906
1922
  }): Promise<NoteResponse[]>;
1907
1923
  /** Semantic/keyword/hybrid search across the workspace's notes. */
1908
1924
  declare function searchNotes(arbi: ArbiClient, body: NoteSearchRequest): Promise<NoteSearchResponse>;
1909
1925
  declare function updateNote(arbi: ArbiClient, memoryId: string, body: UpdateNoteRequest): Promise<NoteResponse>;
1910
1926
  declare function deleteNote(arbi: ArbiClient, memoryId: string): Promise<void>;
1927
+ /**
1928
+ * Set a one-off reminder on a dated note. Give `remindAt` for an explicit time,
1929
+ * or `leadMinutes` to fire that long before the note's date; with neither it
1930
+ * fires when the note's span starts. A reminder whose time has already passed
1931
+ * is rejected rather than silently never firing.
1932
+ */
1933
+ declare function remindNote(arbi: ArbiClient, noteId: string, options?: {
1934
+ remindAt?: string;
1935
+ leadMinutes?: number;
1936
+ }): Promise<NoteResponse>;
1911
1937
 
1912
1938
  type notes_CreateNoteRequest = CreateNoteRequest;
1913
1939
  type notes_NoteResponse = NoteResponse;
@@ -1917,10 +1943,11 @@ type notes_UpdateNoteRequest = UpdateNoteRequest;
1917
1943
  declare const notes_createNote: typeof createNote;
1918
1944
  declare const notes_deleteNote: typeof deleteNote;
1919
1945
  declare const notes_listNotes: typeof listNotes;
1946
+ declare const notes_remindNote: typeof remindNote;
1920
1947
  declare const notes_searchNotes: typeof searchNotes;
1921
1948
  declare const notes_updateNote: typeof updateNote;
1922
1949
  declare namespace notes {
1923
- export { type notes_CreateNoteRequest as CreateNoteRequest, type notes_NoteResponse as NoteResponse, type notes_NoteSearchRequest as NoteSearchRequest, type notes_NoteSearchResponse as NoteSearchResponse, type notes_UpdateNoteRequest as UpdateNoteRequest, notes_createNote as createNote, notes_deleteNote as deleteNote, notes_listNotes as listNotes, notes_searchNotes as searchNotes, notes_updateNote as updateNote };
1950
+ export { type notes_CreateNoteRequest as CreateNoteRequest, type notes_NoteResponse as NoteResponse, type notes_NoteSearchRequest as NoteSearchRequest, type notes_NoteSearchResponse as NoteSearchResponse, type notes_UpdateNoteRequest as UpdateNoteRequest, notes_createNote as createNote, notes_deleteNote as deleteNote, notes_listNotes as listNotes, notes_remindNote as remindNote, notes_searchNotes as searchNotes, notes_updateNote as updateNote };
1924
1951
  }
1925
1952
 
1926
1953
  type DocUpdateRequest = components['schemas']['DocUpdateRequest'];
@@ -3121,7 +3148,7 @@ declare class Arbi {
3121
3148
  };
3122
3149
  readonly contacts: {
3123
3150
  list: () => Promise<{
3124
- external_id: string;
3151
+ external_id?: string | null | undefined;
3125
3152
  email: string;
3126
3153
  user?: {
3127
3154
  external_id: string;
@@ -3133,11 +3160,13 @@ declare class Arbi {
3133
3160
  encryption_public_key: string;
3134
3161
  is_sso: boolean;
3135
3162
  } | null | undefined;
3136
- status: "invitation_pending" | "invitation_expired" | "registered";
3163
+ status: "invitation_pending" | "invitation_expired" | "registered" | "failed";
3137
3164
  created_at: string;
3165
+ outcome?: ("invited" | "reinvited" | "not_resent_still_pending" | "contact_added" | "already_contact" | "failed") | null | undefined;
3166
+ outcome_detail?: string | null | undefined;
3138
3167
  }[]>;
3139
3168
  add: (emails: string[]) => Promise<{
3140
- external_id: string;
3169
+ external_id?: string | null | undefined;
3141
3170
  email: string;
3142
3171
  user?: {
3143
3172
  external_id: string;
@@ -3149,8 +3178,10 @@ declare class Arbi {
3149
3178
  encryption_public_key: string;
3150
3179
  is_sso: boolean;
3151
3180
  } | null | undefined;
3152
- status: "invitation_pending" | "invitation_expired" | "registered";
3181
+ status: "invitation_pending" | "invitation_expired" | "registered" | "failed";
3153
3182
  created_at: string;
3183
+ outcome?: ("invited" | "reinvited" | "not_resent_still_pending" | "contact_added" | "already_contact" | "failed") | null | undefined;
3184
+ outcome_detail?: string | null | undefined;
3154
3185
  }[]>;
3155
3186
  remove: (contactIds: string[]) => Promise<void>;
3156
3187
  groupByStatus: typeof groupContactsByStatus;
@@ -4278,14 +4309,22 @@ declare class Arbi {
4278
4309
  pinned: boolean;
4279
4310
  shared: boolean;
4280
4311
  source: string;
4281
- note_date?: string | null;
4312
+ date_start?: string | null;
4313
+ date_end?: string | null;
4314
+ timezone?: string | null;
4315
+ task_ext_id?: string | null;
4282
4316
  tags: components["schemas"]["NoteTagResponse"][];
4283
4317
  created_by_ext_id: string;
4284
4318
  created_at: string;
4285
4319
  updated_at: string;
4286
4320
  }>;
4321
+ /** Pass `from`/`to`/`datedOnly` for the timeline view — dated notes only,
4322
+ * ordered by when they happened. */
4287
4323
  list: (options?: {
4288
4324
  pinnedOnly?: boolean;
4325
+ from?: string;
4326
+ to?: string;
4327
+ datedOnly?: boolean;
4289
4328
  }) => Promise<{
4290
4329
  text: string;
4291
4330
  citations?: components["schemas"]["CitationSources"] | null;
@@ -4294,7 +4333,10 @@ declare class Arbi {
4294
4333
  pinned: boolean;
4295
4334
  shared: boolean;
4296
4335
  source: string;
4297
- note_date?: string | null;
4336
+ date_start?: string | null;
4337
+ date_end?: string | null;
4338
+ timezone?: string | null;
4339
+ task_ext_id?: string | null;
4298
4340
  tags: components["schemas"]["NoteTagResponse"][];
4299
4341
  created_by_ext_id: string;
4300
4342
  created_at: string;
@@ -4311,13 +4353,38 @@ declare class Arbi {
4311
4353
  pinned: boolean;
4312
4354
  shared: boolean;
4313
4355
  source: string;
4314
- note_date?: string | null;
4356
+ date_start?: string | null;
4357
+ date_end?: string | null;
4358
+ timezone?: string | null;
4359
+ task_ext_id?: string | null;
4315
4360
  tags: components["schemas"]["NoteTagResponse"][];
4316
4361
  created_by_ext_id: string;
4317
4362
  created_at: string;
4318
4363
  updated_at: string;
4319
4364
  }>;
4320
4365
  delete: (noteId: string) => Promise<void>;
4366
+ /** One-off reminder on a dated note: an explicit `remindAt`, or
4367
+ * `leadMinutes` before its date. */
4368
+ remind: (noteId: string, options?: {
4369
+ remindAt?: string;
4370
+ leadMinutes?: number;
4371
+ }) => Promise<{
4372
+ text: string;
4373
+ citations?: components["schemas"]["CitationSources"] | null;
4374
+ external_id: string;
4375
+ workspace_ext_id: string;
4376
+ pinned: boolean;
4377
+ shared: boolean;
4378
+ source: string;
4379
+ date_start?: string | null;
4380
+ date_end?: string | null;
4381
+ timezone?: string | null;
4382
+ task_ext_id?: string | null;
4383
+ tags: components["schemas"]["NoteTagResponse"][];
4384
+ created_by_ext_id: string;
4385
+ created_at: string;
4386
+ updated_at: string;
4387
+ }>;
4321
4388
  };
4322
4389
  readonly sessions: {
4323
4390
  list: () => Promise<{
@@ -1414,7 +1414,7 @@ declare namespace assistant {
1414
1414
  */
1415
1415
 
1416
1416
  declare function listContacts(arbi: ArbiClient): Promise<{
1417
- external_id: string;
1417
+ external_id?: string | null | undefined;
1418
1418
  email: string;
1419
1419
  user?: {
1420
1420
  external_id: string;
@@ -1426,11 +1426,13 @@ declare function listContacts(arbi: ArbiClient): Promise<{
1426
1426
  encryption_public_key: string;
1427
1427
  is_sso: boolean;
1428
1428
  } | null | undefined;
1429
- status: "invitation_pending" | "invitation_expired" | "registered";
1429
+ status: "invitation_pending" | "invitation_expired" | "registered" | "failed";
1430
1430
  created_at: string;
1431
+ outcome?: ("invited" | "reinvited" | "not_resent_still_pending" | "contact_added" | "already_contact" | "failed") | null | undefined;
1432
+ outcome_detail?: string | null | undefined;
1431
1433
  }[]>;
1432
1434
  declare function addContacts(arbi: ArbiClient, emails: string[]): Promise<{
1433
- external_id: string;
1435
+ external_id?: string | null | undefined;
1434
1436
  email: string;
1435
1437
  user?: {
1436
1438
  external_id: string;
@@ -1442,8 +1444,10 @@ declare function addContacts(arbi: ArbiClient, emails: string[]): Promise<{
1442
1444
  encryption_public_key: string;
1443
1445
  is_sso: boolean;
1444
1446
  } | null | undefined;
1445
- status: "invitation_pending" | "invitation_expired" | "registered";
1447
+ status: "invitation_pending" | "invitation_expired" | "registered" | "failed";
1446
1448
  created_at: string;
1449
+ outcome?: ("invited" | "reinvited" | "not_resent_still_pending" | "contact_added" | "already_contact" | "failed") | null | undefined;
1450
+ outcome_detail?: string | null | undefined;
1447
1451
  }[]>;
1448
1452
  declare function removeContacts(arbi: ArbiClient, contactIds: string[]): Promise<void>;
1449
1453
  /**
@@ -1901,13 +1905,35 @@ type NoteSearchResponse = components['schemas']['NoteSearchResponse'];
1901
1905
  /** Create a note. `content` is required; `shared` makes it workspace-wide. */
1902
1906
  declare function createNote(arbi: ArbiClient, body: CreateNoteRequest): Promise<NoteResponse>;
1903
1907
  /** List the open workspace's notes (newest first). */
1908
+ /**
1909
+ * List notes. Passing a date range — or `datedOnly` — turns this into the
1910
+ * TIMELINE: only dated notes, ordered by when they happened rather than when
1911
+ * they were written. Each bound is read at its own precision and widened
1912
+ * outward, so `to: '2019'` runs through 31 December.
1913
+ *
1914
+ * The range selects by overlap, so a note spanning all of 2019 shows up in a
1915
+ * one-month window it covers.
1916
+ */
1904
1917
  declare function listNotes(arbi: ArbiClient, options?: {
1905
1918
  pinnedOnly?: boolean;
1919
+ from?: string;
1920
+ to?: string;
1921
+ datedOnly?: boolean;
1906
1922
  }): Promise<NoteResponse[]>;
1907
1923
  /** Semantic/keyword/hybrid search across the workspace's notes. */
1908
1924
  declare function searchNotes(arbi: ArbiClient, body: NoteSearchRequest): Promise<NoteSearchResponse>;
1909
1925
  declare function updateNote(arbi: ArbiClient, memoryId: string, body: UpdateNoteRequest): Promise<NoteResponse>;
1910
1926
  declare function deleteNote(arbi: ArbiClient, memoryId: string): Promise<void>;
1927
+ /**
1928
+ * Set a one-off reminder on a dated note. Give `remindAt` for an explicit time,
1929
+ * or `leadMinutes` to fire that long before the note's date; with neither it
1930
+ * fires when the note's span starts. A reminder whose time has already passed
1931
+ * is rejected rather than silently never firing.
1932
+ */
1933
+ declare function remindNote(arbi: ArbiClient, noteId: string, options?: {
1934
+ remindAt?: string;
1935
+ leadMinutes?: number;
1936
+ }): Promise<NoteResponse>;
1911
1937
 
1912
1938
  type notes_CreateNoteRequest = CreateNoteRequest;
1913
1939
  type notes_NoteResponse = NoteResponse;
@@ -1917,10 +1943,11 @@ type notes_UpdateNoteRequest = UpdateNoteRequest;
1917
1943
  declare const notes_createNote: typeof createNote;
1918
1944
  declare const notes_deleteNote: typeof deleteNote;
1919
1945
  declare const notes_listNotes: typeof listNotes;
1946
+ declare const notes_remindNote: typeof remindNote;
1920
1947
  declare const notes_searchNotes: typeof searchNotes;
1921
1948
  declare const notes_updateNote: typeof updateNote;
1922
1949
  declare namespace notes {
1923
- export { type notes_CreateNoteRequest as CreateNoteRequest, type notes_NoteResponse as NoteResponse, type notes_NoteSearchRequest as NoteSearchRequest, type notes_NoteSearchResponse as NoteSearchResponse, type notes_UpdateNoteRequest as UpdateNoteRequest, notes_createNote as createNote, notes_deleteNote as deleteNote, notes_listNotes as listNotes, notes_searchNotes as searchNotes, notes_updateNote as updateNote };
1950
+ export { type notes_CreateNoteRequest as CreateNoteRequest, type notes_NoteResponse as NoteResponse, type notes_NoteSearchRequest as NoteSearchRequest, type notes_NoteSearchResponse as NoteSearchResponse, type notes_UpdateNoteRequest as UpdateNoteRequest, notes_createNote as createNote, notes_deleteNote as deleteNote, notes_listNotes as listNotes, notes_remindNote as remindNote, notes_searchNotes as searchNotes, notes_updateNote as updateNote };
1924
1951
  }
1925
1952
 
1926
1953
  type DocUpdateRequest = components['schemas']['DocUpdateRequest'];
@@ -3121,7 +3148,7 @@ declare class Arbi {
3121
3148
  };
3122
3149
  readonly contacts: {
3123
3150
  list: () => Promise<{
3124
- external_id: string;
3151
+ external_id?: string | null | undefined;
3125
3152
  email: string;
3126
3153
  user?: {
3127
3154
  external_id: string;
@@ -3133,11 +3160,13 @@ declare class Arbi {
3133
3160
  encryption_public_key: string;
3134
3161
  is_sso: boolean;
3135
3162
  } | null | undefined;
3136
- status: "invitation_pending" | "invitation_expired" | "registered";
3163
+ status: "invitation_pending" | "invitation_expired" | "registered" | "failed";
3137
3164
  created_at: string;
3165
+ outcome?: ("invited" | "reinvited" | "not_resent_still_pending" | "contact_added" | "already_contact" | "failed") | null | undefined;
3166
+ outcome_detail?: string | null | undefined;
3138
3167
  }[]>;
3139
3168
  add: (emails: string[]) => Promise<{
3140
- external_id: string;
3169
+ external_id?: string | null | undefined;
3141
3170
  email: string;
3142
3171
  user?: {
3143
3172
  external_id: string;
@@ -3149,8 +3178,10 @@ declare class Arbi {
3149
3178
  encryption_public_key: string;
3150
3179
  is_sso: boolean;
3151
3180
  } | null | undefined;
3152
- status: "invitation_pending" | "invitation_expired" | "registered";
3181
+ status: "invitation_pending" | "invitation_expired" | "registered" | "failed";
3153
3182
  created_at: string;
3183
+ outcome?: ("invited" | "reinvited" | "not_resent_still_pending" | "contact_added" | "already_contact" | "failed") | null | undefined;
3184
+ outcome_detail?: string | null | undefined;
3154
3185
  }[]>;
3155
3186
  remove: (contactIds: string[]) => Promise<void>;
3156
3187
  groupByStatus: typeof groupContactsByStatus;
@@ -4278,14 +4309,22 @@ declare class Arbi {
4278
4309
  pinned: boolean;
4279
4310
  shared: boolean;
4280
4311
  source: string;
4281
- note_date?: string | null;
4312
+ date_start?: string | null;
4313
+ date_end?: string | null;
4314
+ timezone?: string | null;
4315
+ task_ext_id?: string | null;
4282
4316
  tags: components["schemas"]["NoteTagResponse"][];
4283
4317
  created_by_ext_id: string;
4284
4318
  created_at: string;
4285
4319
  updated_at: string;
4286
4320
  }>;
4321
+ /** Pass `from`/`to`/`datedOnly` for the timeline view — dated notes only,
4322
+ * ordered by when they happened. */
4287
4323
  list: (options?: {
4288
4324
  pinnedOnly?: boolean;
4325
+ from?: string;
4326
+ to?: string;
4327
+ datedOnly?: boolean;
4289
4328
  }) => Promise<{
4290
4329
  text: string;
4291
4330
  citations?: components["schemas"]["CitationSources"] | null;
@@ -4294,7 +4333,10 @@ declare class Arbi {
4294
4333
  pinned: boolean;
4295
4334
  shared: boolean;
4296
4335
  source: string;
4297
- note_date?: string | null;
4336
+ date_start?: string | null;
4337
+ date_end?: string | null;
4338
+ timezone?: string | null;
4339
+ task_ext_id?: string | null;
4298
4340
  tags: components["schemas"]["NoteTagResponse"][];
4299
4341
  created_by_ext_id: string;
4300
4342
  created_at: string;
@@ -4311,13 +4353,38 @@ declare class Arbi {
4311
4353
  pinned: boolean;
4312
4354
  shared: boolean;
4313
4355
  source: string;
4314
- note_date?: string | null;
4356
+ date_start?: string | null;
4357
+ date_end?: string | null;
4358
+ timezone?: string | null;
4359
+ task_ext_id?: string | null;
4315
4360
  tags: components["schemas"]["NoteTagResponse"][];
4316
4361
  created_by_ext_id: string;
4317
4362
  created_at: string;
4318
4363
  updated_at: string;
4319
4364
  }>;
4320
4365
  delete: (noteId: string) => Promise<void>;
4366
+ /** One-off reminder on a dated note: an explicit `remindAt`, or
4367
+ * `leadMinutes` before its date. */
4368
+ remind: (noteId: string, options?: {
4369
+ remindAt?: string;
4370
+ leadMinutes?: number;
4371
+ }) => Promise<{
4372
+ text: string;
4373
+ citations?: components["schemas"]["CitationSources"] | null;
4374
+ external_id: string;
4375
+ workspace_ext_id: string;
4376
+ pinned: boolean;
4377
+ shared: boolean;
4378
+ source: string;
4379
+ date_start?: string | null;
4380
+ date_end?: string | null;
4381
+ timezone?: string | null;
4382
+ task_ext_id?: string | null;
4383
+ tags: components["schemas"]["NoteTagResponse"][];
4384
+ created_by_ext_id: string;
4385
+ created_at: string;
4386
+ updated_at: string;
4387
+ }>;
4321
4388
  };
4322
4389
  readonly sessions: {
4323
4390
  list: () => Promise<{
package/dist/browser.cjs CHANGED
@@ -5567,6 +5567,7 @@ __export(notes_exports, {
5567
5567
  createNote: () => createNote,
5568
5568
  deleteNote: () => deleteNote,
5569
5569
  listNotes: () => listNotes,
5570
+ remindNote: () => remindNote,
5570
5571
  searchNotes: () => searchNotes,
5571
5572
  updateNote: () => updateNote
5572
5573
  });
@@ -5576,7 +5577,14 @@ async function createNote(arbi, body) {
5576
5577
  async function listNotes(arbi, options) {
5577
5578
  return requireData(
5578
5579
  await arbi.fetch.GET("/v1/notes/list", {
5579
- params: { query: { pinned_only: options?.pinnedOnly ?? false } }
5580
+ params: {
5581
+ query: {
5582
+ pinned_only: options?.pinnedOnly ?? false,
5583
+ date_from: options?.from,
5584
+ date_to: options?.to,
5585
+ dated_only: options?.datedOnly
5586
+ }
5587
+ }
5580
5588
  }),
5581
5589
  "Failed to list notes"
5582
5590
  );
@@ -5599,6 +5607,18 @@ async function deleteNote(arbi, memoryId) {
5599
5607
  });
5600
5608
  if (error) throw new Error("Failed to delete note");
5601
5609
  }
5610
+ async function remindNote(arbi, noteId, options = {}) {
5611
+ return requireData(
5612
+ await arbi.fetch.POST("/v1/notes/{note_ext_id}/remind", {
5613
+ params: { path: { note_ext_id: noteId } },
5614
+ body: {
5615
+ remind_at: options.remindAt ?? null,
5616
+ lead_minutes: options.leadMinutes ?? null
5617
+ }
5618
+ }),
5619
+ "Failed to set reminder"
5620
+ );
5621
+ }
5602
5622
 
5603
5623
  // src/arbi.ts
5604
5624
  var Arbi = class {
@@ -6079,10 +6099,15 @@ var Arbi = class {
6079
6099
  // ── Workspace notes ─────────────────────────────────────────────────
6080
6100
  notes = {
6081
6101
  create: (body) => createNote(this.requireClient(), body),
6102
+ /** Pass `from`/`to`/`datedOnly` for the timeline view — dated notes only,
6103
+ * ordered by when they happened. */
6082
6104
  list: (options) => listNotes(this.requireClient(), options),
6083
6105
  search: (body) => searchNotes(this.requireClient(), body),
6084
6106
  update: (noteId, body) => updateNote(this.requireClient(), noteId, body),
6085
- delete: (noteId) => deleteNote(this.requireClient(), noteId)
6107
+ delete: (noteId) => deleteNote(this.requireClient(), noteId),
6108
+ /** One-off reminder on a dated note: an explicit `remindAt`, or
6109
+ * `leadMinutes` before its date. */
6110
+ remind: (noteId, options = {}) => remindNote(this.requireClient(), noteId, options)
6086
6111
  };
6087
6112
  // ── Sessions ────────────────────────────────────────────────────────
6088
6113
  sessions = {