mirror of
https://github.com/bitwarden/browser
synced 2026-01-05 18:13:26 +00:00
* Require userId for setting masterKeyEncryptedUserKey * Replace folders for specified user * Require userId for collection replace * Cipher Replace requires userId * Require UserId to update equivalent domains * Require userId for policy replace * sync state updates between fake state for better testing * Revert to public observable tests Since they now sync, we can test single-user updates impacting active user observables * Do not init fake states through sync Do not sync initial null values, that might wipe out already existing data. * Require userId for Send replace * Include userId for organization replace * Require userId for billing sync data * Require user Id for key connector sync data * Allow decode of token by userId * Require userId for synced key connector updates * Add userId to policy setting during organization invite accept * Fix cli * Handle null userId --------- Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
29 lines
1.3 KiB
TypeScript
29 lines
1.3 KiB
TypeScript
import { Observable } from "rxjs";
|
|
|
|
import { CollectionId, UserId } from "../../types/guid";
|
|
import { CollectionData } from "../models/data/collection.data";
|
|
import { Collection } from "../models/domain/collection";
|
|
import { TreeNode } from "../models/domain/tree-node";
|
|
import { CollectionView } from "../models/view/collection.view";
|
|
|
|
export abstract class CollectionService {
|
|
decryptedCollections$: Observable<CollectionView[]>;
|
|
|
|
clearActiveUserCache: () => Promise<void>;
|
|
encrypt: (model: CollectionView) => Promise<Collection>;
|
|
decryptedCollectionViews$: (ids: CollectionId[]) => Observable<CollectionView[]>;
|
|
/**
|
|
* @deprecated This method will soon be made private, use `decryptedCollectionViews$` instead.
|
|
*/
|
|
decryptMany: (collections: Collection[]) => Promise<CollectionView[]>;
|
|
get: (id: string) => Promise<Collection>;
|
|
getAll: () => Promise<Collection[]>;
|
|
getAllDecrypted: () => Promise<CollectionView[]>;
|
|
getAllNested: (collections?: CollectionView[]) => Promise<TreeNode<CollectionView>[]>;
|
|
getNested: (id: string) => Promise<TreeNode<CollectionView>>;
|
|
upsert: (collection: CollectionData | CollectionData[]) => Promise<any>;
|
|
replace: (collections: { [id: string]: CollectionData }, userId: UserId) => Promise<any>;
|
|
clear: (userId?: string) => Promise<void>;
|
|
delete: (id: string | string[]) => Promise<any>;
|
|
}
|