I can add samplers to a shader , but i cannot assign material texture slots to them ( i need to specify the asset manually).
I just want to replace the built in slots ( normal , specular , detail and so on ) with slots named accordingly with what they do in the custom shader.
The supported texture slots are hard-coded in the engine. You can search for the enumeration named EEfResTextures. Also look at the datastructure which contains all of the actual material setting: SInputShaderResources and the datastructure that it is converted into for rendering: CShaderResources.
There are generic parameters in these classes but they can only represent floats and vectors, no textures.