/**
 * The seam between PhotoSync and Minecraft.
 *
 * <p>Every interface here is implemented once per compatibility bucket, in a
 * {@code :platform:*} module, and consumed by {@code :shared:ui} and the mod's
 * wiring. Nothing in this module may import a Minecraft, Fabric or LWJGL type --
 * that is what keeps the amount of code that has to be revisited for a new
 * Minecraft version down to the adapters rather than the whole mod.
 *
 * <p>Two rules keep the seam from growing. A method belongs here only if its
 * Minecraft implementation genuinely differs between versions -- anything that
 * can be computed from what is already here belongs in {@code :shared:ui}
 * instead. And nothing here exposes a Minecraft concept by another name: the
 * mod draws its own widgets from a handful of primitives rather than describing
 * vanilla ones, because {@code Button}'s constructor has changed more often in
 * this version range than {@code fill} has.
 *
 * <p>See {@code docs/PORTING.md} for the routine when a new version lands.
 */
package dev.photosync.mcapi;
