Puedes hacerlo mediante polimorfismo, creando clases abstractas, o bien solo definiendo la clase (Forward declaration), creo que es lo que vos te referís:
Código:
type
TMiClase = class;
TMiOtraClase = class(TObject)
...
published
property Propiedad: TMiClase read FPropiedad write FPropiedad;
end;
TMiClase = class
private
...
public
...
end;
Esto lo verás por ejemplo en la unit Classes con la clase TCollection entre otras.
Te recomiendo buscar en la ayuda el capítulo
Forward declarations and mutually dependent classes.
Saludos!