@rikishi/watermelondb
Version:
Build powerful React Native and React web apps that scale from hundreds to tens of thousands of records and remain fast
29 lines (17 loc) • 858 B
TypeScript
declare module '@rikishi/watermelondb/Collection/RecordCache' {
import { Model, RawRecord, RecordId, TableName } from '@rikishi/watermelondb'
import { CachedQueryResult } from '@rikishi/watermelondb/adapters/type'
type Instantiator<T> = (raw: RawRecord) => T
export default class RecordCache<Record extends Model> {
public map: Map<RecordId, Record>
public tableName: TableName<Record>
public recordInsantiator: Instantiator<Record>
public constructor(tableName: TableName<Record>, recordInsantiator: Instantiator<Record>)
public get(id: RecordId): Record | void
public add(record: Record): void
public delete(record: Record): void
public unsafeClear(): void
public recordsFromQueryResult(result: CachedQueryResult): Record[]
public recordFromQueryResult(result: RecordId | RawRecord): Record
}
}