Anything could be a thief - and indeed, there's probably some comic value in having a lolloping, ungainly Wigglytuff thief - but if you want a Pokémon that visually and conceptually (i.e. in the idea behind it) will suit thievery then it's probably best to stick to the Dark-types, with a few notable exceptions.
Purrloin is explicitly stated to be a compulsive thief in its Pokédex entry; a Zorua or Zoruark, themed around deception, could be envisioned as a thief, too. Meowth is another (non-Dark) kleptomaniac - several of its Pokédex entries state that it hoards shiny things, especially coins. Murkrow also like shiny things and apparently steal from Meowth hoards even as Meowth steal from theirs; their R/S entry states that they try to steal rings, too. Sableye eat gems, so might conceivably steal precious stones if they can't find any in the usual way.
It's worth pointing out that the only Pokémon to learn Thief by level-up are Poochyena, Mightyena, Lombre and Kecleon, at least one of which seems like a shady sort of character to me.
Also, Cacturne always puts me in mind of someone waiting to mug you, though I'm not quite sure why. I have a feeling they probably beat you up and eat bits of you rather than steal stuff from you.
To summarise: you could make any Pokémon a thief, if you wanted to. But if you want something that visually and conceptually supports that character, there are plenty of potential candidates.
F.A.B.