All files / src/crdt types.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21                                         
export type VectorClockMap = Record<string, number>
 
export type OperationType =
  | 'ITEM_CREATE'
  | 'ITEM_UPDATE'
  | 'ITEM_CHECK'
  | 'ITEM_DELETE'
  | 'LIST_UPDATE'
 
export interface CrdtOperation {
  id: string            // UUID, client-generated
  listId: string
  deviceId: string
  operationType: OperationType
  payload: Record<string, unknown>
  vectorClock: VectorClockMap
  createdAt: number     // epoch ms
}
 
export type ClockRelation = 'BEFORE' | 'AFTER' | 'CONCURRENT' | 'EQUAL'