// generated by diplomat-tool import type { NucleationError } from "./NucleationError.mjs" import type { pointer, codepoint } from "./diplomat-runtime.d.ts"; /** * Ordering applied to region positions before bit assignment * (PORTING rule 10). */ export class SortStrategy { /** @internal */ get ffiValue(): pointer; /** @internal */ constructor(); /** * Sort by Y ascending, then X, then Z (default Minecraft layer * order). The first position after sorting is bit 0 (LSB). */ static yxz(): SortStrategy; /** * Sort by X ascending, then Y, then Z. */ static xyz(): SortStrategy; /** * Sort by Z ascending, then Y, then X. */ static zyx(): SortStrategy; /** * Sort by Y descending, then X ascending, then Z ascending. */ static yDescXz(): SortStrategy; /** * Sort by X descending, then Y ascending, then Z ascending. */ static xDescYz(): SortStrategy; /** * Sort by Z descending, then Y ascending, then X ascending. */ static zDescYx(): SortStrategy; /** * Old ABI name: `sort_strategy_descending`. */ static descending(): SortStrategy; /** * Sort by Euclidean distance from the reference point, closest * first (ties broken by Y, X, Z ascending). */ static distanceFrom(x: number, y: number, z: number): SortStrategy; /** * Sort by Euclidean distance from the reference point, farthest * first (ties broken by Y, X, Z descending). */ static distanceFromDesc(x: number, y: number, z: number): SortStrategy; /** * Keep positions in the order they were added (no sorting). Useful * when positions were ordered manually or box order matters. */ static preserve(): SortStrategy; /** * Reverse of the order positions were added. */ static reverse(): SortStrategy; /** * Parse from a name (e.g. "yxz", "descending", "preserve"). */ static fromString(s: string): SortStrategy; /** * The strategy name. */ name(): string; }