import { initTransactionCollection } from "./transaction.collection" import { createRxDatabase, addRxPlugin } from "rxdb" import { MetaverseLightwalletDatabase } from "./database" import { initOutputCollection } from './output.collection' import { initAddressCollection } from './address.collection' addRxPlugin(require('pouchdb-adapter-idb')) export class MetaverseLightwalletDatabaseIDBPurge { static async create(options: { name?: string } = {}) { const database = await createRxDatabase({ name: options.name || "metaverse", adapter: "idb-purge", multiInstance: true, pouchSettings: { auto_compaction: true, revs_limit: 1, }, }) await this.initialize(database) return database } static async initialize(database: MetaverseLightwalletDatabase){ await initOutputCollection(database) await initTransactionCollection(database) await initAddressCollection(database) } }