namespace Books.Api.EventFlow.Repositories; public interface IApiKeyRepository { Task GetByIdForValidationAsync(string apiKeyId, CancellationToken cancellationToken = default); Task> GetByCompanyIdAsync(string companyId, CancellationToken cancellationToken = default); } public record ApiKeyValidationDto( string ApiKeyId, string Name, string KeyHash, string CompanyId, bool IsActive); public record ApiKeyDto( string Id, string Name, string CompanyId, string CreatedBy, DateTime CreatedAt, bool IsActive, DateTime? RevokedAt, string? RevokedBy);