Callback when all layer are added to leafletjs map

I have got in contact with the major contributers to leafletjs and there is no need to have a callback for a standard geojson layer, you can just do this;

var layer = L.geoJson(data, {}).addTo(map);
animateMyIconsIn(layer.getLayers()); // your custom function

However you do need a callback if you are using the AJAX plugin;

//first create the layer
var  layer = L.geoJson.AJAX(url, {});
//then add a listener
layer.on('dataLoadComplete',function(e){
    //finally add the layer
    layer.addTo(map);
    animateMyIconsIn(layer.getLayers()); // your custom function
});