Files
standardnotes-app-web/packages/models/src/Domain/Runtime/Collection/CollectionInterface.ts
2022-07-05 20:58:23 +02:00

14 lines
744 B
TypeScript

import { UuidMap } from '@standardnotes/utils'
export interface CollectionInterface {
/** Maintains an index where the direct map for each item id is an array
* of item ids that the item references. This is essentially equivalent to
* item.content.references, but keeps state even when the item is deleted.
* So if tag A references Note B, referenceMap.directMap[A.uuid] == [B.uuid].
* The inverse map for each item is an array of item ids where the items reference the
* key item. So if tag A references Note B, referenceMap.inverseMap[B.uuid] == [A.uuid].
* This allows callers to determine for a given item, who references it?
* It would be prohibitive to look this up on demand */
readonly referenceMap: UuidMap
}