@haverstack/core 0.38.0 → 0.40.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.
Files changed (76) hide show
  1. package/README.md +79 -16
  2. package/dist/access.js +1 -1
  3. package/dist/access.js.map +1 -1
  4. package/dist/adapter-entry.d.ts +2 -1
  5. package/dist/adapter-entry.d.ts.map +1 -1
  6. package/dist/adapter-entry.js +2 -1
  7. package/dist/adapter-entry.js.map +1 -1
  8. package/dist/changes.js +3 -3
  9. package/dist/combine.d.ts.map +1 -1
  10. package/dist/combine.js +2 -3
  11. package/dist/combine.js.map +1 -1
  12. package/dist/errors.d.ts +16 -3
  13. package/dist/errors.d.ts.map +1 -1
  14. package/dist/errors.js +23 -2
  15. package/dist/errors.js.map +1 -1
  16. package/dist/grants.d.ts +9 -1
  17. package/dist/grants.d.ts.map +1 -1
  18. package/dist/grants.js +44 -4
  19. package/dist/grants.js.map +1 -1
  20. package/dist/index.d.ts +4 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +3 -0
  23. package/dist/index.js.map +1 -1
  24. package/dist/query-validation.d.ts +51 -1
  25. package/dist/query-validation.d.ts.map +1 -1
  26. package/dist/query-validation.js +155 -1
  27. package/dist/query-validation.js.map +1 -1
  28. package/dist/record-changes.d.ts +15 -1
  29. package/dist/record-changes.d.ts.map +1 -1
  30. package/dist/record-changes.js +33 -3
  31. package/dist/record-changes.js.map +1 -1
  32. package/dist/record-id.js +1 -1
  33. package/dist/record-id.js.map +1 -1
  34. package/dist/schema.d.ts +6 -7
  35. package/dist/schema.d.ts.map +1 -1
  36. package/dist/schema.js +33 -10
  37. package/dist/schema.js.map +1 -1
  38. package/dist/scoped-stack.d.ts +27 -17
  39. package/dist/scoped-stack.d.ts.map +1 -1
  40. package/dist/scoped-stack.js +111 -120
  41. package/dist/scoped-stack.js.map +1 -1
  42. package/dist/stack.d.ts +120 -44
  43. package/dist/stack.d.ts.map +1 -1
  44. package/dist/stack.js +153 -189
  45. package/dist/stack.js.map +1 -1
  46. package/dist/testing.d.ts +28 -11
  47. package/dist/testing.d.ts.map +1 -1
  48. package/dist/testing.js +42 -37
  49. package/dist/testing.js.map +1 -1
  50. package/dist/type-handle.d.ts +157 -0
  51. package/dist/type-handle.d.ts.map +1 -0
  52. package/dist/type-handle.js +131 -0
  53. package/dist/type-handle.js.map +1 -0
  54. package/dist/types.d.ts +63 -20
  55. package/dist/types.d.ts.map +1 -1
  56. package/dist/types.js.map +1 -1
  57. package/dist/validate.d.ts +7 -0
  58. package/dist/validate.d.ts.map +1 -1
  59. package/dist/validate.js +122 -7
  60. package/dist/validate.js.map +1 -1
  61. package/dist/wire-body.d.ts +79 -0
  62. package/dist/wire-body.d.ts.map +1 -0
  63. package/dist/wire-body.js +177 -0
  64. package/dist/wire-body.js.map +1 -0
  65. package/dist/wire-entry.d.ts +4 -2
  66. package/dist/wire-entry.d.ts.map +1 -1
  67. package/dist/wire-entry.js +8 -3
  68. package/dist/wire-entry.js.map +1 -1
  69. package/dist/wire-record.d.ts.map +1 -1
  70. package/dist/wire-record.js +27 -14
  71. package/dist/wire-record.js.map +1 -1
  72. package/dist/wire-request.d.ts +52 -2
  73. package/dist/wire-request.d.ts.map +1 -1
  74. package/dist/wire-request.js +222 -23
  75. package/dist/wire-request.js.map +1 -1
  76. package/package.json +1 -1
package/dist/stack.d.ts CHANGED
@@ -13,9 +13,10 @@
13
13
  *
14
14
  * Apps should never talk to a StackAdapter directly.
15
15
  */
