Package com.nsdev.lettergenerator.model


package com.nsdev.lettergenerator.model
Immutable input model for PDF letters. A LetterDocument combines ordered body sections with page geometry, inherited typography, fixed elements, an optional visual signature, and an optional watermark. Java builders and JSON input both produce these records.

Construction snapshots list/byte data and applies only the defaults documented by each record. It does not imply a valid renderable document: generation checks required content, fonts, geometry, links, and images, and reports invalid fields through InvalidLetterException. Nulls preserved in required lists or entries support those diagnostics; they are not valid empty content. See Block and Watermark for JSON discriminators.