Como posso declarar um ponteiro com base em um tipo genérico?

Tenho uma classe como esta:

type A = class
    procedure<T> DoStuff(tPtr: ^T);
end;

Mas quando tento compilar, o Delphi me dá esse erro:

[DCC Error] RPML.pas(57): E2029 Identifier expected but '^' found

Como posso usar um ponteiro para um tipo parametrizado em um procedimento Delphi? Não quero transformar a classe inteira em uma classe de model

questionAnswers(2)

yourAnswerToTheQuestion