@remit/api-openapi-types 0.0.55 → 0.0.57

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 +17 -8
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remit/api-openapi-types",
3
- "version": "0.0.55",
3
+ "version": "0.0.57",
4
4
  "type": "module",
5
5
  "main": "types.d.ts",
6
6
  "types": "types.d.ts",
package/types.d.ts CHANGED
@@ -1648,17 +1648,17 @@ with `onExisting: merge` to upsert instead.
1648
1648
  */
1649
1649
  parentMailboxId: string;
1650
1650
  /**
1651
- * Sync status for mailbox operations (create, rename, delete)
1651
+ * Which folder mutation is outstanding, read as a pair with `pendingPath` (docs/architecture/folder-rename-and-delete.md D1, D3). Total: a row written without one is `synced`, because a folder the server just told us about is confirmed. Four values carry six states — `pending` covers a create and a rename in flight, `failed` covers a failed rename and a failed delete — so every guard and every transition predicate names the pair, never this field alone.
1652
1652
  */
1653
- syncStatus?: MailboxSyncStatus;
1653
+ syncStatus: MailboxSyncStatus;
1654
1654
  /**
1655
- * Cursor integrity state machine for stored UIDs (epic #1281 invariant 5, issue #1272). Total per RFC 032: defaults to `normal` rather than being absent. A row written before this field existed reads back as `normal` (unset DynamoDB/Postgres attribute deserializes to the schema default).
1655
+ * The path a recorded rename is moving this folder to. Absent unless a rename is in flight or has just failed, which is what tells a create in flight from a rename in flight (D2, D3). `fullPath` stays the path the server holds throughout, so a failed rename is this field cleared rather than a subtree of paths restored. Invariant: non-null only while `syncStatus` is `pending` or `failed`.
1656
1656
  */
1657
- cursorState: MailboxCursorState;
1657
+ pendingPath?: String512;
1658
1658
  /**
1659
- * Previous path before rename (used during RENAME sync)
1659
+ * Cursor integrity state machine for stored UIDs (epic #1281 invariant 5, issue #1272). Total per RFC 032: defaults to `normal` rather than being absent. A row written before this field existed reads back as `normal` (unset DynamoDB/Postgres attribute deserializes to the schema default).
1660
1660
  */
1661
- oldPath?: String512;
1661
+ cursorState: MailboxCursorState;
1662
1662
  /**
1663
1663
  * Denormalized list of IMAP SPECIAL-USE designations (RFC 6154). Populated from the same `\Sent`, `\Drafts`, etc. attributes the server reports during LIST. Stored on the row to avoid an N+1 join when listing mailboxes.
1664
1664
  */
@@ -1719,9 +1719,13 @@ with `onExisting: merge` to upsert instead.
1719
1719
  */
1720
1720
  lastMessageSyncAt: number;
1721
1721
  /**
1722
- * Sync status for mailbox operations (create, rename, delete)
1722
+ * Which folder mutation is outstanding, read as a pair with `pendingPath` (docs/architecture/folder-rename-and-delete.md D1, D3). Total: a row written without one is `synced`, because a folder the server just told us about is confirmed. Four values carry six states — `pending` covers a create and a rename in flight, `failed` covers a failed rename and a failed delete — so every guard and every transition predicate names the pair, never this field alone.
1723
1723
  */
1724
- syncStatus?: MailboxSyncStatus;
1724
+ syncStatus: MailboxSyncStatus;
1725
+ /**
1726
+ * The path a recorded rename is moving this folder to. Absent unless a rename is in flight or has just failed, which is what tells a create in flight from a rename in flight (D2, D3). `fullPath` stays the path the server holds throughout, so a failed rename is this field cleared rather than a subtree of paths restored. Invariant: non-null only while `syncStatus` is `pending` or `failed`.
1727
+ */
1728
+ pendingPath?: String512;
1725
1729
  /**
1726
1730
  * Denormalized list of IMAP SPECIAL-USE designations (RFC 6154). Populated from the same `\Sent`, `\Drafts`, etc. attributes the server reports during LIST. Stored on the row to avoid an N+1 join when listing mailboxes.
1727
1731
  */
@@ -6540,6 +6544,7 @@ declare namespace Paths {
6540
6544
  from?: string;
6541
6545
  subject?: string;
6542
6546
  accountId?: Components.Schemas.UUID;
6547
+ mailboxId?: Components.Schemas.UUID;
6543
6548
  muted?: boolean;
6544
6549
  category?: Components.Schemas.MessageCategory[];
6545
6550
  unread?: boolean;
@@ -7320,6 +7325,8 @@ Field filters: `from` and `subject` each match one field, which the single `quer
7320
7325
 
7321
7326
  Account scope: `accountId` narrows every mode to the mailboxes of one account. The scope is built from the account's own mailboxes, so the listing, the count and the search all answer over the same set. Without it the listing is the cross-account aggregate.
7322
7327
 
7328
+ Folder scope: `mailboxId` narrows the same scope to one folder, and composes with `accountId` as a further AND — a folder of another account leaves the scope empty and matches nothing. It is how a caller asks what one folder holds of a cross-account search, counted in the same conversations the unscoped listing renders. A folder the scope already excludes — Trash, a muted one, one of a muted account — stays excluded.
7329
+
7323
7330
  Muted senders: `muted=false` excludes rows whose From address is muted, `muted=true` returns only those, and omitting it filters nothing. Muting is a property of the address rather than a column on the row, so this is the one predicate that reaches outside the ThreadMessage table; it applies to the listing and the `count` alike, which is what lets a caller that hides muted mail state a number that is the size of what it renders.
7324
7331
 
7325
7332
  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.
@@ -8154,6 +8161,8 @@ Field filters: `from` and `subject` each match one field, which the single `quer
8154
8161
 
8155
8162
  Account scope: `accountId` narrows every mode to the mailboxes of one account. The scope is built from the account's own mailboxes, so the listing, the count and the search all answer over the same set. Without it the listing is the cross-account aggregate.
8156
8163
 
8164
+ Folder scope: `mailboxId` narrows the same scope to one folder, and composes with `accountId` as a further AND — a folder of another account leaves the scope empty and matches nothing. It is how a caller asks what one folder holds of a cross-account search, counted in the same conversations the unscoped listing renders. A folder the scope already excludes — Trash, a muted one, one of a muted account — stays excluded.
8165
+
8157
8166
  Muted senders: `muted=false` excludes rows whose From address is muted, `muted=true` returns only those, and omitting it filters nothing. Muting is a property of the address rather than a column on the row, so this is the one predicate that reaches outside the ThreadMessage table; it applies to the listing and the `count` alike, which is what lets a caller that hides muted mail state a number that is the size of what it renders.
8158
8167
 
8159
8168
  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.