Note: If you can't find the Mexican chilli powders listed above, substitute for 3 tbsp hot chilli powder and 3 tbsp smoked paprika. You can also leave out the chipotle chillis if you can't find them - it will still be delicious!
Make the barbecue sauce and the coleslaw. Cook the hot dogs, and serve immediately.
For the hot dogs:
Heat the barbecue to high. Barbecue hot dogs until golden brown on all sides, about 7 minutes. Remove to a plate. Place buns on the grill cut side down and grill until lightly golden brown, about 20 seconds.
For the BBQ sauce:
Heat the oil over medium-high heat in a heavy-bottomed medium saucepan. Add the onions and cook until soft, 3 to 4 minutes. Add the garlic and cook for one minute. Add the tomatoes and water, bring to the boil and simmer for 10 minutes. Add the remaining ingredients and simmer for an additional 30 to 40 minutes until thickened, stirring occasionally.
Transfer the mixture to a food processor and puree until smooth, season with salt and pepper, to taste. Pour into a bowl and allow to cool at room temperature. Sauce will keep for one week in the refrigerator stored in a tightly sealed container.
For the coleslaw:
Whisk together the mayonnaise, onion, sugar, celery salt, vinegar and salt and pepper in a large bowl. Add the cabbage and carrot and stir to combine, season with more salt and pepper, if needed. Let sit at least 15 minutes before serving.
Place hot dogs in the buns and brush dogs with BBQ sauce, top with coleslaw and gherkin.