16
- import type { StackRecord, StackType, TypeSchema, TypeId, BaseId, StackAdapter, StackQuery, QueryResult, AuthorityAssociation, DataAssociation, Migration, RecordVersion, StackCapabilities, IfVersionOptions, GrantContent, TypeGrant, PutAttachmentOptions, AttachmentContent, FileId, EntityId, AppId, RecordId, Actor, ActorOptions, RecordChange, RecordChangeSet, SubscribeOptions, Unsubscribe, JournalQuery, RecordJournalEntry } from './types.js';
16
+ import type { StackRecord, StackType, TypeSchema, TypeId, BaseId, StackAdapter, StackQuery, QueryResult, AssociationEdit, AuthorityAssociation, DataAssociation, Migration, RecordVersion, StackCapabilities, IfVersionOptions, GrantContent, TypeGrant, PutAttachmentOptions, AttachmentContent, FileId, EntityId, AppId, RecordId, Actor, ActorOptions, RecordChange, RecordChangeSet, SubscribeOptions, Unsubscribe, JournalQuery, VersionsQuery, RecordJournalEntry } from './types.js';
17
17
  import type { GrantQuery } from './grants.js';
18
18
  import { ScopedStack } from './scoped-stack.js';
19
+ import type { ContentOf, PatchOf, ReadonlyTypeSchema, TypedChange, TypedChangeSet, TypedQuery, TypedSubscribeOptions, TypedRecord, TypeHandle } from './type-handle.js';
19
20
  /**
20
21
  * An Actor in the one form `Stack` stores: a `principalId` equal to the
21
22
  * subject is dropped, so "acted as itself" has a single spelling, and an
@@ -118,6 +119,12 @@ export type GetRecordOptions = {
118
119
  * See docs/spec/data-model.md § Type migrations.
119
120
  */
120
121
  presentAt?: 'stored' | 'latest';
122
+ /**
123
+ * Soft-deleted records are hidden by default, as query() hides them: a
124
+ * tombstone reads as `null`. Pass true to read it back.
125
+ * See docs/spec/versioning.md § Deletion.
126
+ */
127
+ includeDeleted?: boolean;
121
128
  };
122
129
  export type DeleteRecordOptions = IfVersionOptions & {
123
130
  /** If true, permanently remove the record and all its history. Default: false */
@@ -158,7 +165,8 @@ export type DeleteAndReturnResult = DeleteResult & {
158
165
  export type DefineTypeOptions = {
159
166
  id: TypeId;
160
167
  name: string;
161
- schema: TypeSchema;
168
+ /** A handle's `schema` is accepted as written, readonly members and all. */
169
+ schema: ReadonlyTypeSchema;
162
170
  migratesFrom?: TypeId;
163
171
  };
164
172
  /**
@@ -168,10 +176,24 @@ export type DefineTypeOptions = {
168
176
  */
169
177
  export interface StackClient {
170
178
  readonly capabilities: StackCapabilities;
179
+ create<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, content: ContentOf<S>, opts?: CreateRecordOptions): Promise<TypedRecord<S>>;
171
180
  create<T extends Record<string, unknown> = Record<string, unknown>>(typeId: TypeId, content: T, opts?: CreateRecordOptions): Promise<StackRecord & {
172
181
  content: T;
173
182
  }>;
183
+ /**
184
+ * Typed read: the record at `presentAt: 'latest'`, checked to be exactly
185
+ * the handle's Type with every enum field holding a value the handle
186
+ * lists, else it throws. Live records only — a tombstone reads as `null`,
187
+ * and there is no `includeDeleted`.
188
+ * See docs/spec/data-model.md § Type handles.
189
+ */
190
+ get<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, id: RecordId): Promise<TypedRecord<S> | null>;
174
191
  get(id: RecordId, opts?: GetRecordOptions): Promise<StackRecord | null>;
192
+ /** Typed read of the handle's whole family — see the typed `get()`. */
193
+ query<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, query?: TypedQuery): Promise<{
194
+ records: TypedRecord<S>[];
195
+ cursor: string | null;
196
+ }>;
175
197
  query(query?: StackQuery): Promise<QueryResult>;
176
198
  /**
177
199
  * Resolve a DID to its `_entity` card — family-wide and soft-deleted
@@ -193,26 +215,44 @@ export interface StackClient {
193
215
  * one refused key refuses the call.
194
216
  * See docs/spec/data-model.md § Mutations.
195
217
  */
218
+ mutate<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, id: RecordId, changes: TypedChangeSet<S>, opts?: IfVersionOptions): Promise<TypedRecord<S>>;
196
219
  mutate(id: RecordId, changes: RecordChangeSet, opts?: IfVersionOptions): Promise<StackRecord>;
