@remit/api-openapi-types 0.0.45 → 0.0.47

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/types.d.ts +38 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remit/api-openapi-types",
3
- "version": "0.0.45",
3
+ "version": "0.0.47",
4
4
  "type": "module",
5
5
  "main": "types.d.ts",
6
6
  "types": "types.d.ts",
package/types.d.ts CHANGED
@@ -3463,11 +3463,18 @@ asking "is this slot free" never has to do the merging itself.
3463
3463
  reportedAt: number;
3464
3464
  }
3465
3465
  /**
3466
- * Aggregate response for `searchThreads`. Carries the matching rows (`items`), a
3467
- pagination `continuationToken`, and an optional `count` of every message the
3468
- query matches. `items` is omitted when `results=false` (count-only); `count` is
3469
- present only when `count=true`. Thread-specific so the shared `ResultList<T>`
3470
- (7 endpoints) stays untouched.
3466
+ * Aggregate response for the filterable thread listings — `searchThreads` and
3467
+ `listAllThreads`. Carries the matching rows (`items`), a pagination
3468
+ `continuationToken`, and an optional `count` of what the query matches.
3469
+ `items` is omitted when `results=false` (count-only); `count` is present only
3470
+ when `count=true`. Thread-specific so the shared `ResultList<T>` (7 endpoints)
3471
+ stays untouched.
3472
+
3473
+ `listAllThreads` answers with this model rather than `ResultList<T>` for that
3474
+ same reason: it needs the count field and the shared model cannot carry one.
3475
+ One model over both operations rather than a second of the same shape, so a
3476
+ client reading a filtered thread listing reads one response type whether the
3477
+ listing is scoped to a mailbox or spans every account.
3471
3478
  */
3472
3479
  export interface ThreadSearchResponse {
3473
3480
  /**
@@ -3479,7 +3486,18 @@ present only when `count=true`. Thread-specific so the shared `ResultList<T>`
3479
3486
  */
3480
3487
  continuationToken?: String800;
3481
3488
  /**
3482
- * How many messages the query matches, over the whole mailbox and independent of `limit`. Present only when `count=true`. With `senderTrust` or `dkimMismatch` in the query the count is over the enriched window instead, since those are resolved off the row.
3489
+ * How much the query matches, over the whole scope and independent of `limit`.
3490
+ Present only when `count=true`.
3491
+
3492
+ Each operation counts what it lists. `searchThreads` lists messages of one
3493
+ mailbox and counts messages; with `senderTrust` or `dkimMismatch` in the
3494
+ query that count is over the enriched window instead, since those are
3495
+ resolved off the row. `listAllThreads` counts CONVERSATIONS across every
3496
+ non-muted mailbox of every account — a thread holding two matching messages
3497
+ counts once, and so does one message reachable through a real folder and a
3498
+ virtual copy of it — because that is what the cross-account listing renders
3499
+ after collapsing by `threadId`. A count that disagreed with the rows beneath
3500
+ it would be a third number for the same set.
3483
3501
  */
3484
3502
  count?: number;
3485
3503
  }
@@ -4359,7 +4377,7 @@ either way and cannot tell which it received.
4359
4377
  */
4360
4378
  status: MessageStatus;
4361
4379
  /**
4362
- * Sync status for move/delete operations. Defaults to `synced` (nothing pending) so a freshly-synced message never looks like it has an outstanding move/delete.
4380
+ * Sync status for move/delete operations. The `synced` column default only applies to a row written without the field: the repository always supplies one, and an ordinary inbound sync writes `pending`, which nothing later promotes. So `pending` here does not mean an outstanding move or delete — `status` names that, and `failed` marks a mutation that gave up.
4363
4381
  */
4364
4382
  syncStatus: MessageSyncStatus;
4365
4383
  /**
@@ -6451,6 +6469,11 @@ declare namespace Paths {
6451
6469
  limit?: number;
6452
6470
  starred?: boolean;
6453
6471
  query?: string;
6472
+ category?: Components.Schemas.MessageCategory[];
6473
+ unread?: boolean;
6474
+ attachments?: boolean;
6475
+ count?: boolean;
6476
+ results?: boolean;
6454
6477
  }
6455
6478
  namespace Responses {
6456
6479
  export type $200 = void;
@@ -7215,6 +7238,10 @@ Search mode and pagination: `limit` is a page size over MATCHES, capped server-s
7215
7238
  What a row is in search mode: one per message, not one per mailbox. This differs from the starred mode above, where the same mail filed in two folders is two rows sharing a `threadId`. Collapsing by `threadId` is still a client's job if it renders one row per CONVERSATION, since distinct messages in one thread remain distinct rows here.
7216
7239
 
7217
7240
  Callers that omit `query` are unaffected: the INBOX (and starred) listings behave exactly as before.
7241
+
7242
+ Row filters: `category`, `unread` and `attachments` are columns on the ThreadMessage row, so each is a predicate inside the query rather than a pass over what a page returned. They compose with every mode above — INBOX, starred and search alike — and a page therefore comes back full of matches however rare the criterion is. This is what the cross-account collections need: filtering the pages a client happens to have loaded shows an empty list whenever the matching mail sits below the newest page (#308).
7243
+
7244
+ Counting: `count=true` answers how many CONVERSATIONS match, over the whole scope and independent of `limit`. `results=false` omits the rows, which is how a header total is read without also paying for a page of mail. Conversations rather than rows because that is what this listing renders: a row is per mailbox, so the same mail filed in two folders is two rows sharing a `threadId`, and clients collapse by it. Counting rows would put a third number beside a list that shows a second one.
7218
7245
  */
7219
7246
  'listAllThreads'(
7220
7247
  parameters?: Parameters<Paths.ListAllThreads.QueryParameters> | null,
@@ -8037,6 +8064,10 @@ Search mode and pagination: `limit` is a page size over MATCHES, capped server-s
8037
8064
  What a row is in search mode: one per message, not one per mailbox. This differs from the starred mode above, where the same mail filed in two folders is two rows sharing a `threadId`. Collapsing by `threadId` is still a client's job if it renders one row per CONVERSATION, since distinct messages in one thread remain distinct rows here.
8038
8065
 
8039
8066
  Callers that omit `query` are unaffected: the INBOX (and starred) listings behave exactly as before.
8067
+
8068
+ Row filters: `category`, `unread` and `attachments` are columns on the ThreadMessage row, so each is a predicate inside the query rather than a pass over what a page returned. They compose with every mode above — INBOX, starred and search alike — and a page therefore comes back full of matches however rare the criterion is. This is what the cross-account collections need: filtering the pages a client happens to have loaded shows an empty list whenever the matching mail sits below the newest page (#308).
8069
+
8070
+ Counting: `count=true` answers how many CONVERSATIONS match, over the whole scope and independent of `limit`. `results=false` omits the rows, which is how a header total is read without also paying for a page of mail. Conversations rather than rows because that is what this listing renders: a row is per mailbox, so the same mail filed in two folders is two rows sharing a `threadId`, and clients collapse by it. Counting rows would put a third number beside a list that shows a second one.
8040
8071
  */
8041
8072
  'get'(
8042
8073
  parameters?: Parameters<Paths.ListAllThreads.QueryParameters> | null,