Because they are both useful :)
The declarative approach is more powerful (the engine can do automatically a lot of more stuff for you, this way).
The imperative stuff is simpler to use, and enough for simple use-cases. I wondered about removing this approach, but it seems many people like it, and it is enough for many use-cases.