import type { SerializedQuery } from '../Query' import type { TableName, AppSchema } from '../Schema' import type { SchemaMigrations } from '../Schema/migrations' import type { RecordId } from '../Model' import type { DatabaseAdapter, CachedFindResult, CachedQueryResult, BatchOperation, UnsafeExecuteOperations, } from './type' export default class DatabaseAdapterCompat { underlyingAdapter: DatabaseAdapter constructor(adapter: DatabaseAdapter) get schema(): AppSchema get dbName(): string | undefined get migrations(): SchemaMigrations | undefined find(table: TableName, id: RecordId): Promise query(query: SerializedQuery): Promise queryIds(query: SerializedQuery): Promise unsafeQueryRaw(query: SerializedQuery): Promise count(query: SerializedQuery): Promise batch(operations: BatchOperation[]): Promise getDeletedRecords(tableName: TableName): Promise destroyDeletedRecords(tableName: TableName, recordIds: RecordId[]): Promise unsafeLoadFromSync(jsonId: number): Promise provideSyncJson(id: number, syncPullResultJson: string): Promise unsafeResetDatabase(): Promise unsafeExecute(work: UnsafeExecuteOperations): Promise getLocal(key: string): Promise setLocal(key: string, value: string): Promise removeLocal(key: string): Promise // untyped - test-only code testClone(options: any): Promise }