using LiteCqrs;
using TeleWave.Application.Common.Models;
using TeleWave.Domain.Broadcast;

namespace TeleWave.Application.Broadcast.UpdateChannelSettings;

public sealed record UpdateChannelSettingsCommand(
    Guid ChannelId,
    string Name,
    bool IsEnabled,
    bool BumpersEnabled,
    BumperSettingsInput Bumper,
    Guid? FillerAssetId
) : ICommand<Result>;

/// <summary>Общие настройки ТВ-заставок канала (см. <c>Channel.UpdateBumperSettings</c>). Условия
/// показа сюда не входят — они задаются на элементе стыка.</summary>
public sealed record BumperSettingsInput(BumperFont Font, BumperSelection Selection);