197
220
  /** mutate() with `contentPatch` alone — the common case, named for it. */
221
+ patchContent<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, id: RecordId, patch: PatchOf<S>, opts?: IfVersionOptions): Promise<TypedRecord<S>>;
198
222
  patchContent(id: RecordId, patch: Record<string, unknown | null>, opts?: IfVersionOptions): Promise<StackRecord>;
199
223
  /**
200
- * Add an association. Never bumps `version`/`updatedAt` and takes no
201
- * `ifVersion` — a set-add composes regardless of write order.
202
- * See docs/spec/versioning.md § Version history.
224
+ * Add associations in one atomic write and one journal entry. Never bumps
225
+ * `version`/`updatedAt` and takes no `ifVersion` — a set-add composes
226
+ * regardless of write order. See docs/spec/data-model.md § Mutations and
227
+ * docs/spec/versioning.md § Version history.
228
+ */
229
+ associate(id: RecordId, associations: DataAssociation[]): Promise<StackRecord>;
230
+ /** Remove associations, matched by identity — see associate(). */
231
+ dissociate(id: RecordId, associations: DataAssociation[]): Promise<StackRecord>;
232
+ /**
233
+ * Apply a list of adds and removes to a record's data associations as one
234
+ * atomic write — the cover swap. associate() and dissociate() are this with
235
+ * one half each; `mutate({ associations })` is the only whole-set write.
236
+ * `repoint` is not a request: an add naming an attachment the record
237
+ * already holds re-points it. See docs/spec/data-model.md § Mutations.
238
+ */
239
+ amendAssociations(id: RecordId, changes: AssociationEdit[]): Promise<StackRecord>;
240
+ /**
241
+ * Extend who reaches a record — the record-level mirror of the type-level
242
+ * `grantType()`, and the amending spelling of the `permissions` key, which
243
+ * replaces the whole set. `write` never implies `read`: grant both,
244
+ * `grantAccess(id, [read, write])`. No-bump, like associate().
245
+ * See docs/spec/access-control.md § Write implies read.
203
246
  */
204
- associate(id: RecordId, association: DataAssociation): Promise<StackRecord>;
205
- /** Remove an association. Never bumps `version`/`updatedAt` — see associate(). */
206
- dissociate(id: RecordId, association: DataAssociation): Promise<StackRecord>;
247
+ grantAccess(id: RecordId, permissions: AuthorityAssociation[]): Promise<StackRecord>;
248
+ /** Withdraw elements of who reaches a record — see grantAccess(). */
249
+ revokeAccess(id: RecordId, permissions: AuthorityAssociation[]): Promise<StackRecord>;
207
250
  /**
208
- * Extend who reaches a record by one element — the record-level mirror of
209
- * the type-level `grantType()`, and the amending spelling of the
210
- * `permissions` key, which replaces the whole set. No-bump, like
211
- * associate(). See docs/spec/access-control.md § Record-level permissions.
251
+ * amendAssociations() for permissions: adds and removes in one atomic
252
+ * write, so a downgrade (remove `write`, keep `read`) is one change.
253
+ * See docs/spec/access-control.md § Record-level permissions.
212
254
  */
213
- grantAccess(id: RecordId, permission: AuthorityAssociation): Promise<StackRecord>;
214
- /** Withdraw one element of who reaches a record — see grantAccess(). */
215
- revokeAccess(id: RecordId, permission: AuthorityAssociation): Promise<StackRecord>;
255
+ amendAccess(id: RecordId, changes: AssociationEdit[]): Promise<StackRecord>;
216
256
  delete(id: RecordId, opts?: DeleteRecordOptions): Promise<DeleteResult>;
217
257
  /**
218
258
  * delete(), plus the record it acted on — read and destroyed as one
@@ -222,7 +262,7 @@ export interface StackClient {
222
262
  */
223
263
  deleteAndReturn(id: RecordId, opts?: DeleteRecordOptions): Promise<DeleteAndReturnResult>;
224
264
  undelete(id: RecordId, opts?: IfVersionOptions): Promise<StackRecord>;
225
- getVersions(id: RecordId): Promise<RecordVersion[]>;
265
+ getVersions(id: RecordId, query?: VersionsQuery): Promise<RecordVersion[]>;
226
266
  getVersion(id: RecordId, version: number): Promise<RecordVersion | null>;
