export interface ICacheService {
  get<T>(key: string): Promise<T | null>;
  set<T>(key: string, value: T, ttlSeconds: number): Promise<void>;
  delete(key: string): Promise<void>;
  wrap<T>(key: string, factory: () => Promise<T>, ttlSeconds: number): Promise<T>;
}
