export interface Cache { write(key: string, value: T): void | Promise; read(key: string): T | undefined | Promise; remove(key: string): void | Promise; }