TYPEKIND

Defined as follows:

typedef enum tagTYPEKIND {
      TKIND_ENUM = 0
    , TKIND_RECORD
    , TKIND_MODULE
    , TKIND_INTERFACE
    , TKIND_DISPATCH
    , TKIND_COCLASS
    , TKIND_ALIAS
    , TKIND_UNION
    , TKIND_MAX
} TYPEKIND;
 
Value Description
TKIND_ALIAS A type that is an alias for another type.
TKIND_COCLASS A set of implemented component object interfaces.
TKIND_DISPATCH A set of methods and properties that are accessible through IDispatch::Invoke. By default, dual interfaces return TKIND_DISPATCH.
TKIND_ENUM A set of enumerators.
TKIND_INTERFACE A type that has virtual functions, all of which are pure.
TKIND_MODULE A module that can only have static functions and data (for example, a DLL).
TKIND_RECORD A structure with no methods.
TKIND_UNION A union, all of whose members have an offset of zero.
TKIND_MAX End of ENUM marker.