They can (and should be able to be) declared as properties, though.  eg: Item { property Sorter asorter: AlphaSorter { }; property Sorter bsorter: ModificationTimeSorter {}; }

QML only allows a property to be declared if it is of a non-uncreatable type name, unfortunately.