Bosnia-Herzegovina defender Sead Kolasinac will join Arsenal from Schalke on a long-term contract this summer, the Premier League club have announced.