UNPKG

mira-storage-sqlite

Version:

SQLite storage implementation for Mira - provides database persistence using SQLite

92 lines 3.94 kB
import { ILibraryServerData } from './ILibraryServerData'; export declare class LibraryServerDataSQLite implements ILibraryServerData { private db; private inTransaction; private enableHash; readonly config: Record<string, any>; constructor(config: Record<string, any>, opts: any); initialize(): Promise<void>; createFile(fileData: Record<string, any>): Promise<Record<string, any>>; updateFile(id: number, fileData: Record<string, any>): Promise<boolean>; deleteFile(id: number, options?: { moveToRecycleBin: boolean; }): Promise<boolean>; recoverFile(id: number): Promise<boolean>; getFile(id: number): Promise<Record<string, any> | null>; getFiles(options?: { select?: string; filters?: Record<string, any>; isUrlFile?: boolean; }): Promise<{ result: Record<string, any>[]; limit: number; offset: number; total: number; }>; createFolder(folderData: Record<string, any>): Promise<number>; updateFolder(id: number, folderData: Record<string, any>): Promise<boolean>; deleteFolder(id: number): Promise<boolean>; getFolder(id: number): Promise<Record<string, any> | null>; findFolderByName(name: string, parentId?: number | null): Promise<Record<string, any> | null>; getFolders(options?: { parentId?: number; limit?: number; offset?: number; }): Promise<Record<string, any>[]>; createTag(tagData: Record<string, any>): Promise<number>; updateTag(id: number, tagData: Record<string, any>): Promise<boolean>; deleteTag(id: number): Promise<boolean>; getTag(id: number): Promise<Record<string, any> | null>; getTags(options?: { parentId?: number; limit?: number; offset?: number; }): Promise<Record<string, any>[]>; beginTransaction(): Promise<void>; commitTransaction(): Promise<void>; rollbackTransaction(): Promise<void>; close(): Promise<void>; createFileFromPath(filePath: string, fileMeta: Record<string, any>, options?: { importType: string; }): Promise<Record<string, any>>; getFileFolder(fileId: number): Promise<Record<string, any>[]>; getFileTags(fileId: number): Promise<Record<string, any>[]>; setFileFolder(fileId: number, folderId: string): Promise<boolean>; setFileTags(fileId: number, tagIds: string[]): Promise<boolean>; getAllTags(): Promise<Record<string, any>[]>; getAllFolders(): Promise<Record<string, any>[]>; getLibraryId(): string; getItemPath(item: Record<string, any>): Promise<string>; getPublicURL(url: string): string; getItemFilePath(item: Record<string, any>, options?: { isUrlFile: boolean; }): Promise<string>; getItemThumbPath(item: Record<string, any>, options?: { isUrlFile: boolean; }): Promise<string>; private rowToMap; private calculateFileHashSync; private handleFile; private getFolderName; private executeSql; private runSql; getSql(sql: string, params?: any[]): Promise<any[]>; getLibraryPath(): Promise<string>; query(sql: string, params?: any[]): Promise<any[]>; getLibraryInfo(): Promise<Record<string, any>>; queryFile(query: Record<string, any>, isUrlFile?: boolean): Promise<Record<string, any>[]>; processingFiles(files: Record<string, any>[], isUrlFile?: boolean): Promise<{ thumb: string; path: string; }[]>; queryFolder(query: Record<string, any>): Promise<Record<string, any>[]>; queryLibrary(query: Record<string, any>): Promise<Record<string, any>>; createLibrary(data: Record<string, any>): Promise<Record<string, any>>; closeLibrary(): Promise<boolean>; queryTag(query: Record<string, any>): Promise<Record<string, any>[]>; getStats(): Promise<{ totalFiles: number; totalSize: number; }>; } //# sourceMappingURL=LibraryServerDataSQLite.d.ts.map