using MealPlan.Api.Models; namespace MealPlan.Api.Services; /// /// Stores issued refresh tokens. Backed by an in-memory implementation because the /// existing database schema must not be modified and no migrations may be added. /// public interface IRefreshTokenStore { void Add(RefreshToken token); RefreshToken? Get(string token); /// Marks a token revoked. Returns the revoked token if it existed and was active. RefreshToken? Revoke(string token); /// Removes expired/revoked tokens to bound memory usage. void RemoveExpired(); }