I've found that there are broadly two animation types, tween/duration or spring.
These are usually based off a start point and an end point, and then a tween to get between the two points. You can change the duration or easing curve to get different transitions.
These are physics based, relying on mass, damping/friction, and stiffness/tension. These sometimes feel more 'real', at the cost of being a bit harder to wrap your head around.
As of [[20251106023912-linear-css-timing-function]], these are possible in vanilla CSS too.
Depending on what context you're working in, keyframes can be seen as another type of animation. Within CSS though, the system fills in the gaps via tween animations.
There's also inertia animations, which decelerate a value based on its initial velocity.