В нашем случае лучшим решением будет использование процедурного типа. Допустим, что DllFunction() на входе хочет получить определенную функцию, поясним это на примере кода:
type
TMyFuncType = function : integer ; var
MyFunc : TMyFuncType ; function foo: integer; begin