using Femto.Common.Domain;

namespace Femto.Modules.Auth.Application;

public interface IAuthModule
{
    Task Command(ICommand command, CancellationToken cancellationToken = default);
    Task<TResponse> Command<TResponse>(ICommand<TResponse> command, CancellationToken cancellationToken = default);
    Task<TResponse> Query<TResponse>(IQuery<TResponse> query, CancellationToken cancellationToken = default);
}