package jnpf.model.filecontent; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.util.Map; import java.util.UUID; /** Imports one attachment using the existing storage path convention; no approval or state command. */ @Data public class FileContentImportForm { /** Caller-reserved identity used by the existing physical storage path. */ @NotNull private UUID documentId; /** Caller-reserved version correlation; importing content does not register or activate it. */ @NotNull private UUID fileVersionId; @NotBlank private String fileJson; @NotBlank private String fileName; /** Optional approval-page input processed before the document is stored. */ private String signaturePageId; private String signaturePageFiles; private Map signaturePageValues; /** Actual approval workflow version used to resolve signaturePageValues. */ private String approvalFlowVersionId; /** Only new/revision approval callers opt in; source attachments are never modified. */ private boolean removeDocxComments; }