# Type alias: SolutionEvent

Ƭ **SolutionEvent**: `Object`

An event that is emitted by Solver when a solution is found.

The event can be intercepted by calling Solver.on('solution', ...). The event contains the solution, solving time so far and the result of solution verification.

`See`

#### Type declaration

Name | Type | Description |
---|---|---|

`solution` | `Solution` | Solution of the model. The solution contains values of all variables in the model (including optional variables) and the value of the objective (if the model specified one). Note that in evaluation version of OptalCP the values of variables in the solution are masked and replaced by value absent (`null` in JavaScript). |

`solveTime` | `number` | Duration of the solve at the time the solution was found, in seconds. |

`valid?` | `true` | Result of the verification of the solution. When parameter verifySolutions is set to true (the default), then the solver verifies all solutions found. The verification checks that all constraints in the model are satisfied and that the objective value is computed correctly. The verification is done by a separate code that is not used during the search. The point is to verify independently the correctness of the solution. Possible values are: * `undefined` - the solution was not verified (because the parameter verifySolutions was not set). * `true` - the solution was verified and it is correct. The value can never be `false` because in that case the solver ends with an error. |