UNPKG

@unruggable/gateways

Version:

Trustless Ethereum Multichain CCIP-Read Gateway

58 lines 1.86 kB
export declare class CachedValue<T> { #private; readonly fn: () => Promise<T>; cacheMs: number; errorMs: number; constructor(fn: () => Promise<T>, cacheMs?: number); clear(): void; set(value: T): void; get value(): Promise<T> | undefined; get isCached(): boolean; get cachedRemainingMs(): number; get(): Promise<T>; force(): Promise<T>; } export declare class CachedMap<K, V> { cacheMs: number; maxCached: number; private readonly cached; private readonly pending; private timer; private timer_t; errorMs: number; slopMs: number; constructor(cacheMs?: number, // how long to cache a resolved promise maxCached?: number); private schedule; get pendingSize(): number; get cachedSize(): number; get nextExpirationMs(): number; clear(): void; set(key: K, value: V | Promise<V>, ms?: number): void; delete(key: K): void; cachedRemainingMs(key: K): number; cachedValue(key: K): Promise<V> | undefined; cachedKeys(): MapIterator<K>; peek(key: K): Promise<V> | undefined; setPending(key: K, value: Promise<V>, ms?: number): Promise<V>; get(key: K, fn: (key: K) => Promise<V>, ms?: number): Promise<V>; } export declare class LRU<K, V> { #private; constructor(max?: number); get size(): number; get max(): number; set max(n: number); deleteOldest(n: number): void; keys(): MapIterator<K>; entries(): MapIterator<[K, Promise<V>]>; clear(): void; delete(key: K): void; setValue(key: K, value: V): void; setPending(key: K, promise: Promise<V>): Promise<V>; setFuture(key: K, promise: Promise<V>): void; peek(key: K): Promise<V> | undefined; touch(key: K): Promise<V> | undefined; cache(key: K, fn: (key: K) => Promise<V>): Promise<V>; } //# sourceMappingURL=cached.d.ts.map