UNPKG

dop-stick

Version:

Source control tooling for versionable-upgradeable smart contracts

47 lines 1.46 kB
import { EventFragment } from '@ethersproject/abi'; import { ProcessedContract, OptimizedLookup } from '../info-processors/types'; interface CacheData { version: string; timestamp: number; lookup: OptimizedLookup; facets: Map<string, ProcessedContract>; events: { cache: Map<string, Map<string, EventFragment>>; timestamps: Map<string, number>; }; } export declare class AbiCache { private static instance; private readonly cacheDir; private readonly cacheFile; private cache; private isDirty; private savePromise; private static readonly SAVE_DEBOUNCE; private static readonly VERSION; private constructor(); static getInstance(): AbiCache; private ensureCacheDirectory; private validateSerializedCache; load(): Promise<CacheData | null>; save(data: CacheData): Promise<void>; private deserializeFunctionInfo; private deserializeParameters; private deserializeFacetInfo; private deserializeEventFragment; private deserializeEventInfo; private mapToObject; private validateCache; private validateLookup; private validateFacets; clear(): Promise<void>; maintain(): Promise<void>; private optimizeCache; getCacheStats(): Promise<Record<string, any>>; private arrayToSet; private setToArray; private serializeLookup; private serializeFacetInfo; } export {}; //# sourceMappingURL=abi-cache.d.ts.map