using FluentValidation;
using LiteCqrs;
using TeleWave.Application.Common.Models;

namespace TeleWave.Application.Programming.Templates.UpdateSlot;

public sealed record UpdateSlotCommand(Guid SlotId, SlotInput Input) : ICommand<Result>;

public sealed class UpdateSlotCommandValidator : AbstractValidator<UpdateSlotCommand>
{
    public UpdateSlotCommandValidator() =>
        RuleFor(x => x.Input).NotNull().SetValidator(new SlotInputValidator());
}
