import { Database as SqliteDatabase } from 'better-sqlite3'; import SqliteTable from '@ulixee/commons/lib/SqliteTable'; import IDataboxManifest from '@ulixee/specification/types/IDataboxManifest'; export default class DataboxesTable extends SqliteTable { private static byVersionHash; private getQuery; constructor(db: SqliteDatabase); save(manifest: IDataboxManifest): void; findWithEntrypoint(entrypoint: string): IDataboxRecord; getByVersionHash(versionHash: string): IDataboxRecord; } export interface IDataboxRecord { versionHash: string; versionTimestamp: number; coreVersion: string; schemaInterface: string; functionsByName: { [name: string]: { corePlugins: Record; prices: { perQuery: number; minimum: number; addOns: { perKb: number; }; remoteMeta?: { host: string; databoxVersionHash: string; functionName: string; }; }[]; }; }; paymentAddress: string; giftCardIssuerIdentity: string; scriptHash: string; scriptEntrypoint: string; storedDate: number; }