we ask the developers themselves to close the sprint once they completed the sprint. Just want to confirm, if it has to be closed by TL after he reviewed the tasks completion.
The Product Owner should be responsible for closing a verified sprint after a successful demo has been done. The PO should check whether the stories have been "done" to completion in that they meet the correct acceptance criteria.
The developers can "close" the sprint, but the PO needs to verify the completeness of them and "officially" close the sprint and call it done.
According to the Scrum Guide, "Once a Sprint begins, its duration is fixed and cannot be shortened or lengthened". So it is closed simply by the advance of the clock past a preset point, whether or not tasks were completed.
Any uncompleted tasks are of course eligible to be entered into the sprint backlog for the next sprint.
If someone needs to record a sprint as closed that's purely an adminstritive detail. Anyone with access to a clock and knowledge of the sprint duration can do it.
In the several agile teams I had worked with, the PO/PM, or the scrum master typically closed the stories after demo during sprint review. Technically, developer can close too. The general rule is that a mutual consensus is reached between the PM and developer that a story is 'done' based on certain criteria the team had defined and agreed upon. One team I had worked shared a common document that lists criteria for a story to be considered 'done'.