1. A method, comprising: at an electronic device with a display, one or more input devices, and one or more tactile output generators: displaying, on the display, a user interface for a first software application, wherein: the user interface includes a plurality of elements to which user interaction models from a plurality of user interaction models provided by an application-independent module have been assigned, the plurality of elements including a first element to which a first user interaction model has been assigned, the plurality of elements having content provided by an application-specific module for the first software application; and the first user interaction model defines how the user interface responds to inputs directed to the first element of the user interface; while displaying the user interface, detecting, via the one or more input devices, an input directed to the first element of the user interface; and in response to detecting the input: updating the user interface on the display based on characteristics of the input; and in accordance with a determination, by the application-independent module, that the input meets tactile output criteria specified by the first user interaction model, generating a first tactile output corresponding to the input; and in accordance with a determination, by the application-independent module, that the input does not meet the tactile output criteria specified by the first user interaction model, forgoing generation of the first tactile output.