Oscar Piastri will be staying with McLaren for at least three more seasons after signing a long-term contract extension.