Dictionary for typedef to template class

Dear CINT experts,

I am writing a few helper classes for my analysis and want to compile those into a shared library. Everythings works fine except for the dictionary creation for a typedef to a template class.
I searched this forum for this issue and did not find an applicable answer to this question so far (there was the suggestion of usig AClic which I believe is not possible when building a shared library, right?).

The (reduced) layout of my code is the posted below (I can provide the whole files if needed). The creation of the dictionary and the shared libaray work without any problems. However, the two typedefs are not defined inside CINT when I load the library using

.L path/to/my/lib

The definition of the typedef inside CINT works completely fine.

Please let me know what is the recommended approach for providing typedefs to template classes in shared libraries. If you need any further information, please let me know.

Thanks
Christian

/* Header File TQTaggable.h */

template<typename T>
class TQSingleTaggable
{
...
  ClassDef(TQSingleTaggable, 1);
};

/* is supposed to combine the features of several TQSingleTaggable types */
template<typename A,typename B,typename C,typename D>
class TQMultiTaggable : public TNamed, A,B,C,D
{
...
  ClassDef(TQMultiTaggable, 1);
};

/* typedefs */
typedef TQMultiTaggable<TQSingleTaggable<Bool_t>, TQSingleTaggable<Double_t>, TQSingleTaggable<Int_t>, TQSingleTaggable<TString> > TQTaggable;

typedef TQSingleTaggable<int> TQTest;

/* the implementation files contains (among other stuff) */
templateClassImp(TQSingleTaggable)
templateClassImp(TQMultiTaggable)

/* and my LinkDef file looks like this */
#ifdef __CINT__

#pragma link off all globals;
#pragma link off all classes;
#pragma link off all functions;
#pragma link C++ nestedclass;
#pragma link C++ nestedtypedef;

#pragma link C++ all typdef;

#pragma link C++ class std::set<TQValue<Bool_t> >+;
#pragma link C++ class std::set<TQValue<Double_t> >+;
#pragma link C++ class std::set<TQValue<Int_t> >+;
#pragma link C++ class std::set<TQValue<TString> >+;

#pragma link C++ class TQSingleTaggable<Bool_t>+;
#pragma link C++ class TQSingleTaggable<Double_t>+;
#pragma link C++ class TQSingleTaggable<Int_t>+;
#pragma link C++ class TQSingleTaggable<TString>+;
#pragma link C++ class TQMultiTaggable<TQSingleTaggable<Bool_t>, TQSingleTaggable<Double_t>, TQSingleTaggable<Int_t>, TQSingleTaggable<TString> >+;
#pragma link C++ typedef TQTaggable;
#pragma link C++ typedef TQTest;

#endif