package com.iqser.red.service.persistence.service.v1.api.shared.model;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;


import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.DownloadFileType;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Schema(description = "Object containing information on which file and reports and download types should be included in the download.")
public class PrepareDownloadWithOptionRequest {

    @NotNull
    private String dossierId;
    private List<String> fileIds;
    private List<String> reportTemplateIds = new ArrayList<>();
    private Set<DownloadFileType> downloadFileTypes = new HashSet<>();
    private String redactionPreviewColor;

}
