mirror of
https://github.com/standardnotes/server
synced 2026-07-14 00:01:54 -04:00
* feat: content type as a value object * feat: turn items into domain entities * fix: update @standardnotes/api * fix(syncing-server): bindings order
24 lines
1.1 KiB
TypeScript
24 lines
1.1 KiB
TypeScript
import { Item } from './Item'
|
|
import { ItemQuery } from './ItemQuery'
|
|
import { ReadStream } from 'fs'
|
|
import { ExtendedIntegrityPayload } from './ExtendedIntegrityPayload'
|
|
|
|
export interface ItemRepositoryInterface {
|
|
deleteByUserUuid(userUuid: string): Promise<void>
|
|
findAll(query: ItemQuery): Promise<Item[]>
|
|
findAllRaw<T>(query: ItemQuery): Promise<T[]>
|
|
streamAll(query: ItemQuery): Promise<ReadStream>
|
|
countAll(query: ItemQuery): Promise<number>
|
|
findContentSizeForComputingTransferLimit(
|
|
query: ItemQuery,
|
|
): Promise<Array<{ uuid: string; contentSize: number | null }>>
|
|
findDatesForComputingIntegrityHash(userUuid: string): Promise<Array<{ updated_at_timestamp: number }>>
|
|
findItemsForComputingIntegrityPayloads(userUuid: string): Promise<ExtendedIntegrityPayload[]>
|
|
findByUuidAndUserUuid(uuid: string, userUuid: string): Promise<Item | null>
|
|
findByUuid(uuid: string): Promise<Item | null>
|
|
remove(item: Item): Promise<void>
|
|
save(item: Item): Promise<void>
|
|
markItemsAsDeleted(itemUuids: Array<string>, updatedAtTimestamp: number): Promise<void>
|
|
updateContentSize(itemUuid: string, contentSize: number): Promise<void>
|
|
}
|