I don't really understand what this type is for.  Is an action something that the user should be able to do?  If so, it shouldn't be exposed as a type, but instead be exposed as a Q_INVOKABLE method of the Post type.