227
267
  restoreVersion(id: RecordId, version: number, opts?: IfVersionOptions): Promise<StackRecord>;
228
268
  /**
@@ -250,6 +290,12 @@ export interface StackClient {
250
290
  }>;
251
291
  deleteAttachment(fileId: FileId): Promise<void>;
252
292
  collectAttachmentGarbage(opts?: CollectAttachmentGarbageOptions): Promise<CollectAttachmentGarbageResult>;
293
+ /**
294
+ * Typed subscription: delivers only changes to records of exactly the
295
+ * handle's Type, each `record` typed as its content. See
296
+ * docs/spec/data-model.md § Type handles.
297
+ */
298
+ subscribe<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, handler: (change: TypedChange<S>) => void, opts?: TypedSubscribeOptions): Promise<Unsubscribe>;
253
299
  subscribe(handler: (change: RecordChange) => void, opts?: SubscribeOptions): Promise<Unsubscribe>;
254
300
  }
255
301
  export declare class Stack implements StackClient {
@@ -339,7 +385,7 @@ export declare class Stack implements StackClient {
339
385
  * anything beyond additive evolution throws StackSchemaDriftError. See
340
386
  * docs/spec/data-model.md § Schema drift detection.
341
387
  */
342
- defineType({ id, name, schema, migratesFrom }: DefineTypeOptions): Promise<StackType>;
388
+ defineType({ id, name, schema: declared, migratesFrom, }: DefineTypeOptions): Promise<StackType>;
343
389
  getType(id: TypeId): Promise<StackType | null>;
344
390
  /** Refreshes typeCache wholesale — the explicit way to see a rename made by another writer. */
345
391
  listTypes(): Promise<StackType[]>;
@@ -385,6 +431,7 @@ export declare class Stack implements StackClient {
385
431
  * — see BackdatableCreateRecordOptions and docs/spec/data-model.md §
386
432
  * Record IDs.
387
433
  */
434
+ create<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, content: ContentOf<S>, opts?: BackdatableCreateRecordOptions): Promise<TypedRecord<S>>;
388
435
  create<T extends Record<string, unknown> = Record<string, unknown>>(typeId: TypeId, content: T, opts?: BackdatableCreateRecordOptions): Promise<StackRecord & {
389
436
  content: T;
390
437
  }>;
@@ -399,8 +446,10 @@ export declare class Stack implements StackClient {
399
446
  /**
400
447
  * Get a record by ID, exactly as stored — no implicit migration. Pass
401
448
  * { presentAt: 'latest' } to migrate in memory; only migrateAll()
402
- * commits migrations to disk.
449
+ * commits migrations to disk. A soft-deleted record answers `null` unless
450
+ * { includeDeleted: true } is passed.
403
451
  */
452
+ get<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, id: RecordId): Promise<TypedRecord<S> | null>;
404
453
  get(id: RecordId, opts?: GetRecordOptions): Promise<StackRecord | null>;
405
454
  /**
406
455
  * Apply a change set as one atomic write — see the StackClient
@@ -412,12 +461,14 @@ export declare class Stack implements StackClient {
412
461
  * against the record's *current* stored type; `typeId` never changes here.
413
462
  * See docs/spec/data-model.md § Mutations.
414
463
  */
464
+ mutate<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, id: RecordId, changes: TypedChangeSet<S>, opts?: IfVersionOptions & ActorOptions): Promise<TypedRecord<S>>;
415
465
  mutate(id: RecordId, changes: RecordChangeSet, opts?: IfVersionOptions & ActorOptions): Promise<StackRecord>;
416
466
  /**
417
467
  * mutate() with `contentPatch` alone. The common case by a wide margin,
418
468
  * and named for what it does rather than for a symmetry with create()
419
469
  * that a patch does not have.
420
470
  */
471
+ patchContent<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, id: RecordId, patch: PatchOf<S>, opts?: IfVersionOptions & ActorOptions): Promise<TypedRecord<S>>;
421
472
  patchContent(id: RecordId, patch: Record<string, unknown | null>, opts?: IfVersionOptions & ActorOptions): Promise<StackRecord>;
422
473
  /**
423
474
  * Every check a change set owes before anything is written, in one pass:
@@ -444,7 +495,7 @@ export declare class Stack implements StackClient {
444
495
  */
445
496
  private assertGroupAdminRemains;
