The rest of this section describes :class:`StructureType`, which defines the
API of the structure types but does not exist as a real type.

A structure type.

Opaque pointer types

Opaque pointer are created by :func:`objc.createOpaquePointerType` and represent
opaque pointers or handles, such as values of type 'NSZone*'. Opaque pointers do
not have further structure or behavior, they just exist as blobs of data that are
returned from and passed to Objective-C functions or methods.

The rest of this section describes :class:`OpaquePointerType`, which defines the
API of the opaque pointer types but does not exist as a real type.

An opaque pointer type. Values are usually created by the PyObjC bridge,
but can be created manually using one of the keyword arguments:

cobject: A PyCapsule object with name "objc.__opaque__" that represents
an opaque pointer value.