LruCache.d.ts 772 B

1234567891011121314151617181920212223242526
  1. export declare class LruCache<V> {
  2. protected readonly limit: number;
  3. protected capacity: number;
  4. protected head: LruNode<V> | undefined;
  5. protected tail: LruNode<V> | undefined;
  6. protected map: Record<string, LruNode<V>>;
  7. constructor(limit?: number);
  8. get size(): number;
  9. set(key: string, value: V): void;
  10. get(key: string): V | undefined;
  11. peek(key: string): V | undefined;
  12. has(key: string): boolean;
  13. clear(): void;
  14. keys(): string[];
  15. del(key: string): boolean;
  16. protected pop(node: LruNode<V>): void;
  17. protected push(node: LruNode<V>): void;
  18. }
  19. declare class LruNode<V> {
  20. readonly k: string;
  21. v: V;
  22. l: LruNode<V> | undefined;
  23. r: LruNode<V> | undefined;
  24. constructor(k: string, v: V);
  25. }
  26. export {};