using Baya.Application.Models.Booking;
using Baya.Application.Models.Common;
using Mediator;

namespace Baya.Application.Features.Bookings.Queries.ListBookings;

/// <summary>The role-scoped "My bookings" list. <c>role=customer</c> (default) or <c>role=nurse</c> scopes
/// to the caller; <c>role=all</c> is the admin-only list-everything variant. Status-filterable, projected,
/// paginated.</summary>
public record ListBookingsQuery(string? Role = null, string? Status = null, int Page = 1, int PageSize = 20)
    : IRequest<OperationResult<PagedResult<BookingListItemDto>>>;
