Source: compute/types/typesGeometry.js

  1. import * as geoms from './typesGeoms.js'
  2. import * as typesPoints from './typesPoints.js'
  3. // How exporting types works:
  4. // https://stackoverflow.com/a/73232942
  5. /**
  6. * @namespace typesGeometry
  7. */
  8. /**
  9. * @typedef {object} geometry - geometry for casting votes
  10. * @property {geoms.canPoints} canPoints
  11. * @property {geoms.voterGeoms} voterGeoms
  12. * @property {number} dimensions
  13. * @property {parties} parties
  14. * @property {string} [strategySeed]
  15. * @property {object} [voterStrategyList]
  16. * @memberof typesGeometry
  17. */
  18. /**
  19. * @typedef {object} parties - describes parties each candidate belongs to.
  20. * @property {number[]} partiesByCan - each candidate has party.
  21. * @property {number} numParties - total number of parties.
  22. * @memberof typesGeometry
  23. */
  24. /**
  25. * @typedef {object} testGeometry -geometry for casting one vote
  26. * @property {typesPoints.points} canPoints
  27. * @property {typesPoints.points} voterPoints
  28. * @property {number} dimensions
  29. * @property {parties} parties
  30. * @memberof typesGeometry
  31. */
  32. export default {}