UNPKG

@metamask/ocap-kernel

Version:
1 lines 1.45 kB
{"version":3,"file":"types.mjs","sourceRoot":"","sources":["../../src/store/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { KVStore } from '@metamask/kernel-store';\nimport type { Logger } from '@metamask/logger';\n\nimport type { KRef } from '../types.ts';\n\nexport type StoreContext = {\n kv: KVStore;\n runQueue: StoredQueue; // Holds RunAction[]\n runQueueLengthCache: number; // Holds number\n nextObjectId: StoredValue; // Holds string\n nextPromiseId: StoredValue; // Holds string\n nextVatId: StoredValue; // Holds string\n nextRemoteId: StoredValue; // Holds string\n maybeFreeKrefs: Set<KRef>;\n gcActions: StoredValue; // Holds GCAction[]\n reapQueue: StoredValue; // Holds ReapAction[]\n terminatedVats: StoredValue; // Holds VatId[]\n inCrank: boolean;\n crankSettled?: Promise<void>;\n resolveCrank?: (() => void) | undefined;\n savepoints: string[];\n subclusters: StoredValue; // Holds Subcluster[]\n nextSubclusterId: StoredValue; // Holds string\n vatToSubclusterMap: StoredValue; // Holds Record<VatId, SubclusterId>\n logger?: Logger;\n};\n\nexport type StoredValue = {\n get(): string | undefined;\n set(newValue: string): void;\n delete(): void;\n};\n\nexport type StoredQueue = {\n enqueue(item: object): void;\n dequeue(): object | undefined;\n delete(): void;\n};\n\nexport type VatCleanupWork = {\n exports: number;\n imports: number;\n promises: number;\n kv: number;\n};\n"]}