import { Uuid } from '@standardnotes/domain-core' import { Revision } from './Revision' import { RevisionMetadata } from './RevisionMetadata' export interface RevisionRepositoryInterface { countByUserUuid(userUuid: Uuid): Promise removeByUserUuid(userUuid: Uuid): Promise removeOneByUuid(revisionUuid: Uuid, userUuid: Uuid): Promise findOneByUuid(revisionUuid: Uuid, userUuid: Uuid, sharedVaultUuids: Uuid[]): Promise findByItemUuid(itemUuid: Uuid): Promise> findMetadataByItemId(itemUuid: Uuid, userUuid: Uuid, sharedVaultUuids: Uuid[]): Promise> updateUserUuid(itemUuid: Uuid, userUuid: Uuid): Promise findByUserUuid(dto: { userUuid: Uuid; offset?: number; limit?: number }): Promise> insert(revision: Revision): Promise clearSharedVaultAndKeySystemAssociations(itemUuid: Uuid, sharedVaultUuid: Uuid): Promise }