#nullable enable
using Baya.Application.Models.Common;
using Mediator;

namespace Baya.Application.Features.Identity.Commands.Logout;

/// <summary>
/// Revokes the session matching <paramref name="RefreshToken"/>; with <paramref name="Everywhere"/>
/// (or no token supplied) every active session goes. The security stamp always rotates, so outstanding
/// access tokens die too.
/// </summary>
public record LogoutCommand(string? RefreshToken = null, bool Everywhere = false)
    : IRequest<OperationResult<bool>>;