dispose method
Frees all the resources associated to this object.
This marks the object as no longer usable and will make all methods/properties besides mounted inaccessible.
Implementation
@override
void dispose() {
super.dispose();
onDispose?.call();
}