In 1.18.2 it is called WorldTickEvent
I think if you subscribe to TickEvent you will get all tick events; server, level, player, etc. ? So you will get a lot more events than you want.
As described above, you need to look at event.phase (either START or END) otherwise you will be doubling counting.
Similarly, you might want to check event.side if you don't want your code to run on both the logical client and server, usually ticking is only done on the client to support things like animations.
Finally, you can't store the ticking/ticks like you are probably doing.
What if there are 2 blocks that you need to tick?
What if somebody restarts the game while it is ticking. What is going to save/reload the ticking/ticks state?
See the comments above about capabilities for how to solve this.