446
497
  /**
447
- * Add an association to a record — no-bump and no snapshot, per the
498
+ * Add associations to a record — no-bump and no snapshot, per the
448
499
  * StackClient declaration above.
449
500
  *
450
501
  * An association the record already holds, saying the same thing, is a
@@ -454,34 +505,56 @@ export declare class Stack implements StackClient {
454
505
  * file. What a re-point overwrote is kept only by the journal, on that
455
506
  * entry's `repoint`. See docs/spec/journal.md § The entry.
456
507
  */
457
- associate(id: RecordId, association: DataAssociation, opts?: ActorOptions): Promise<StackRecord>;
508
+ associate(id: RecordId, associations: DataAssociation[], opts?: ActorOptions): Promise<StackRecord>;
458
509
  /**
459
- * Remove an association from a record — see associate(). Matched by kind,
460
- * label and payload; a no-op if not found. The emitted event names the
461
- * association by identity only, since an attachment's
510
+ * Remove associations from a record — see associate(). Matched by kind,
511
+ * label and payload; an element not found is a no-op. The emitted event
512
+ * names each association by identity only, since an attachment's
462
513
  * `attachmentRecordId` describes nothing current once it is gone; the
463
514
  * journal is where it survives.
464
515
  */
465
- dissociate(id: RecordId, association: DataAssociation, opts?: ActorOptions): Promise<StackRecord>;
516
+ dissociate(id: RecordId, associations: DataAssociation[], opts?: ActorOptions): Promise<StackRecord>;
517
+ /**
518
+ * The atomic form of associate() and dissociate(): one list of adds and
519
+ * removes, one adapter write, one journal entry. The journal records each
520
+ * element in full — a remove with its annotation, a re-point with what it
521
+ * overwrote — so the entry is as undoable as a single-element one.
522
+ * See docs/spec/data-model.md § Mutations.
523
+ */
524
+ amendAssociations(id: RecordId, changes: AssociationEdit[], opts?: ActorOptions, surface?: string): Promise<StackRecord>;
466
525
  /**
467
- * Extend who reaches a record by one element. The spelling that survives
468
- * two admins sharing a record at once: a `permissions` key write replaces
469
- * the whole set, so the later of two concurrent ones drops what the
470
- * earlier granted. No-bump, like associate(); an element the record
471
- * already carries is a no-op.
526
+ * Extend who reaches a record. The spelling that survives two admins
527
+ * sharing a record at once: a `permissions` key write replaces the whole
528
+ * set, so the later of two concurrent ones drops what the earlier
529
+ * granted. No-bump, like associate(); an element the record already
530
+ * carries is a no-op. `write` never implies `read` — name both.
472
531
  */
473
- grantAccess(id: RecordId, permission: AuthorityAssociation, opts?: ActorOptions): Promise<StackRecord>;
532
+ grantAccess(id: RecordId, permissions: AuthorityAssociation[], opts?: ActorOptions): Promise<StackRecord>;
474
533
  /**
475
- * Withdraw one element of who reaches a record — see grantAccess() for
476
- * why this is a verb rather than a key write. An element the record does
477
- * not carry is a no-op. Returns the record as it now stands.
534
+ * Withdraw elements of who reaches a record — see grantAccess() for why
535
+ * this is a verb rather than a key write. An element the record does not
536
+ * carry is a no-op. Returns the record as it now stands.
478
537
  */
479
- revokeAccess(id: RecordId, permission: AuthorityAssociation, opts?: ActorOptions): Promise<StackRecord>;
538
+ revokeAccess(id: RecordId, permissions: AuthorityAssociation[], opts?: ActorOptions): Promise<StackRecord>;
539
+ /**
540
+ * The atomic form of grantAccess() and revokeAccess(). The
541
+ * write-implies-read invariant is asked once, of the set the whole list
542
+ * produces. See docs/spec/access-control.md § Write implies read.
543
+ */
544
+ amendAccess(id: RecordId, changes: AssociationEdit[], opts?: ActorOptions, surface?: string): Promise<StackRecord>;
480
545
  /**
481
546
  * Hold a permission set to the cross-element invariant — see
482
547
  * validatePermissions() in access.ts for why it reads the post-state.
483
548
  */
484
549
  private assertPermissionSet;
550
+ /**
551
+ * A soft-deleted record has no current state to edit, so the verbs that
552
+ * edit one refuse it; undelete() and commitMigration() do not call this.
553
+ * Asked after the record is found and, under ScopedStack, after the
554
+ * authority decision. See docs/spec/versioning.md § Mutations are refused,
555
+ * not applied to a tombstone.
556
+ */
557
+ private refuseIfDeleted;
485
558
  /** The record, or the not-found refusal every mutating verb owes. */
