/** * Shape coordinate generators. * Each generator yields [x, y, z] integer coordinates for a shape primitive. */ /** * Iterate coordinates for a box shape. * @param {[number,number,number]} position * @param {[number,number,number]} size * @returns {Generator} */ export function boxCoords(position: [number, number, number], size: [number, number, number]): Generator; /** * Iterate coordinates for a sphere shape. * @param {[number,number,number]} center * @param {number} radius * @returns {Generator} */ export function sphereCoords(center: [number, number, number], radius: number): Generator; /** * Iterate coordinates for a line shape (with optional radius/shape). * Collects all unique coords via a Set to avoid redundant writes from overlapping stamps. * @param {[number,number,number]} from * @param {[number,number,number]} to * @param {number} radius * @param {'rounded'|'square'} shape * @returns {Generator} */ export function lineCoords(from: [number, number, number], to: [number, number, number], radius: number, shape: "rounded" | "square"): Generator; /** * Iterate coordinates within bounds where test returns true. * @param {[[number,number,number],[number,number,number]]} bounds - [min, max] corners * @param {function(number,number,number): boolean} test * @returns {Generator} */ export function fillCoords(bounds: [[number, number, number], [number, number, number]], test: (arg0: number, arg1: number, arg2: number) => boolean): Generator;