// ----------------------------------------------------------------------------- // Enum Typedefs // ----------------------------------------------------------------------------- /** * available paint sheens * @typedef {"Matte" | "Gloss"} Sheen */ /** * health of the service * @typedef {"ok"} Status */ // ----------------------------------------------------------------------------- // Model Typedefs // ----------------------------------------------------------------------------- /** * range of customers preferences to choose from * @typedef {Object} Demand * @property {Paint[]} paints paints the customer would be satisfied with */ /** * health of the service * @typedef {Object} Healthcheck * @property {Status} status the health status of the service */ /** * paint batch optimizer request * @typedef {Object} OptimizeRequest * @property {number} colors number of different colours demanded by paint factory * @property {number} customers number of customers * @property {Demand[]} demands customers paint demands */ /** * paint and its sheen * @typedef {Object} Paint * @property {number} id paint identifier * @property {Sheen} sheen sheen of the paint */ /** * A simple human-readable error * @typedef {Object} ReadableError * @property {string} text */ // ----------------------------------------------------------------------------- // Union Typedefs // -----------------------------------------------------------------------------