I see that there are comments to this old post asking for more clarification. I just figured it out from the above and can share, as an example, what I came up with. People landing on this page searching for the same thing might find this useful.
/**
* The color of a piece or square.
* @readonly
* @enum {number}
* @property {number} WHITE color for a white square or piece.
* @property {number} BLACK color for a black square or piece.
*/
export const Color = { WHITE: 0, BLACK: 1 }
/**
* Each member is an enumeration of direction offsets used to index into the
* lists of horzontal, vertical, and diagonal squares radiating from a
* given Square object. Only useful internally for initialization or externally
* for test.
* @package
* @type {object}
* @readonly
* @property {enum} Cross an enumeration of vert and horiz directions.
* @property {number} Cross.NORTH north
* @property {number} Cross.EAST east
* @property {number} Cross.SOUTH south
* @property {number} Cross.WEST west
* @property {enum} Diagonal an enumeration of diagonal directions.
* @property {number} Diagonal.NORTHEAST northeast
* @property {number} Diagonal.SOUTHEAST southeast
* @property {number} Diagonal.SOUTHWEST southwest
* @property {number} Diagonal.NORTHWEST northwest
*/
const Direction = {
Cross: {
NORTH: 0, EAST: 1, SOUTH: 2, WEST: 3
},
Diagonal: {
NORTHEAST: 0, SOUTHEAST: 1, SOUTHWEST: 2, NORTHWEST: 3
},
}