Scarlett Johansson has lined up a role in magical thriller The Prestige, Variety reports.

Directed by Christopher Nolan (Batman Begins), the film is an adaptation of Christopher Priest's 1996 novel about two competing magicians in turn-of-the-century London desperate to acquire each other's trade secrets.

The two leads are to be played by Christian Bale and Hugh Jackman, whilst David Bowie and Michael Caine also feature. Johansson will play an American woman who works for each rival at some point during their careers.