package ru.soune.nocopy.dto.file;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FileInfoUserResponse {
    @JsonProperty("all_files_size")
    private Long allFileSize;

    @JsonProperty("all_files_quantity")
    private Integer fileCount;

    @JsonProperty("all_files_check")
    private Integer filesCheck;

    @JsonProperty("all_files_violation")
    private Integer filesViolation;

    @JsonProperty("images_size")
    private Long imagesSize;

    @JsonProperty("images_quantity")
    private Integer imagesCount;

    @JsonProperty("images_check")
    private Integer imagesCheck;

    @JsonProperty("images_violations")
    private Integer imagesViolations;

    @JsonProperty("videos_size")
    private Long videosSize;

    @JsonProperty("videos_quantity")
    private Integer videosCount;

    @JsonProperty("videos_check")
    private Integer videosCheck;

    @JsonProperty("videos_violations")
    private Integer videosViolations;

    @JsonProperty("audios_size")
    private Long audiosSize;

    @JsonProperty("audios_quantity")
    private Integer audiosCount;

    @JsonProperty("audios_check")
    private Integer audiosCheck;

    @JsonProperty("audios_violations")
    private Integer audiosViolations;

    @JsonProperty("document_size")
    private Long documentSize;

    @JsonProperty("document_quantity")
    private Integer documentCount;

    @JsonProperty("document_check")
    private Integer documentCheck;

    @JsonProperty("document_violations")
    private Integer documentViolations;

    @JsonProperty("protected_document_files_count")
    private Long protectedDocumentFilesCount;

    @JsonProperty("protected_files_count")
    private Long protectedFilesCount;

    @JsonProperty("protected_audio_files_count")
    private Long protectedAudioFilesCount;

    @JsonProperty("protected_video_files_count")
    private Long protectedVideoFilesCount;

    @JsonProperty("protected_image_files_count")
    private Long protectedImageFilesCount;
}
