import type { Resource } from './Resource.js'; import type { User } from './User.js'; export interface Cache { get(key: string): Promise; add(key: string, value: string): Promise; remove(key: string): Promise; getFromResource(resource: Resource, key: string): Promise; addToResource(resource: Resource, key: string, value: string): Promise; removeFromResource(resource: Resource, key: string): Promise; getFromUser(user: User, key: string): Promise; addToUser(user: User, key: string, value: string): Promise; removeFromUser(user: User, key: string): Promise; }