UNPKG

teambition-sdk-socket

Version:
24 lines (23 loc) 1.22 kB
import { Observable } from 'rxjs/Observable'; import DataBase from '../storage/Database'; import { Schema } from '../schemas/schema'; import Collection from './BaseCollection'; export default class Model { static DataBase: DataBase; static TeardownLogics: Set<Function>; protected _collections: Map<string, Collection<any>>; constructor(); delete(namespace: string): Observable<void>; update<T>(namespace: string, patch: T): Observable<T>; checkSchema(index: string): boolean; /** * 存储那些不标准的 Schema,这些 Schema 通常没有 _id 字段且后续不需要更新 * 在获取后删除由于 sdk 导致的冗余字段 **/ saveNonstandardSchema<T>(_id: string, data: T): Observable<T>; getNonstandardSchema<T>(_id: string): Observable<T>; protected _save<T>(data: Schema<T> & T, unionFlag?: string): Observable<T>; protected _saveCollection<T>(namespace: string, data: Schema<T>[], schemaName?: string, condition?: (data: T) => boolean | Observable<boolean>, unionFlag?: string): Observable<T[]>; protected _get<T>(index: string): Observable<T> | null; protected _updateCollection<T>(namespace: string, patch: any): Observable<T[]>; }