Package-level declarations

Types

Link copied to clipboard
annotation class Comment(val lines: String, val placement: CommentPlacement = CommentPlacement.ABOVE)

Marks a configuration field with a descriptive comment that will be written into the YAML output.

Link copied to clipboard

Determines the position of a Comment relative to its associated configuration field in the serialized YAML output.

Link copied to clipboard
annotation class Env(val variable: String)

Binds a configuration field to an environment variable, allowing its value to be overridden at runtime without modifying the YAML file.

Link copied to clipboard

Defines how a Secret-annotated field value is masked when displayed in logs or debug output.

Link copied to clipboard
annotation class MigrateFrom(val oldKeys: String)

Specifies one or more legacy YAML keys that should be migrated to the annotated field when loading a configuration file.

Link copied to clipboard
annotation class Pattern(val regex: String, val description: String = "")

Validates that a string configuration field matches the given regular expression.

Link copied to clipboard
annotation class Range(val min: Double, val max: Double)

Constrains a numeric configuration field to an inclusive range between min and max.

Link copied to clipboard
annotation class Secret(val mask: MaskStrategy = MaskStrategy.FULL, val visibleChars: Int = 4)

Marks a configuration field as sensitive, ensuring its value is masked in logs, debug output, and serialized representations.

Link copied to clipboard
annotation class Transient

Excludes a configuration field from serialization and deserialization.