package com.dalab.autocompliance.dto; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.AllArgsConstructor; import java.util.List; import java.util.Map; /** * DTO representing the definition of a compliance report type. */ @Data @Builder @NoArgsConstructor @AllArgsConstructor public class ComplianceReportDefinitionDTO { private String reportType; // Unique identifier for the report type (e.g., "pci-dss-q1", "cis-benchmark-gcp") private String displayName; // User-friendly name (e.g., "PCI DSS Requirement 1 Check", "CIS Google Cloud Platform Foundation Benchmark") private String description; private String version; // Version of the report definition/benchmark private List applicableComplianceFrameworks; // e.g., ["PCI DSS v3.2.1", "HIPAA"] private List targetAssetTypes; // e.g., ["GCP_COMPUTE_INSTANCE", "AWS_S3_BUCKET"] private Map generationParameters; // Key-value pairs for parameters needed to generate this report (e.g., {"gcpProjectId": "string"}) private String detailsLink; // Link to more information about this compliance check/report }