486
559
  private requireRecord;
487
560
  /**
@@ -562,6 +635,10 @@ export declare class Stack implements StackClient {
562
635
  * stored; pass presentAt: 'latest' to migrate in memory. See
563
636
  * docs/spec/data-model.md § Queries.
564
637
  */
638
+ query<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, query?: TypedQuery): Promise<{
639
+ records: TypedRecord<S>[];
640
+ cursor: string | null;
641
+ }>;
565
642
  query(query?: StackQuery): Promise<QueryResult>;
566
643
  /**
567
644
  * Resolve filter.baseId into a concrete typeId set (intersected with
@@ -570,7 +647,7 @@ export declare class Stack implements StackClient {
570
647
  * the caller can short-circuit without an adapter round trip.
571
648
  */
572
649
  private resolveBaseIdFilter;
573
- getVersions(id: RecordId): Promise<RecordVersion[]>;
650
+ getVersions(id: RecordId, query?: VersionsQuery): Promise<RecordVersion[]>;
574
651
  /**
575
652
  * A record's change journal, oldest first — what moved, who moved it, and
576
653
  * the association deltas nothing else retains. `ScopedStack` applies the
@@ -772,6 +849,7 @@ export declare class Stack implements StackClient {
772
849
  * makes subscribe-then-query the gap-free startup order everywhere. A
773
850
  * local stack is live immediately.
774
851
  */
852
+ subscribe<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>, handler: (change: TypedChange<S>) => void, opts?: TypedSubscribeOptions): Promise<Unsubscribe>;
775
853
  subscribe(handler: (change: RecordChange) => void, opts?: SubscribeOptions): Promise<Unsubscribe>;
776
854
  /**
777
855
  * Ask the adapter to relay changes that originated elsewhere. Absent on
@@ -818,11 +896,10 @@ export declare class Stack implements StackClient {
818
896
  * needs, not the suffix that looks narrowest. See
819
897
  * docs/spec/access-control.md § Delegation: principal and subject.
820
898
  *
821
- * `typeOrBaseId` is a versioned TypeId (`"baseId@version"`) or a bare
822
- * baseId; either names the whole family. See
823
- * docs/spec/access-control.md § Type-level grants.
899
+ * `baseId` names the whole family and is refused when it carries an
900
+ * `@version` suffix. See docs/spec/access-control.md § Type-level grants.
824
901
  */
825
- grantType(typeOrBaseId: TypeId | BaseId, grant: TypeGrant): Promise<StackRecord & {
902
+ grantType(baseId: BaseId, grant: TypeGrant): Promise<StackRecord & {
826
903
  content: GrantContent;
827
904
  }>;
828
905
  /**
@@ -844,7 +921,7 @@ export declare class Stack implements StackClient {
844
921
  })[]>;
845
922
  /**
846
923
  * The inverse of grantType(): soft-deletes the _grant records on
847
- * `typeOrBaseId`'s family matching `grant`, at the same granularity
924
+ * `baseId`'s family matching `grant`, at the same granularity
848
925
  * grantType() writes — the grantee is matched whole, role included, and
849
926
  * the actions exactly. A soft delete like any other — the owner can
850
927
  * undelete a revocation.
@@ -855,13 +932,12 @@ export declare class Stack implements StackClient {
855
932
  * revocation has to stay safe. See
856
933
  * docs/spec/access-control.md § Listing and revoking.
857
934
  */
858
- revokeType(typeOrBaseId: TypeId | BaseId, grant: TypeGrant): Promise<(StackRecord & {
935
+ revokeType(baseId: BaseId, grant: TypeGrant): Promise<(StackRecord & {
859
936
  content: GrantContent;
860
937
  })[]>;
861
938
  /**
862
- * Actions must be known GrantAction values, typeIds must be well-formed,
863
- * and the _grant/_config families are refused — see
864
- * docs/spec/access-control.md § Type-level grants.
939
+ * Actions must be known GrantAction values; the target is held to the
940
+ * same rule every `_grant` write meets — see validateGrantBaseId().
865
941
  */
866
942
  private checkGrantValid;
867
943
  private seedSystemTypes;
@@ -1 +1 @@
1
- {"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../src/stack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../src/stack.ts"],"names":[],"mappings":"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"}