Files
AFFiNE/packages/frontend/native/index.d.ts
T
pengx17 27af9b4d1a perf(electron): add index for updates (#6951)
![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/cd2e982a-f78a-4cc3-b090-ee4c0090e19d.png)

Above image shows the performance on querying a 20k rows of updates table, which is super slow at 150+ms. After adding index for doc_id the performance should be greatly improved.

After:
![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/45ea4389-1833-4dc5-bd64-84d8c99cd647.png)

fix TOV-866
2024-05-16 06:30:53 +00:00

55 lines
1.6 KiB
TypeScript

/* auto-generated by NAPI-RS */
/* eslint-disable */
export class SqliteConnection {
constructor(path: string)
connect(): Promise<void>
addBlob(key: string, blob: Uint8Array): Promise<void>
getBlob(key: string): Promise<BlobRow | null>
deleteBlob(key: string): Promise<void>
getBlobKeys(): Promise<Array<string>>
getUpdates(docId?: string | undefined | null): Promise<Array<UpdateRow>>
deleteUpdates(docId?: string | undefined | null): Promise<void>
getUpdatesCount(docId?: string | undefined | null): Promise<number>
getAllUpdates(): Promise<Array<UpdateRow>>
insertUpdates(updates: Array<InsertRow>): Promise<void>
replaceUpdates(docId: string | undefined | null, updates: Array<InsertRow>): Promise<void>
initVersion(): Promise<void>
setVersion(version: number): Promise<void>
getMaxVersion(): Promise<number>
close(): Promise<void>
get isClose(): boolean
static validate(path: string): Promise<ValidationResult>
migrateAddDocId(): Promise<void>
}
export interface BlobRow {
key: string
data: Buffer
timestamp: Date
}
export interface InsertRow {
docId?: string
data: Uint8Array
}
export function mintChallengeResponse(resource: string, bits?: number | undefined | null): Promise<string>
export interface UpdateRow {
id: number
timestamp: Date
data: Buffer
docId?: string
}
export enum ValidationResult {
MissingTables = 0,
MissingDocIdColumn = 1,
MissingVersionColumn = 2,
GeneralError = 3,
Valid = 4
}
export function verifyChallengeResponse(response: string, bits: number, resource: string): Promise<boolean>