It would be useful to have a client-side hook that fires whenever a statement is edited. In the WikibaseQualityConstraints extension, we would use this to re-check constraints on a statement after it has been edited, but it would probably also be useful to other user scripts and gadgets.
~~I propose the name `wikibase.statement.edit` (`.add` and `.remove` could be added later), and the arguments `entityId`, `statementId`, `oldValue`, `newValue`.~~ The hook names are `wikibase.statement.saved` (add or edit) and `wikibase.statement.removed`, and the arguments are just `entityId` and `statementId` for now.
For the time being, the hook would be considered just as unstable as the rest of the Wikibase JavaScript code (one of the Unstable Interfaces not covered by the Stable Interface Policy).
(Implementation memo: `mw.hook( 'wikibase.statement.edit' ).fire( … )` in `ToolbarViewController.stopEditing`, in the `_model.save` callback.)