annotations library

User-facing annotations for Ack schema generation.

Classes

AckField
Overrides the inferred schema and/or presence for a class-first field.
AckInfer
Marks a top-level Ack schema for immutable model-class generation.
AckModel
Marks a hand-written class for Ack schema generation.
AckType
Marks a top-level Ack schema for frozen legacy extension-type generation.
Date
Adds .date() to an inferred string schema.
Email
Adds .email() to an inferred string schema.
Matches
Adds .matches(pattern) to an inferred string schema.
Max
Adds .max(value) to an inferred numeric schema.
MaxItems
Adds .maxItems(count) to an inferred collection schema.
MaxLength
Adds .maxLength(length) to an inferred string schema.
Min
Adds .min(value) to an inferred numeric schema.
MinItems
Adds .minItems(count) to an inferred collection schema.
MinLength
Adds .minLength(length) to an inferred string schema.
MultipleOf
Adds .multipleOf(value) to an inferred numeric schema.
Negative
Adds .negative() to an inferred numeric schema.
NotEmpty
Adds .notEmpty() to an inferred string schema.
NotNull
Rejects an explicit JSON null without requiring the key to exist.
Optional
Marks a class-first field as optional on the wire.
Positive
Adds .positive() to an inferred numeric schema.
Required
Marks a class-first field as required on the wire.
Schemable
Marks an Ack schema declaration.
UniqueItems
Adds .unique() to an inferred collection schema.
Url
Adds .url() to an inferred string schema.
Uuid
Adds .uuid() to an inferred string schema.

Enums

AckCaseStyle
JSON field-name styles supported by class-first Ack generation.
AckFieldPresence
Overrides inferred input-presence for a class-first field.
AckUnknownPropertyPolicy
How a class-first object treats properties that are not declared fields.

Typedefs

Pattern = Matches
Former name of Matches.