using ErsatzTV.Core;

namespace ErsatzTV.Application.Plex;

// Unlock defaults true so single-message callers release the library lock as before. In the Plex
// "Shows" scheduler batch this message runs LAST and carries the single release (the preceding
// library message runs with Unlock: false).
public record SynchronizePlexNetworks(int PlexLibraryId, bool ForceScan, bool Unlock = true)
    : IRequest<Either<BaseError, Unit>>,
        IScannerBackgroundServiceRequest;
