# This file was automatically generated by SWIG (https://www.swig.org).
# Version 4.4.1
#
# Do not make changes to this file unless you know what you are doing - modify
# the SWIG interface file instead.

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if getattr(globals().get("__spec__"), "parent", None) or __package__ or "." in __name__:
    from . import _MAPICore
else:
    import _MAPICore

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


import weakref

class SwigPyIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _MAPICore.delete_SwigPyIterator

    def value(self):
        return _MAPICore.SwigPyIterator_value(self)

    def incr(self, n=1):
        return _MAPICore.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        return _MAPICore.SwigPyIterator_decr(self, n)

    def distance(self, x):
        return _MAPICore.SwigPyIterator_distance(self, x)

    def equal(self, x):
        return _MAPICore.SwigPyIterator_equal(self, x)

    def copy(self):
        return _MAPICore.SwigPyIterator_copy(self)

    def next(self):
        return _MAPICore.SwigPyIterator_next(self)

    def __next__(self):
        return _MAPICore.SwigPyIterator___next__(self)

    def previous(self):
        return _MAPICore.SwigPyIterator_previous(self)

    def advance(self, n):
        return _MAPICore.SwigPyIterator_advance(self, n)

    def __eq__(self, x):
        return _MAPICore.SwigPyIterator___eq__(self, x)

    def __ne__(self, x):
        return _MAPICore.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n):
        return _MAPICore.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n):
        return _MAPICore.SwigPyIterator___isub__(self, n)

    def __add__(self, n):
        return _MAPICore.SwigPyIterator___add__(self, n)

    def __sub__(self, *args):
        return _MAPICore.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _MAPICore:
_MAPICore.SwigPyIterator_swigregister(SwigPyIterator)
class IUnknown(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def QueryInterface(self, USE_IID_FOR_OUTPUT):
        return _MAPICore.IUnknown_QueryInterface(self, USE_IID_FOR_OUTPUT)
    __swig_destroy__ = _MAPICore.delete_IUnknown

# Register IUnknown in _MAPICore:
_MAPICore.IUnknown_swigregister(IUnknown)
STGM_DIRECT = _MAPICore.STGM_DIRECT
STGM_TRANSACTED = _MAPICore.STGM_TRANSACTED
STGM_SIMPLE = _MAPICore.STGM_SIMPLE
STGM_READ = _MAPICore.STGM_READ
STGM_WRITE = _MAPICore.STGM_WRITE
STGM_READWRITE = _MAPICore.STGM_READWRITE
STGM_SHARE_DENY_NONE = _MAPICore.STGM_SHARE_DENY_NONE
STGM_SHARE_DENY_READ = _MAPICore.STGM_SHARE_DENY_READ
STGM_SHARE_DENY_WRITE = _MAPICore.STGM_SHARE_DENY_WRITE
STGM_SHARE_EXCLUSIVE = _MAPICore.STGM_SHARE_EXCLUSIVE
STGM_PRIORITY = _MAPICore.STGM_PRIORITY
STGM_DELETEONRELEASE = _MAPICore.STGM_DELETEONRELEASE
STGM_NOSCRATCH = _MAPICore.STGM_NOSCRATCH
STGM_CREATE = _MAPICore.STGM_CREATE
STGM_CONVERT = _MAPICore.STGM_CONVERT
STGM_FAILIFTHERE = _MAPICore.STGM_FAILIFTHERE
STGM_NOSNAPSHOT = _MAPICore.STGM_NOSNAPSHOT
STGM_DIRECT_SWMR = _MAPICore.STGM_DIRECT_SWMR
STGTY_STORAGE = _MAPICore.STGTY_STORAGE
STGTY_STREAM = _MAPICore.STGTY_STREAM
STGTY_LOCKBYTES = _MAPICore.STGTY_LOCKBYTES
STGTY_PROPERTY = _MAPICore.STGTY_PROPERTY
STREAM_SEEK_SET = _MAPICore.STREAM_SEEK_SET
STREAM_SEEK_CUR = _MAPICore.STREAM_SEEK_CUR
STREAM_SEEK_END = _MAPICore.STREAM_SEEK_END
STATFLAG_DEFAULT = _MAPICore.STATFLAG_DEFAULT
STATFLAG_NONAME = _MAPICore.STATFLAG_NONAME
STATFLAG_NOOPEN = _MAPICore.STATFLAG_NOOPEN
class ISequentialStream(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def Write(self, pv):
        return _MAPICore.ISequentialStream_Write(self, pv)

    def Read(self, cb):
        return _MAPICore.ISequentialStream_Read(self, cb)
    __swig_destroy__ = _MAPICore.delete_ISequentialStream

# Register ISequentialStream in _MAPICore:
_MAPICore.ISequentialStream_swigregister(ISequentialStream)
class IStream(ISequentialStream):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def Seek(self, dlibMove, dwOrigin):
        return _MAPICore.IStream_Seek(self, dlibMove, dwOrigin)

    def SetSize(self, libNewSize):
        return _MAPICore.IStream_SetSize(self, libNewSize)

    def CopyTo(self, pstm, cb):
        return _MAPICore.IStream_CopyTo(self, pstm, cb)

    def Commit(self, grfCommitFlags):
        return _MAPICore.IStream_Commit(self, grfCommitFlags)

    def Revert(self):
        return _MAPICore.IStream_Revert(self)

    def LockRegion(self, libOffset, cb, dwLockType):
        return _MAPICore.IStream_LockRegion(self, libOffset, cb, dwLockType)

    def UnlockRegion(self, libOffset, cb, dwLockType):
        return _MAPICore.IStream_UnlockRegion(self, libOffset, cb, dwLockType)

    def Stat(self, grfStatFlag):
        return _MAPICore.IStream_Stat(self, grfStatFlag)

    def Clone(self):
        return _MAPICore.IStream_Clone(self)

    def __init__(self):
        _MAPICore.IStream_swiginit(self, _MAPICore.new_IStream())
    __swig_destroy__ = _MAPICore.delete_IStream

# Register IStream in _MAPICore:
_MAPICore.IStream_swigregister(IStream)
MAPI_MODIFY = _MAPICore.MAPI_MODIFY
MAPI_ACCESS_MODIFY = _MAPICore.MAPI_ACCESS_MODIFY
MAPI_ACCESS_READ = _MAPICore.MAPI_ACCESS_READ
MAPI_ACCESS_DELETE = _MAPICore.MAPI_ACCESS_DELETE
MAPI_ACCESS_CREATE_HIERARCHY = _MAPICore.MAPI_ACCESS_CREATE_HIERARCHY
MAPI_ACCESS_CREATE_CONTENTS = _MAPICore.MAPI_ACCESS_CREATE_CONTENTS
MAPI_ACCESS_CREATE_ASSOCIATED = _MAPICore.MAPI_ACCESS_CREATE_ASSOCIATED
MAPI_UNICODE = _MAPICore.MAPI_UNICODE
hrSuccess = _MAPICore.hrSuccess
MAPI_SHORTTERM = _MAPICore.MAPI_SHORTTERM
MAPI_NOTRECIP = _MAPICore.MAPI_NOTRECIP
MAPI_THISSESSION = _MAPICore.MAPI_THISSESSION
MAPI_NOW = _MAPICore.MAPI_NOW
MAPI_NOTRESERVED = _MAPICore.MAPI_NOTRESERVED
MAPI_COMPOUND = _MAPICore.MAPI_COMPOUND
MAPI_ONE_OFF_UNICODE = _MAPICore.MAPI_ONE_OFF_UNICODE
MAPI_ONE_OFF_NO_RICH_INFO = _MAPICore.MAPI_ONE_OFF_NO_RICH_INFO
MAPI_STORE = _MAPICore.MAPI_STORE
MAPI_ADDRBOOK = _MAPICore.MAPI_ADDRBOOK
MAPI_FOLDER = _MAPICore.MAPI_FOLDER
MAPI_ABCONT = _MAPICore.MAPI_ABCONT
MAPI_MESSAGE = _MAPICore.MAPI_MESSAGE
MAPI_MAILUSER = _MAPICore.MAPI_MAILUSER
MAPI_ATTACH = _MAPICore.MAPI_ATTACH
MAPI_DISTLIST = _MAPICore.MAPI_DISTLIST
MAPI_PROFSECT = _MAPICore.MAPI_PROFSECT
MAPI_STATUS = _MAPICore.MAPI_STATUS
MAPI_SESSION = _MAPICore.MAPI_SESSION
MAPI_FORMINFO = _MAPICore.MAPI_FORMINFO
MV_FLAG = _MAPICore.MV_FLAG
PT_UNSPECIFIED = _MAPICore.PT_UNSPECIFIED
PT_NULL = _MAPICore.PT_NULL
PT_SHORT = _MAPICore.PT_SHORT
PT_LONG = _MAPICore.PT_LONG
PT_FLOAT = _MAPICore.PT_FLOAT
PT_DOUBLE = _MAPICore.PT_DOUBLE
PT_CURRENCY = _MAPICore.PT_CURRENCY
PT_APPTIME = _MAPICore.PT_APPTIME
PT_ERROR = _MAPICore.PT_ERROR
PT_BOOLEAN = _MAPICore.PT_BOOLEAN
PT_OBJECT = _MAPICore.PT_OBJECT
PT_LONGLONG = _MAPICore.PT_LONGLONG
PT_STRING8 = _MAPICore.PT_STRING8
PT_UNICODE = _MAPICore.PT_UNICODE
PT_SYSTIME = _MAPICore.PT_SYSTIME
PT_CLSID = _MAPICore.PT_CLSID
PT_SVREID = _MAPICore.PT_SVREID
PT_SRESTRICT = _MAPICore.PT_SRESTRICT
PT_ACTIONS = _MAPICore.PT_ACTIONS
PT_BINARY = _MAPICore.PT_BINARY
PT_I2 = _MAPICore.PT_I2
PT_I4 = _MAPICore.PT_I4
PT_R4 = _MAPICore.PT_R4
PT_R8 = _MAPICore.PT_R8
PT_I8 = _MAPICore.PT_I8
PT_MV_SHORT = _MAPICore.PT_MV_SHORT
PT_MV_LONG = _MAPICore.PT_MV_LONG
PT_MV_FLOAT = _MAPICore.PT_MV_FLOAT
PT_MV_DOUBLE = _MAPICore.PT_MV_DOUBLE
PT_MV_CURRENCY = _MAPICore.PT_MV_CURRENCY
PT_MV_APPTIME = _MAPICore.PT_MV_APPTIME
PT_MV_SYSTIME = _MAPICore.PT_MV_SYSTIME
PT_MV_STRING8 = _MAPICore.PT_MV_STRING8
PT_MV_BINARY = _MAPICore.PT_MV_BINARY
PT_MV_UNICODE = _MAPICore.PT_MV_UNICODE
PT_MV_CLSID = _MAPICore.PT_MV_CLSID
PT_MV_LONGLONG = _MAPICore.PT_MV_LONGLONG
PT_MV_I2 = _MAPICore.PT_MV_I2
PT_MV_I4 = _MAPICore.PT_MV_I4
PT_MV_R4 = _MAPICore.PT_MV_R4
PT_MV_R8 = _MAPICore.PT_MV_R8
PT_MV_I8 = _MAPICore.PT_MV_I8
MV_INSTANCE = _MAPICore.MV_INSTANCE
MVI_FLAG = _MAPICore.MVI_FLAG
MAPI_ERROR_VERSION = _MAPICore.MAPI_ERROR_VERSION
KEEP_OPEN_READONLY = _MAPICore.KEEP_OPEN_READONLY
KEEP_OPEN_READWRITE = _MAPICore.KEEP_OPEN_READWRITE
FORCE_SAVE = _MAPICore.FORCE_SAVE
MAPI_CREATE = _MAPICore.MAPI_CREATE
STREAM_APPEND = _MAPICore.STREAM_APPEND
MAPI_MOVE = _MAPICore.MAPI_MOVE
MAPI_NOREPLACE = _MAPICore.MAPI_NOREPLACE
MAPI_DECLINE_OK = _MAPICore.MAPI_DECLINE_OK
MAPI_NO_STRINGS = _MAPICore.MAPI_NO_STRINGS
MAPI_NO_IDS = _MAPICore.MAPI_NO_IDS
MNID_ID = _MAPICore.MNID_ID
MNID_STRING = _MAPICore.MNID_STRING
class IMAPIProp(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IMAPIProp_GetLastError(self, hResult, ulFlags)

    def SaveChanges(self, ulFlags):
        return _MAPICore.IMAPIProp_SaveChanges(self, ulFlags)

    def GetProps(self, lpPropTagArray, ulFlags):
        return _MAPICore.IMAPIProp_GetProps(self, lpPropTagArray, ulFlags)

    def GetPropList(self, ulFlags):
        return _MAPICore.IMAPIProp_GetPropList(self, ulFlags)

    def OpenProperty(self, ulPropTag, USE_IID_FOR_OUTPUT, ulInterfaceOptions, ulFlags):
        return _MAPICore.IMAPIProp_OpenProperty(self, ulPropTag, USE_IID_FOR_OUTPUT, ulInterfaceOptions, ulFlags)

    def SetProps(self, cValues):
        return _MAPICore.IMAPIProp_SetProps(self, cValues)

    def DeleteProps(self, lpPropTagArray):
        return _MAPICore.IMAPIProp_DeleteProps(self, lpPropTagArray)

    def CopyTo(self, cInterfaces, lpExcludeProps, ulUIParam, lpProgress, lpInterface, lpDestObj, ulFlags):
        return _MAPICore.IMAPIProp_CopyTo(self, cInterfaces, lpExcludeProps, ulUIParam, lpProgress, lpInterface, lpDestObj, ulFlags)

    def CopyProps(self, lpIncludeProps, ulUIParam, lpProgress, lpInterface, lpDestObj, ulFlags):
        return _MAPICore.IMAPIProp_CopyProps(self, lpIncludeProps, ulUIParam, lpProgress, lpInterface, lpDestObj, ulFlags)

    def GetNamesFromIDs(self, lppPropTags, lpPropSetGuid, ulFlags):
        return _MAPICore.IMAPIProp_GetNamesFromIDs(self, lppPropTags, lpPropSetGuid, ulFlags)

    def GetIDsFromNames(self, cPropNames, ulFlags):
        return _MAPICore.IMAPIProp_GetIDsFromNames(self, cPropNames, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IMAPIProp

# Register IMAPIProp in _MAPICore:
_MAPICore.IMAPIProp_swigregister(IMAPIProp)
MAPI_BEST_ACCESS = _MAPICore.MAPI_BEST_ACCESS
CONVENIENT_DEPTH = _MAPICore.CONVENIENT_DEPTH
SEARCH_RUNNING = _MAPICore.SEARCH_RUNNING
SEARCH_REBUILD = _MAPICore.SEARCH_REBUILD
SEARCH_RECURSIVE = _MAPICore.SEARCH_RECURSIVE
SEARCH_FOREGROUND = _MAPICore.SEARCH_FOREGROUND
STOP_SEARCH = _MAPICore.STOP_SEARCH
RESTART_SEARCH = _MAPICore.RESTART_SEARCH
RECURSIVE_SEARCH = _MAPICore.RECURSIVE_SEARCH
SHALLOW_SEARCH = _MAPICore.SHALLOW_SEARCH
FOREGROUND_SEARCH = _MAPICore.FOREGROUND_SEARCH
BACKGROUND_SEARCH = _MAPICore.BACKGROUND_SEARCH
class IMAPIContainer(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetContentsTable(self, ulFlags):
        return _MAPICore.IMAPIContainer_GetContentsTable(self, ulFlags)

    def GetHierarchyTable(self, ulFlags):
        return _MAPICore.IMAPIContainer_GetHierarchyTable(self, ulFlags)

    def OpenEntry(self, cbEntryID, lpInterface, ulFlags):
        return _MAPICore.IMAPIContainer_OpenEntry(self, cbEntryID, lpInterface, ulFlags)

    def SetSearchCriteria(self, lpRestriction, lpContainerList, ulSearchFlags):
        return _MAPICore.IMAPIContainer_SetSearchCriteria(self, lpRestriction, lpContainerList, ulSearchFlags)

    def GetSearchCriteria(self, ulFlags):
        return _MAPICore.IMAPIContainer_GetSearchCriteria(self, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IMAPIContainer

# Register IMAPIContainer in _MAPICore:
_MAPICore.IMAPIContainer_swigregister(IMAPIContainer)
fnevCriticalError = _MAPICore.fnevCriticalError
fnevNewMail = _MAPICore.fnevNewMail
fnevObjectCreated = _MAPICore.fnevObjectCreated
fnevObjectDeleted = _MAPICore.fnevObjectDeleted
fnevObjectModified = _MAPICore.fnevObjectModified
fnevObjectMoved = _MAPICore.fnevObjectMoved
fnevObjectCopied = _MAPICore.fnevObjectCopied
fnevSearchComplete = _MAPICore.fnevSearchComplete
fnevTableModified = _MAPICore.fnevTableModified
fnevStatusObjectModified = _MAPICore.fnevStatusObjectModified
fnevReservedForMapi = _MAPICore.fnevReservedForMapi
fnevExtended = _MAPICore.fnevExtended
TABLE_CHANGED = _MAPICore.TABLE_CHANGED
TABLE_ERROR = _MAPICore.TABLE_ERROR
TABLE_ROW_ADDED = _MAPICore.TABLE_ROW_ADDED
TABLE_ROW_DELETED = _MAPICore.TABLE_ROW_DELETED
TABLE_ROW_MODIFIED = _MAPICore.TABLE_ROW_MODIFIED
TABLE_SORT_DONE = _MAPICore.TABLE_SORT_DONE
TABLE_RESTRICT_DONE = _MAPICore.TABLE_RESTRICT_DONE
TABLE_SETCOL_DONE = _MAPICore.TABLE_SETCOL_DONE
TABLE_RELOAD = _MAPICore.TABLE_RELOAD
class IMAPIAdviseSink(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def OnNotify(self, cNotif):
        return _MAPICore.IMAPIAdviseSink_OnNotify(self, cNotif)
    __swig_destroy__ = _MAPICore.delete_IMAPIAdviseSink

# Register IMAPIAdviseSink in _MAPICore:
_MAPICore.IMAPIAdviseSink_swigregister(IMAPIAdviseSink)
class MAPIAdviseSink(IMAPIAdviseSink):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == MAPIAdviseSink:
            _self = None
        else:
            _self = self
        _MAPICore.MAPIAdviseSink_swiginit(self, _MAPICore.new_MAPIAdviseSink(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_MAPIAdviseSink
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_MAPIAdviseSink(self)
        return weakref.proxy(self)

# Register MAPIAdviseSink in _MAPICore:
_MAPICore.MAPIAdviseSink_swigregister(MAPIAdviseSink)
STORE_ENTRYID_UNIQUE = _MAPICore.STORE_ENTRYID_UNIQUE
STORE_READONLY = _MAPICore.STORE_READONLY
STORE_SEARCH_OK = _MAPICore.STORE_SEARCH_OK
STORE_MODIFY_OK = _MAPICore.STORE_MODIFY_OK
STORE_CREATE_OK = _MAPICore.STORE_CREATE_OK
STORE_ATTACH_OK = _MAPICore.STORE_ATTACH_OK
STORE_OLE_OK = _MAPICore.STORE_OLE_OK
STORE_SUBMIT_OK = _MAPICore.STORE_SUBMIT_OK
STORE_NOTIFY_OK = _MAPICore.STORE_NOTIFY_OK
STORE_MV_PROPS_OK = _MAPICore.STORE_MV_PROPS_OK
STORE_CATEGORIZE_OK = _MAPICore.STORE_CATEGORIZE_OK
STORE_RTF_OK = _MAPICore.STORE_RTF_OK
STORE_RESTRICTION_OK = _MAPICore.STORE_RESTRICTION_OK
STORE_SORT_OK = _MAPICore.STORE_SORT_OK
STORE_PUBLIC_FOLDERS = _MAPICore.STORE_PUBLIC_FOLDERS
STORE_UNCOMPRESSED_RTF = _MAPICore.STORE_UNCOMPRESSED_RTF
STORE_HAS_SEARCHES = _MAPICore.STORE_HAS_SEARCHES
LOGOFF_NO_WAIT = _MAPICore.LOGOFF_NO_WAIT
LOGOFF_ORDERLY = _MAPICore.LOGOFF_ORDERLY
LOGOFF_PURGE = _MAPICore.LOGOFF_PURGE
LOGOFF_ABORT = _MAPICore.LOGOFF_ABORT
LOGOFF_QUIET = _MAPICore.LOGOFF_QUIET
LOGOFF_COMPLETE = _MAPICore.LOGOFF_COMPLETE
LOGOFF_INBOUND = _MAPICore.LOGOFF_INBOUND
LOGOFF_OUTBOUND = _MAPICore.LOGOFF_OUTBOUND
LOGOFF_OUTBOUND_QUEUE = _MAPICore.LOGOFF_OUTBOUND_QUEUE
MSG_LOCKED = _MAPICore.MSG_LOCKED
MSG_UNLOCKED = _MAPICore.MSG_UNLOCKED
FOLDER_IPM_SUBTREE_VALID = _MAPICore.FOLDER_IPM_SUBTREE_VALID
FOLDER_IPM_INBOX_VALID = _MAPICore.FOLDER_IPM_INBOX_VALID
FOLDER_IPM_OUTBOX_VALID = _MAPICore.FOLDER_IPM_OUTBOX_VALID
FOLDER_IPM_WASTEBASKET_VALID = _MAPICore.FOLDER_IPM_WASTEBASKET_VALID
FOLDER_IPM_SENTMAIL_VALID = _MAPICore.FOLDER_IPM_SENTMAIL_VALID
FOLDER_VIEWS_VALID = _MAPICore.FOLDER_VIEWS_VALID
FOLDER_COMMON_VIEWS_VALID = _MAPICore.FOLDER_COMMON_VIEWS_VALID
FOLDER_FINDER_VALID = _MAPICore.FOLDER_FINDER_VALID
class IMsgStore(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def Advise(self, cbEntryID, ulEventMask, lpAdviseSink):
        return _MAPICore.IMsgStore_Advise(self, cbEntryID, ulEventMask, lpAdviseSink)

    def Unadvise(self, ulConnection):
        return _MAPICore.IMsgStore_Unadvise(self, ulConnection)

    def CompareEntryIDs(self, cbEntryID1, cbEntryID2, ulFlags):
        return _MAPICore.IMsgStore_CompareEntryIDs(self, cbEntryID1, cbEntryID2, ulFlags)

    def OpenEntry(self, cbEntryID, lpInterface, ulFlags):
        return _MAPICore.IMsgStore_OpenEntry(self, cbEntryID, lpInterface, ulFlags)

    def SetReceiveFolder(self, lpszMessageClass, ulFlags, cbEntryID):
        return _MAPICore.IMsgStore_SetReceiveFolder(self, lpszMessageClass, ulFlags, cbEntryID)

    def GetReceiveFolder(self, lpszMessageClass, ulFlags):
        return _MAPICore.IMsgStore_GetReceiveFolder(self, lpszMessageClass, ulFlags)

    def GetReceiveFolderTable(self, ulFlags):
        return _MAPICore.IMsgStore_GetReceiveFolderTable(self, ulFlags)

    def StoreLogoff(self, INOUT):
        return _MAPICore.IMsgStore_StoreLogoff(self, INOUT)

    def AbortSubmit(self, cbEntryID, ulFlags):
        return _MAPICore.IMsgStore_AbortSubmit(self, cbEntryID, ulFlags)

    def GetOutgoingQueue(self, ulFlags):
        return _MAPICore.IMsgStore_GetOutgoingQueue(self, ulFlags)

    def SetLockState(self, lpMessage, ulLockState):
        return _MAPICore.IMsgStore_SetLockState(self, lpMessage, ulLockState)

    def FinishedMsg(self, ulFlags, cbEntryID):
        return _MAPICore.IMsgStore_FinishedMsg(self, ulFlags, cbEntryID)

    def NotifyNewMail(self, lpNotification):
        return _MAPICore.IMsgStore_NotifyNewMail(self, lpNotification)
    __swig_destroy__ = _MAPICore.delete_IMsgStore

# Register IMsgStore in _MAPICore:
_MAPICore.IMsgStore_swigregister(IMsgStore)
FOLDER_ROOT = _MAPICore.FOLDER_ROOT
FOLDER_GENERIC = _MAPICore.FOLDER_GENERIC
FOLDER_SEARCH = _MAPICore.FOLDER_SEARCH
MESSAGE_MOVE = _MAPICore.MESSAGE_MOVE
MESSAGE_DIALOG = _MAPICore.MESSAGE_DIALOG
OPEN_IF_EXISTS = _MAPICore.OPEN_IF_EXISTS
DEL_MESSAGES = _MAPICore.DEL_MESSAGES
FOLDER_DIALOG = _MAPICore.FOLDER_DIALOG
DEL_FOLDERS = _MAPICore.DEL_FOLDERS
DEL_ASSOCIATED = _MAPICore.DEL_ASSOCIATED
FOLDER_MOVE = _MAPICore.FOLDER_MOVE
COPY_SUBFOLDERS = _MAPICore.COPY_SUBFOLDERS
MSGSTATUS_HIGHLIGHTED = _MAPICore.MSGSTATUS_HIGHLIGHTED
MSGSTATUS_TAGGED = _MAPICore.MSGSTATUS_TAGGED
MSGSTATUS_HIDDEN = _MAPICore.MSGSTATUS_HIDDEN
MSGSTATUS_DELMARKED = _MAPICore.MSGSTATUS_DELMARKED
MSGSTATUS_REMOTE_DOWNLOAD = _MAPICore.MSGSTATUS_REMOTE_DOWNLOAD
MSGSTATUS_REMOTE_DELETE = _MAPICore.MSGSTATUS_REMOTE_DELETE
RECURSIVE_SORT = _MAPICore.RECURSIVE_SORT
FLDSTATUS_HIGHLIGHTED = _MAPICore.FLDSTATUS_HIGHLIGHTED
FLDSTATUS_TAGGED = _MAPICore.FLDSTATUS_TAGGED
FLDSTATUS_HIDDEN = _MAPICore.FLDSTATUS_HIDDEN
FLDSTATUS_DELMARKED = _MAPICore.FLDSTATUS_DELMARKED
class IMAPIFolder(IMAPIContainer):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def CreateMessage(self, lpInterface, ulFlags):
        return _MAPICore.IMAPIFolder_CreateMessage(self, lpInterface, ulFlags)

    def CopyMessages(self, lpMsgList, lpInterface, lpDestFolder, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IMAPIFolder_CopyMessages(self, lpMsgList, lpInterface, lpDestFolder, ulUIParam, lpProgress, ulFlags)

    def DeleteMessages(self, lpMsgList, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IMAPIFolder_DeleteMessages(self, lpMsgList, ulUIParam, lpProgress, ulFlags)

    def CreateFolder(self, ulFolderType, lpszFolderName, lpszFolderComment, lpInterface, ulFlags):
        return _MAPICore.IMAPIFolder_CreateFolder(self, ulFolderType, lpszFolderName, lpszFolderComment, lpInterface, ulFlags)

    def CopyFolder(self, cbEntryID, lpInterface, lpDestFolder, lpszNewFolderName, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IMAPIFolder_CopyFolder(self, cbEntryID, lpInterface, lpDestFolder, lpszNewFolderName, ulUIParam, lpProgress, ulFlags)

    def DeleteFolder(self, cbEntryID, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IMAPIFolder_DeleteFolder(self, cbEntryID, ulUIParam, lpProgress, ulFlags)

    def SetReadFlags(self, lpMsgList, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IMAPIFolder_SetReadFlags(self, lpMsgList, ulUIParam, lpProgress, ulFlags)

    def GetMessageStatus(self, cbEntryID, ulFlags):
        return _MAPICore.IMAPIFolder_GetMessageStatus(self, cbEntryID, ulFlags)

    def SetMessageStatus(self, cbEntryID, ulNewStatus, ulNewStatusMask):
        return _MAPICore.IMAPIFolder_SetMessageStatus(self, cbEntryID, ulNewStatus, ulNewStatusMask)

    def SaveContentsSort(self, lpSortCriteria, ulFlags):
        return _MAPICore.IMAPIFolder_SaveContentsSort(self, lpSortCriteria, ulFlags)

    def EmptyFolder(self, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IMAPIFolder_EmptyFolder(self, ulUIParam, lpProgress, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IMAPIFolder

# Register IMAPIFolder in _MAPICore:
_MAPICore.IMAPIFolder_swigregister(IMAPIFolder)
FORCE_SUBMIT = _MAPICore.FORCE_SUBMIT
MSGFLAG_READ = _MAPICore.MSGFLAG_READ
MSGFLAG_UNMODIFIED = _MAPICore.MSGFLAG_UNMODIFIED
MSGFLAG_SUBMIT = _MAPICore.MSGFLAG_SUBMIT
MSGFLAG_UNSENT = _MAPICore.MSGFLAG_UNSENT
MSGFLAG_HASATTACH = _MAPICore.MSGFLAG_HASATTACH
MSGFLAG_FROMME = _MAPICore.MSGFLAG_FROMME
MSGFLAG_ASSOCIATED = _MAPICore.MSGFLAG_ASSOCIATED
MSGFLAG_RESEND = _MAPICore.MSGFLAG_RESEND
MSGFLAG_RN_PENDING = _MAPICore.MSGFLAG_RN_PENDING
MSGFLAG_NRN_PENDING = _MAPICore.MSGFLAG_NRN_PENDING
SUBMITFLAG_LOCKED = _MAPICore.SUBMITFLAG_LOCKED
SUBMITFLAG_PREPROCESS = _MAPICore.SUBMITFLAG_PREPROCESS
MODRECIP_ADD = _MAPICore.MODRECIP_ADD
MODRECIP_MODIFY = _MAPICore.MODRECIP_MODIFY
MODRECIP_REMOVE = _MAPICore.MODRECIP_REMOVE
SUPPRESS_RECEIPT = _MAPICore.SUPPRESS_RECEIPT
CLEAR_READ_FLAG = _MAPICore.CLEAR_READ_FLAG
GENERATE_RECEIPT_ONLY = _MAPICore.GENERATE_RECEIPT_ONLY
CLEAR_RN_PENDING = _MAPICore.CLEAR_RN_PENDING
CLEAR_NRN_PENDING = _MAPICore.CLEAR_NRN_PENDING
ATTACH_DIALOG = _MAPICore.ATTACH_DIALOG
SECURITY_SIGNED = _MAPICore.SECURITY_SIGNED
SECURITY_ENCRYPTED = _MAPICore.SECURITY_ENCRYPTED
PRIO_URGENT = _MAPICore.PRIO_URGENT
PRIO_NORMAL = _MAPICore.PRIO_NORMAL
PRIO_NONURGENT = _MAPICore.PRIO_NONURGENT
SENSITIVITY_NONE = _MAPICore.SENSITIVITY_NONE
SENSITIVITY_PERSONAL = _MAPICore.SENSITIVITY_PERSONAL
SENSITIVITY_PRIVATE = _MAPICore.SENSITIVITY_PRIVATE
SENSITIVITY_COMPANY_CONFIDENTIAL = _MAPICore.SENSITIVITY_COMPANY_CONFIDENTIAL
IMPORTANCE_LOW = _MAPICore.IMPORTANCE_LOW
IMPORTANCE_NORMAL = _MAPICore.IMPORTANCE_NORMAL
IMPORTANCE_HIGH = _MAPICore.IMPORTANCE_HIGH
class IMessage(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetAttachmentTable(self, ulFlags):
        return _MAPICore.IMessage_GetAttachmentTable(self, ulFlags)

    def OpenAttach(self, ulAttachmentNum, lpInterface, ulFlags):
        return _MAPICore.IMessage_OpenAttach(self, ulAttachmentNum, lpInterface, ulFlags)

    def CreateAttach(self, lpInterface, ulFlags):
        return _MAPICore.IMessage_CreateAttach(self, lpInterface, ulFlags)

    def DeleteAttach(self, ulAttachmentNum, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IMessage_DeleteAttach(self, ulAttachmentNum, ulUIParam, lpProgress, ulFlags)

    def GetRecipientTable(self, ulFlags):
        return _MAPICore.IMessage_GetRecipientTable(self, ulFlags)

    def ModifyRecipients(self, ulFlags, INPUT):
        return _MAPICore.IMessage_ModifyRecipients(self, ulFlags, INPUT)

    def SubmitMessage(self, ulFlags):
        return _MAPICore.IMessage_SubmitMessage(self, ulFlags)

    def SetReadFlag(self, ulFlags):
        return _MAPICore.IMessage_SetReadFlag(self, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IMessage

# Register IMessage in _MAPICore:
_MAPICore.IMessage_swigregister(IMessage)
NO_ATTACHMENT = _MAPICore.NO_ATTACHMENT
ATTACH_BY_VALUE = _MAPICore.ATTACH_BY_VALUE
ATTACH_BY_REFERENCE = _MAPICore.ATTACH_BY_REFERENCE
ATTACH_BY_REF_RESOLVE = _MAPICore.ATTACH_BY_REF_RESOLVE
ATTACH_BY_REF_ONLY = _MAPICore.ATTACH_BY_REF_ONLY
ATTACH_EMBEDDED_MSG = _MAPICore.ATTACH_EMBEDDED_MSG
ATTACH_OLE = _MAPICore.ATTACH_OLE
class IAttach(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _MAPICore.delete_IAttach

# Register IAttach in _MAPICore:
_MAPICore.IAttach_swigregister(IAttach)
AB_RECIPIENTS = _MAPICore.AB_RECIPIENTS
AB_SUBCONTAINERS = _MAPICore.AB_SUBCONTAINERS
AB_MODIFIABLE = _MAPICore.AB_MODIFIABLE
AB_UNMODIFIABLE = _MAPICore.AB_UNMODIFIABLE
AB_FIND_ON_OPEN = _MAPICore.AB_FIND_ON_OPEN
AB_NOT_DEFAULT = _MAPICore.AB_NOT_DEFAULT
CREATE_CHECK_DUP_STRICT = _MAPICore.CREATE_CHECK_DUP_STRICT
CREATE_CHECK_DUP_LOOSE = _MAPICore.CREATE_CHECK_DUP_LOOSE
CREATE_REPLACE = _MAPICore.CREATE_REPLACE
MAPI_UNRESOLVED = _MAPICore.MAPI_UNRESOLVED
MAPI_AMBIGUOUS = _MAPICore.MAPI_AMBIGUOUS
MAPI_RESOLVED = _MAPICore.MAPI_RESOLVED
class IABContainer(IMAPIContainer):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def CreateEntry(self, cbEntryID, lpEntryID, flags, OUTPUT):
        return _MAPICore.IABContainer_CreateEntry(self, cbEntryID, lpEntryID, flags, OUTPUT)

    def CopyEntries(self, lpEntries, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IABContainer_CopyEntries(self, lpEntries, ulUIParam, lpProgress, ulFlags)

    def DeleteEntries(self, lpEntries, ulFlags):
        return _MAPICore.IABContainer_DeleteEntries(self, lpEntries, ulFlags)

    def ResolveNames(self, lpPropTagArray, ulFlags, arg4, arg5):
        return _MAPICore.IABContainer_ResolveNames(self, lpPropTagArray, ulFlags, arg4, arg5)
    __swig_destroy__ = _MAPICore.delete_IABContainer

# Register IABContainer in _MAPICore:
_MAPICore.IABContainer_swigregister(IABContainer)
MAPI_SEND_NO_RICH_INFO = _MAPICore.MAPI_SEND_NO_RICH_INFO
MAPI_MH_DP_PUBLIC_UA = _MAPICore.MAPI_MH_DP_PUBLIC_UA
MAPI_MH_DP_PRIVATE_UA = _MAPICore.MAPI_MH_DP_PRIVATE_UA
MAPI_MH_DP_MS = _MAPICore.MAPI_MH_DP_MS
MAPI_MH_DP_ML = _MAPICore.MAPI_MH_DP_ML
MAPI_MH_DP_PDAU = _MAPICore.MAPI_MH_DP_PDAU
MAPI_MH_DP_PDS_PATRON = _MAPICore.MAPI_MH_DP_PDS_PATRON
MAPI_MH_DP_OTHER_AU = _MAPICore.MAPI_MH_DP_OTHER_AU
class IMailUser(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _MAPICore.delete_IMailUser

# Register IMailUser in _MAPICore:
_MAPICore.IMailUser_swigregister(IMailUser)
class IDistList(IMAPIContainer):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def CreateEntry(self, cbEntryID, lpEntryID, create_flags, OUTPUT):
        return _MAPICore.IDistList_CreateEntry(self, cbEntryID, lpEntryID, create_flags, OUTPUT)

    def CopyEntries(self, lpEntries, ulUIParam, lpProgress, ulFlags):
        return _MAPICore.IDistList_CopyEntries(self, lpEntries, ulUIParam, lpProgress, ulFlags)

    def DeleteEntries(self, lpEntries, ulFlags):
        return _MAPICore.IDistList_DeleteEntries(self, lpEntries, ulFlags)

    def ResolveNames(self, lpPropTagArray, ulFlags, arg4, arg5):
        return _MAPICore.IDistList_ResolveNames(self, lpPropTagArray, ulFlags, arg4, arg5)
    __swig_destroy__ = _MAPICore.delete_IDistList

# Register IDistList in _MAPICore:
_MAPICore.IDistList_swigregister(IDistList)
class IMAPIStatus(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def ValidateState(self, ulUIParam, ulFlags):
        return _MAPICore.IMAPIStatus_ValidateState(self, ulUIParam, ulFlags)

    def SettingsDialog(self, ulUIParam, ulFlags):
        return _MAPICore.IMAPIStatus_SettingsDialog(self, ulUIParam, ulFlags)

    def ChangePassword(self, lpOldPass, lpNewPass, ulFlags):
        return _MAPICore.IMAPIStatus_ChangePassword(self, lpOldPass, lpNewPass, ulFlags)

    def FlushQueues(self, ulUIParam, cbTargetTransport, lpTargetTransport, ulFlags):
        return _MAPICore.IMAPIStatus_FlushQueues(self, ulUIParam, cbTargetTransport, lpTargetTransport, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IMAPIStatus

# Register IMAPIStatus in _MAPICore:
_MAPICore.IMAPIStatus_swigregister(IMAPIStatus)
TBLSTAT_COMPLETE = _MAPICore.TBLSTAT_COMPLETE
TBLSTAT_QCHANGED = _MAPICore.TBLSTAT_QCHANGED
TBLSTAT_SORTING = _MAPICore.TBLSTAT_SORTING
TBLSTAT_SORT_ERROR = _MAPICore.TBLSTAT_SORT_ERROR
TBLSTAT_SETTING_COLS = _MAPICore.TBLSTAT_SETTING_COLS
TBLSTAT_SETCOL_ERROR = _MAPICore.TBLSTAT_SETCOL_ERROR
TBLSTAT_RESTRICTING = _MAPICore.TBLSTAT_RESTRICTING
TBLSTAT_RESTRICT_ERROR = _MAPICore.TBLSTAT_RESTRICT_ERROR
TBLTYPE_SNAPSHOT = _MAPICore.TBLTYPE_SNAPSHOT
TBLTYPE_KEYSET = _MAPICore.TBLTYPE_KEYSET
TBLTYPE_DYNAMIC = _MAPICore.TBLTYPE_DYNAMIC
TABLE_SORT_ASCEND = _MAPICore.TABLE_SORT_ASCEND
TABLE_SORT_DESCEND = _MAPICore.TABLE_SORT_DESCEND
TABLE_SORT_COMBINE = _MAPICore.TABLE_SORT_COMBINE
TABLE_SORT_CATEG_MAX = _MAPICore.TABLE_SORT_CATEG_MAX
TABLE_SORT_CATEG_MIN = _MAPICore.TABLE_SORT_CATEG_MIN
BOOKMARK_BEGINNING = _MAPICore.BOOKMARK_BEGINNING
BOOKMARK_CURRENT = _MAPICore.BOOKMARK_CURRENT
BOOKMARK_END = _MAPICore.BOOKMARK_END
FL_FULLSTRING = _MAPICore.FL_FULLSTRING
FL_SUBSTRING = _MAPICore.FL_SUBSTRING
FL_PREFIX = _MAPICore.FL_PREFIX
FL_IGNORECASE = _MAPICore.FL_IGNORECASE
FL_IGNORENONSPACE = _MAPICore.FL_IGNORENONSPACE
FL_LOOSE = _MAPICore.FL_LOOSE
RES_AND = _MAPICore.RES_AND
RES_OR = _MAPICore.RES_OR
RES_NOT = _MAPICore.RES_NOT
RES_CONTENT = _MAPICore.RES_CONTENT
RES_PROPERTY = _MAPICore.RES_PROPERTY
RES_COMPAREPROPS = _MAPICore.RES_COMPAREPROPS
RES_BITMASK = _MAPICore.RES_BITMASK
RES_SIZE = _MAPICore.RES_SIZE
RES_EXIST = _MAPICore.RES_EXIST
RES_SUBRESTRICTION = _MAPICore.RES_SUBRESTRICTION
RES_COMMENT = _MAPICore.RES_COMMENT
RELOP_LT = _MAPICore.RELOP_LT
RELOP_LE = _MAPICore.RELOP_LE
RELOP_GT = _MAPICore.RELOP_GT
RELOP_GE = _MAPICore.RELOP_GE
RELOP_EQ = _MAPICore.RELOP_EQ
RELOP_NE = _MAPICore.RELOP_NE
RELOP_RE = _MAPICore.RELOP_RE
BMR_EQZ = _MAPICore.BMR_EQZ
BMR_NEZ = _MAPICore.BMR_NEZ
TBL_ALL_COLUMNS = _MAPICore.TBL_ALL_COLUMNS
TBL_LEAF_ROW = _MAPICore.TBL_LEAF_ROW
TBL_EMPTY_CATEGORY = _MAPICore.TBL_EMPTY_CATEGORY
TBL_EXPANDED_CATEGORY = _MAPICore.TBL_EXPANDED_CATEGORY
TBL_COLLAPSED_CATEGORY = _MAPICore.TBL_COLLAPSED_CATEGORY
TBL_NOWAIT = _MAPICore.TBL_NOWAIT
TBL_ASYNC = _MAPICore.TBL_ASYNC
TBL_BATCH = _MAPICore.TBL_BATCH
DIR_BACKWARD = _MAPICore.DIR_BACKWARD
TBL_NOADVANCE = _MAPICore.TBL_NOADVANCE
class IMAPITable(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IMAPITable_GetLastError(self, hResult, ulFlags)

    def Advise(self, ulEventMask, lpAdviseSink):
        return _MAPICore.IMAPITable_Advise(self, ulEventMask, lpAdviseSink)

    def Unadvise(self, ulConnection):
        return _MAPICore.IMAPITable_Unadvise(self, ulConnection)

    def GetStatus(self):
        return _MAPICore.IMAPITable_GetStatus(self)

    def SetColumns(self, lpPropTagArray, ulFlags):
        return _MAPICore.IMAPITable_SetColumns(self, lpPropTagArray, ulFlags)

    def QueryColumns(self, ulFlags):
        return _MAPICore.IMAPITable_QueryColumns(self, ulFlags)

    def GetRowCount(self, ulFlags):
        return _MAPICore.IMAPITable_GetRowCount(self, ulFlags)

    def SeekRow(self, bkOrigin, lRowCount):
        return _MAPICore.IMAPITable_SeekRow(self, bkOrigin, lRowCount)

    def SeekRowApprox(self, ulNumerator, ulDenominator):
        return _MAPICore.IMAPITable_SeekRowApprox(self, ulNumerator, ulDenominator)

    def QueryPosition(self):
        return _MAPICore.IMAPITable_QueryPosition(self)

    def FindRow(self, arg2, origin, flags):
        return _MAPICore.IMAPITable_FindRow(self, arg2, origin, flags)

    def Restrict(self, arg2, flags):
        return _MAPICore.IMAPITable_Restrict(self, arg2, flags)

    def CreateBookmark(self):
        return _MAPICore.IMAPITable_CreateBookmark(self)

    def FreeBookmark(self, bkPosition):
        return _MAPICore.IMAPITable_FreeBookmark(self, bkPosition)

    def SortTable(self, c, flags):
        return _MAPICore.IMAPITable_SortTable(self, c, flags)

    def QuerySortOrder(self, OUTPUT):
        return _MAPICore.IMAPITable_QuerySortOrder(self, OUTPUT)

    def QueryRows(self, lRowCount, ulFlags):
        return _MAPICore.IMAPITable_QueryRows(self, lRowCount, ulFlags)

    def Abort(self):
        return _MAPICore.IMAPITable_Abort(self)

    def ExpandRow(self, cbInstanceKey, ulRowCount, ulFlags):
        return _MAPICore.IMAPITable_ExpandRow(self, cbInstanceKey, ulRowCount, ulFlags)

    def CollapseRow(self, cbInstanceKey, ulFlags):
        return _MAPICore.IMAPITable_CollapseRow(self, cbInstanceKey, ulFlags)

    def WaitForCompletion(self, ulFlags, ulTimeout):
        return _MAPICore.IMAPITable_WaitForCompletion(self, ulFlags, ulTimeout)

    def GetCollapseState(self, ulFlags, cbInstanceKey):
        return _MAPICore.IMAPITable_GetCollapseState(self, ulFlags, cbInstanceKey)

    def SetCollapseState(self, ulFlags, cbCollapseState):
        return _MAPICore.IMAPITable_SetCollapseState(self, ulFlags, cbCollapseState)
    __swig_destroy__ = _MAPICore.delete_IMAPITable

# Register IMAPITable in _MAPICore:
_MAPICore.IMAPITable_swigregister(IMAPITable)
MAPI_STORE_PROVIDER = _MAPICore.MAPI_STORE_PROVIDER
MAPI_AB = _MAPICore.MAPI_AB
MAPI_AB_PROVIDER = _MAPICore.MAPI_AB_PROVIDER
MAPI_TRANSPORT_PROVIDER = _MAPICore.MAPI_TRANSPORT_PROVIDER
MAPI_SPOOLER = _MAPICore.MAPI_SPOOLER
MAPI_PROFILE_PROVIDER = _MAPICore.MAPI_PROFILE_PROVIDER
MAPI_SUBSYSTEM = _MAPICore.MAPI_SUBSYSTEM
MAPI_HOOK_PROVIDER = _MAPICore.MAPI_HOOK_PROVIDER
STATUS_VALIDATE_STATE = _MAPICore.STATUS_VALIDATE_STATE
STATUS_SETTINGS_DIALOG = _MAPICore.STATUS_SETTINGS_DIALOG
STATUS_CHANGE_PASSWORD = _MAPICore.STATUS_CHANGE_PASSWORD
STATUS_FLUSH_QUEUES = _MAPICore.STATUS_FLUSH_QUEUES
STATUS_DEFAULT_OUTBOUND = _MAPICore.STATUS_DEFAULT_OUTBOUND
STATUS_DEFAULT_STORE = _MAPICore.STATUS_DEFAULT_STORE
STATUS_PRIMARY_IDENTITY = _MAPICore.STATUS_PRIMARY_IDENTITY
STATUS_SIMPLE_STORE = _MAPICore.STATUS_SIMPLE_STORE
STATUS_XP_PREFER_LAST = _MAPICore.STATUS_XP_PREFER_LAST
STATUS_NO_PRIMARY_IDENTITY = _MAPICore.STATUS_NO_PRIMARY_IDENTITY
STATUS_NO_DEFAULT_STORE = _MAPICore.STATUS_NO_DEFAULT_STORE
STATUS_TEMP_SECTION = _MAPICore.STATUS_TEMP_SECTION
STATUS_OWN_STORE = _MAPICore.STATUS_OWN_STORE
STATUS_NEED_IPM_TREE = _MAPICore.STATUS_NEED_IPM_TREE
STATUS_PRIMARY_STORE = _MAPICore.STATUS_PRIMARY_STORE
STATUS_SECONDARY_STORE = _MAPICore.STATUS_SECONDARY_STORE
STATUS_AVAILABLE = _MAPICore.STATUS_AVAILABLE
STATUS_OFFLINE = _MAPICore.STATUS_OFFLINE
STATUS_FAILURE = _MAPICore.STATUS_FAILURE
STATUS_INBOUND_ENABLED = _MAPICore.STATUS_INBOUND_ENABLED
STATUS_INBOUND_ACTIVE = _MAPICore.STATUS_INBOUND_ACTIVE
STATUS_INBOUND_FLUSH = _MAPICore.STATUS_INBOUND_FLUSH
STATUS_OUTBOUND_ENABLED = _MAPICore.STATUS_OUTBOUND_ENABLED
STATUS_OUTBOUND_ACTIVE = _MAPICore.STATUS_OUTBOUND_ACTIVE
STATUS_OUTBOUND_FLUSH = _MAPICore.STATUS_OUTBOUND_FLUSH
STATUS_REMOTE_ACCESS = _MAPICore.STATUS_REMOTE_ACCESS
SUPPRESS_UI = _MAPICore.SUPPRESS_UI
REFRESH_XP_HEADER_CACHE = _MAPICore.REFRESH_XP_HEADER_CACHE
PROCESS_XP_HEADER_CACHE = _MAPICore.PROCESS_XP_HEADER_CACHE
FORCE_XP_CONNECT = _MAPICore.FORCE_XP_CONNECT
FORCE_XP_DISCONNECT = _MAPICore.FORCE_XP_DISCONNECT
CONFIG_CHANGED = _MAPICore.CONFIG_CHANGED
ABORT_XP_HEADER_OPERATION = _MAPICore.ABORT_XP_HEADER_OPERATION
SHOW_XP_SESSION_UI = _MAPICore.SHOW_XP_SESSION_UI
UI_READONLY = _MAPICore.UI_READONLY
FLUSH_UPLOAD = _MAPICore.FLUSH_UPLOAD
FLUSH_DOWNLOAD = _MAPICore.FLUSH_DOWNLOAD
FLUSH_FORCE = _MAPICore.FLUSH_FORCE
FLUSH_NO_UI = _MAPICore.FLUSH_NO_UI
FLUSH_ASYNC_OK = _MAPICore.FLUSH_ASYNC_OK
class IProfSect(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _MAPICore.delete_IProfSect

# Register IProfSect in _MAPICore:
_MAPICore.IProfSect_swigregister(IProfSect)
MAPI_TOP_LEVEL = _MAPICore.MAPI_TOP_LEVEL
class IMAPIProgress(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def Progress(self, ulValue, ulCount, ulTotal):
        return _MAPICore.IMAPIProgress_Progress(self, ulValue, ulCount, ulTotal)

    def GetFlags(self):
        return _MAPICore.IMAPIProgress_GetFlags(self)

    def GetMax(self):
        return _MAPICore.IMAPIProgress_GetMax(self)

    def GetMin(self):
        return _MAPICore.IMAPIProgress_GetMin(self)

    def SetLimits(self):
        return _MAPICore.IMAPIProgress_SetLimits(self)
    __swig_destroy__ = _MAPICore.delete_IMAPIProgress

# Register IMAPIProgress in _MAPICore:
_MAPICore.IMAPIProgress_swigregister(IMAPIProgress)
UI_SERVICE = _MAPICore.UI_SERVICE
SERVICE_UI_ALWAYS = _MAPICore.SERVICE_UI_ALWAYS
SERVICE_UI_ALLOWED = _MAPICore.SERVICE_UI_ALLOWED
UI_CURRENT_PROVIDER_FIRST = _MAPICore.UI_CURRENT_PROVIDER_FIRST
class IProviderAdmin(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IProviderAdmin_GetLastError(self, hResult, ulFlags)

    def GetProviderTable(self, ulFlags, OUTPUT):
        return _MAPICore.IProviderAdmin_GetProviderTable(self, ulFlags, OUTPUT)

    def CreateProvider(self, lpszProvider, cValues, ulUIParam, ulFlags):
        return _MAPICore.IProviderAdmin_CreateProvider(self, lpszProvider, cValues, ulUIParam, ulFlags)

    def DeleteProvider(self, lpUID):
        return _MAPICore.IProviderAdmin_DeleteProvider(self, lpUID)

    def OpenProfileSection(self, lpUID, lpInterface, ulFlags):
        return _MAPICore.IProviderAdmin_OpenProfileSection(self, lpUID, lpInterface, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IProviderAdmin

# Register IProviderAdmin in _MAPICore:
_MAPICore.IProviderAdmin_swigregister(IProviderAdmin)
ADRPARM_HELP_CTX = _MAPICore.ADRPARM_HELP_CTX
DIALOG_MODAL = _MAPICore.DIALOG_MODAL
DIALOG_SDI = _MAPICore.DIALOG_SDI
DIALOG_OPTIONS = _MAPICore.DIALOG_OPTIONS
ADDRESS_ONE = _MAPICore.ADDRESS_ONE
AB_SELECTONLY = _MAPICore.AB_SELECTONLY
AB_RESOLVE = _MAPICore.AB_RESOLVE
DT_MAILUSER = _MAPICore.DT_MAILUSER
DT_DISTLIST = _MAPICore.DT_DISTLIST
DT_FORUM = _MAPICore.DT_FORUM
DT_AGENT = _MAPICore.DT_AGENT
DT_ORGANIZATION = _MAPICore.DT_ORGANIZATION
DT_PRIVATE_DISTLIST = _MAPICore.DT_PRIVATE_DISTLIST
DT_REMOTE_MAILUSER = _MAPICore.DT_REMOTE_MAILUSER
DT_MODIFIABLE = _MAPICore.DT_MODIFIABLE
DT_GLOBAL = _MAPICore.DT_GLOBAL
DT_LOCAL = _MAPICore.DT_LOCAL
DT_WAN = _MAPICore.DT_WAN
DT_NOT_SPECIFIC = _MAPICore.DT_NOT_SPECIFIC
DT_FOLDER = _MAPICore.DT_FOLDER
DT_FOLDER_LINK = _MAPICore.DT_FOLDER_LINK
DT_FOLDER_SPECIAL = _MAPICore.DT_FOLDER_SPECIAL
MAPI_DEFERRED_ERRORS = _MAPICore.MAPI_DEFERRED_ERRORS
MAPI_ASSOCIATED = _MAPICore.MAPI_ASSOCIATED
MDB_NO_DIALOG = _MAPICore.MDB_NO_DIALOG
MDB_WRITE = _MAPICore.MDB_WRITE
MDB_TEMPORARY = _MAPICore.MDB_TEMPORARY
MDB_NO_MAIL = _MAPICore.MDB_NO_MAIL
AB_NO_DIALOG = _MAPICore.AB_NO_DIALOG
EC_OVERRIDE_HOMESERVER = _MAPICore.EC_OVERRIDE_HOMESERVER
class MAPIProp(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == MAPIProp:
            _self = None
        else:
            _self = self
        _MAPICore.MAPIProp_swiginit(self, _MAPICore.new_MAPIProp(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_MAPIProp
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_MAPIProp(self)
        return weakref.proxy(self)

# Register MAPIProp in _MAPICore:
_MAPICore.MAPIProp_swigregister(MAPIProp)
class Message(IMessage):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == Message:
            _self = None
        else:
            _self = self
        _MAPICore.Message_swiginit(self, _MAPICore.new_Message(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_Message
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_Message(self)
        return weakref.proxy(self)

# Register Message in _MAPICore:
_MAPICore.Message_swigregister(Message)
class Attach(IAttach):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == Attach:
            _self = None
        else:
            _self = self
        _MAPICore.Attach_swiginit(self, _MAPICore.new_Attach(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_Attach
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_Attach(self)
        return weakref.proxy(self)

# Register Attach in _MAPICore:
_MAPICore.Attach_swigregister(Attach)
class MAPITable(IMAPITable):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == MAPITable:
            _self = None
        else:
            _self = self
        _MAPICore.MAPITable_swiginit(self, _MAPICore.new_MAPITable(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_MAPITable
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_MAPITable(self)
        return weakref.proxy(self)

# Register MAPITable in _MAPICore:
_MAPICore.MAPITable_swigregister(MAPITable)
MAPI_ALLOW_OTHERS = _MAPICore.MAPI_ALLOW_OTHERS
MAPI_EXPLICIT_PROFILE = _MAPICore.MAPI_EXPLICIT_PROFILE
MAPI_SERVICE_UI_ALWAYS = _MAPICore.MAPI_SERVICE_UI_ALWAYS
MAPI_NO_MAIL = _MAPICore.MAPI_NO_MAIL
MAPI_NT_SERVICE = _MAPICore.MAPI_NT_SERVICE
MAPI_TIMEOUT_SHORT = _MAPICore.MAPI_TIMEOUT_SHORT
class MAPIINIT_0(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ulVersion = property(_MAPICore.MAPIINIT_0_ulVersion_get, _MAPICore.MAPIINIT_0_ulVersion_set)
    ulFlags = property(_MAPICore.MAPIINIT_0_ulFlags_get, _MAPICore.MAPIINIT_0_ulFlags_set)

    def __init__(self):
        _MAPICore.MAPIINIT_0_swiginit(self, _MAPICore.new_MAPIINIT_0())
    __swig_destroy__ = _MAPICore.delete_MAPIINIT_0

# Register MAPIINIT_0 in _MAPICore:
_MAPICore.MAPIINIT_0_swigregister(MAPIINIT_0)
MAPI_INIT_VERSION = _MAPICore.MAPI_INIT_VERSION
MAPI_MULTITHREAD_NOTIFICATIONS = _MAPICore.MAPI_MULTITHREAD_NOTIFICATIONS

def MAPILogonEx(ulUIParam, lpszProfileName, lpszPassword, ulFlags):
    return _MAPICore.MAPILogonEx(ulUIParam, lpszProfileName, lpszPassword, ulFlags)

def MAPIAdminProfiles(ulFlags):
    return _MAPICore.MAPIAdminProfiles(ulFlags)
MAPI_LOGOFF_SHARED = _MAPICore.MAPI_LOGOFF_SHARED
MAPI_LOGOFF_UI = _MAPICore.MAPI_LOGOFF_UI
MAPI_DEFAULT_STORE = _MAPICore.MAPI_DEFAULT_STORE
MAPI_SIMPLE_STORE_TEMPORARY = _MAPICore.MAPI_SIMPLE_STORE_TEMPORARY
MAPI_SIMPLE_STORE_PERMANENT = _MAPICore.MAPI_SIMPLE_STORE_PERMANENT
MAPI_PRIMARY_STORE = _MAPICore.MAPI_PRIMARY_STORE
MAPI_SECONDARY_STORE = _MAPICore.MAPI_SECONDARY_STORE
MAPI_POST_MESSAGE = _MAPICore.MAPI_POST_MESSAGE
MAPI_NEW_MESSAGE = _MAPICore.MAPI_NEW_MESSAGE
class IMAPISession(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags, OUTPUT):
        return _MAPICore.IMAPISession_GetLastError(self, hResult, ulFlags, OUTPUT)

    def GetMsgStoresTable(self, ulFlags):
        return _MAPICore.IMAPISession_GetMsgStoresTable(self, ulFlags)

    def OpenMsgStore(self, ulUIParam, cbEntryID, lpInterface, ulFlags):
        return _MAPICore.IMAPISession_OpenMsgStore(self, ulUIParam, cbEntryID, lpInterface, ulFlags)

    def OpenAddressBook(self, ulUIParam, lpInterface, ulFlags):
        return _MAPICore.IMAPISession_OpenAddressBook(self, ulUIParam, lpInterface, ulFlags)

    def OpenProfileSection(self, lpUID, lpInterface, ulFlags):
        return _MAPICore.IMAPISession_OpenProfileSection(self, lpUID, lpInterface, ulFlags)

    def GetStatusTable(self, ulFlags):
        return _MAPICore.IMAPISession_GetStatusTable(self, ulFlags)

    def OpenEntry(self, cbEntryID, lpInterface, ulFlags):
        return _MAPICore.IMAPISession_OpenEntry(self, cbEntryID, lpInterface, ulFlags)

    def CompareEntryIDs(self, cbEntryID1, cbEntryID2, ulFlags):
        return _MAPICore.IMAPISession_CompareEntryIDs(self, cbEntryID1, cbEntryID2, ulFlags)

    def Advise(self, cbEntryID, ulEventMask, lpAdviseSink):
        return _MAPICore.IMAPISession_Advise(self, cbEntryID, ulEventMask, lpAdviseSink)

    def Unadvise(self, ulConnection):
        return _MAPICore.IMAPISession_Unadvise(self, ulConnection)

    def MessageOptions(self, ulUIParam, ulFlags, lpszAdrType, lpMessage):
        return _MAPICore.IMAPISession_MessageOptions(self, ulUIParam, ulFlags, lpszAdrType, lpMessage)

    def QueryDefaultMessageOpt(self, lpszAdrType, ulFlags, lppOptions):
        return _MAPICore.IMAPISession_QueryDefaultMessageOpt(self, lpszAdrType, ulFlags, lppOptions)

    def EnumAdrTypes(self, ulFlags, arg3):
        return _MAPICore.IMAPISession_EnumAdrTypes(self, ulFlags, arg3)

    def QueryIdentity(self):
        return _MAPICore.IMAPISession_QueryIdentity(self)

    def Logoff(self, ulUIParam, ulFlags, ulReserved):
        return _MAPICore.IMAPISession_Logoff(self, ulUIParam, ulFlags, ulReserved)

    def SetDefaultStore(self, ulFlags, cbEntryID):
        return _MAPICore.IMAPISession_SetDefaultStore(self, ulFlags, cbEntryID)

    def AdminServices(self, ulFlags):
        return _MAPICore.IMAPISession_AdminServices(self, ulFlags)

    def ShowForm(self, ulUIParam, lpMsgStore, lpParentFolder, lpInterface, ulMessageToken, lpMessageSent, ulFlags, ulMessageStatus, ulMessageFlags, ulAccess, lpszMessageClass):
        return _MAPICore.IMAPISession_ShowForm(self, ulUIParam, lpMsgStore, lpParentFolder, lpInterface, ulMessageToken, lpMessageSent, ulFlags, ulMessageStatus, ulMessageFlags, ulAccess, lpszMessageClass)

    def PrepareForm(self, lpInterface, lpMessage):
        return _MAPICore.IMAPISession_PrepareForm(self, lpInterface, lpMessage)
    __swig_destroy__ = _MAPICore.delete_IMAPISession

# Register IMAPISession in _MAPICore:
_MAPICore.IMAPISession_swigregister(IMAPISession)
class IAddrBook(IMAPIProp):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def OpenEntry(self, cbEntryID, lpInterface, ulFlags):
        return _MAPICore.IAddrBook_OpenEntry(self, cbEntryID, lpInterface, ulFlags)

    def CompareEntryIDs(self, cbEntryID1, cbEntryID2, ulFlags):
        return _MAPICore.IAddrBook_CompareEntryIDs(self, cbEntryID1, cbEntryID2, ulFlags)

    def Advise(self, cbEntryID, ulEventMask, lpAdviseSink):
        return _MAPICore.IAddrBook_Advise(self, cbEntryID, ulEventMask, lpAdviseSink)

    def Unadvise(self, ulConnection):
        return _MAPICore.IAddrBook_Unadvise(self, ulConnection)

    def CreateOneOff(self, lpszName, lpszAdrType, lpszAddress, ulFlags):
        return _MAPICore.IAddrBook_CreateOneOff(self, lpszName, lpszAdrType, lpszAddress, ulFlags)

    def NewEntry(self, ulUIParam, ulFlags, cbEIDContainer, cbEIDNewEntryTpl):
        return _MAPICore.IAddrBook_NewEntry(self, ulUIParam, ulFlags, cbEIDContainer, cbEIDNewEntryTpl)

    def ResolveName(self, ulUIParam, ulFlags, lpszNewEntryTitle, INOUT):
        return _MAPICore.IAddrBook_ResolveName(self, ulUIParam, ulFlags, lpszNewEntryTitle, INOUT)

    def Details(self, lpulUIParam, lpfnDismiss, lpvDismissContext, cbEntryID, lpfButtonCallback, lpvButtonContext, lpszButtonText, ulFlags):
        return _MAPICore.IAddrBook_Details(self, lpulUIParam, lpfnDismiss, lpvDismissContext, cbEntryID, lpfButtonCallback, lpvButtonContext, lpszButtonText, ulFlags)

    def QueryDefaultRecipOpt(self, lpszAdrType, ulFlags, arg4):
        return _MAPICore.IAddrBook_QueryDefaultRecipOpt(self, lpszAdrType, ulFlags, arg4)

    def GetPAB(self):
        return _MAPICore.IAddrBook_GetPAB(self)

    def SetPAB(self, cbEntryID):
        return _MAPICore.IAddrBook_SetPAB(self, cbEntryID)

    def GetDefaultDir(self):
        return _MAPICore.IAddrBook_GetDefaultDir(self)

    def SetDefaultDir(self, cbEntryID):
        return _MAPICore.IAddrBook_SetDefaultDir(self, cbEntryID)

    def GetSearchPath(self, ulFlags):
        return _MAPICore.IAddrBook_GetSearchPath(self, ulFlags)

    def SetSearchPath(self, ulFlags, INPUT):
        return _MAPICore.IAddrBook_SetSearchPath(self, ulFlags, INPUT)
    __swig_destroy__ = _MAPICore.delete_IAddrBook

# Register IAddrBook in _MAPICore:
_MAPICore.IAddrBook_swigregister(IAddrBook)
MAPI_DEFAULT_SERVICES = _MAPICore.MAPI_DEFAULT_SERVICES
class IProfAdmin(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IProfAdmin_GetLastError(self, hResult, ulFlags)

    def GetProfileTable(self, ulFlags):
        return _MAPICore.IProfAdmin_GetProfileTable(self, ulFlags)

    def CreateProfile(self, lpszProfileName, lpszPassword, ulUIParam, ulFlags):
        return _MAPICore.IProfAdmin_CreateProfile(self, lpszProfileName, lpszPassword, ulUIParam, ulFlags)

    def DeleteProfile(self, lpszProfileName, ulFlags):
        return _MAPICore.IProfAdmin_DeleteProfile(self, lpszProfileName, ulFlags)

    def ChangeProfilePassword(self, lpszProfileName, lpszOldPassword, lpszNewPassword, ulFlags):
        return _MAPICore.IProfAdmin_ChangeProfilePassword(self, lpszProfileName, lpszOldPassword, lpszNewPassword, ulFlags)

    def CopyProfile(self, lpszOldProfileName, lpszOldPassword, lpszNewProfileName, ulUIParam, ulFlags):
        return _MAPICore.IProfAdmin_CopyProfile(self, lpszOldProfileName, lpszOldPassword, lpszNewProfileName, ulUIParam, ulFlags)

    def RenameProfile(self, lpszOldProfileName, lpszOldPassword, lpszNewProfileName, ulUIParam, ulFlags):
        return _MAPICore.IProfAdmin_RenameProfile(self, lpszOldProfileName, lpszOldPassword, lpszNewProfileName, ulUIParam, ulFlags)

    def SetDefaultProfile(self, lpszProfileName, ulFlags):
        return _MAPICore.IProfAdmin_SetDefaultProfile(self, lpszProfileName, ulFlags)

    def AdminServices(self, lpszProfileName, lpszPassword, ulUIParam, ulFlags):
        return _MAPICore.IProfAdmin_AdminServices(self, lpszProfileName, lpszPassword, ulUIParam, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IProfAdmin

# Register IProfAdmin in _MAPICore:
_MAPICore.IProfAdmin_swigregister(IProfAdmin)
SERVICE_DEFAULT_STORE = _MAPICore.SERVICE_DEFAULT_STORE
SERVICE_SINGLE_COPY = _MAPICore.SERVICE_SINGLE_COPY
SERVICE_CREATE_WITH_STORE = _MAPICore.SERVICE_CREATE_WITH_STORE
SERVICE_PRIMARY_IDENTITY = _MAPICore.SERVICE_PRIMARY_IDENTITY
SERVICE_NO_PRIMARY_IDENTITY = _MAPICore.SERVICE_NO_PRIMARY_IDENTITY
class IMsgServiceAdmin(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IMsgServiceAdmin_GetLastError(self, hResult, ulFlags)

    def GetMsgServiceTable(self, ulFlags):
        return _MAPICore.IMsgServiceAdmin_GetMsgServiceTable(self, ulFlags)

    def CreateMsgService(self, lpszService, lpszDisplayName, ulUIParam, ulFlags):
        return _MAPICore.IMsgServiceAdmin_CreateMsgService(self, lpszService, lpszDisplayName, ulUIParam, ulFlags)

    def DeleteMsgService(self, lpUID):
        return _MAPICore.IMsgServiceAdmin_DeleteMsgService(self, lpUID)

    def CopyMsgService(self, lpUID, lpszDisplayName, lpInterfaceToCopy, lpInterfaceDst, lpObjectDst, ulUIParam, ulFlags):
        return _MAPICore.IMsgServiceAdmin_CopyMsgService(self, lpUID, lpszDisplayName, lpInterfaceToCopy, lpInterfaceDst, lpObjectDst, ulUIParam, ulFlags)

    def RenameMsgService(self, lpUID, ulFlags, lpszDisplayName):
        return _MAPICore.IMsgServiceAdmin_RenameMsgService(self, lpUID, ulFlags, lpszDisplayName)

    def ConfigureMsgService(self, lpUID, ulUIParam, ulFlags, cValues):
        return _MAPICore.IMsgServiceAdmin_ConfigureMsgService(self, lpUID, ulUIParam, ulFlags, cValues)

    def OpenProfileSection(self, lpUID, lpInterface, ulFlags):
        return _MAPICore.IMsgServiceAdmin_OpenProfileSection(self, lpUID, lpInterface, ulFlags)

    def MsgServiceTransportOrder(self, cUID, lpUIDList, ulFlags):
        return _MAPICore.IMsgServiceAdmin_MsgServiceTransportOrder(self, cUID, lpUIDList, ulFlags)

    def AdminProviders(self, lpUID, ulFlags):
        return _MAPICore.IMsgServiceAdmin_AdminProviders(self, lpUID, ulFlags)

    def SetPrimaryIdentity(self, lpUID, ulFlags):
        return _MAPICore.IMsgServiceAdmin_SetPrimaryIdentity(self, lpUID, ulFlags)

    def GetProviderTable(self, ulFlags):
        return _MAPICore.IMsgServiceAdmin_GetProviderTable(self, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IMsgServiceAdmin

# Register IMsgServiceAdmin in _MAPICore:
_MAPICore.IMsgServiceAdmin_swigregister(IMsgServiceAdmin)

def kc_session_save(ses):
    return _MAPICore.kc_session_save(ses)

def kc_session_restore(a):
    return _MAPICore.kc_session_restore(a)

def ec_log(level, msg):
    return _MAPICore.ec_log(level, msg)
MAPI_E_CALL_FAILED = _MAPICore.MAPI_E_CALL_FAILED
MAPI_E_NOT_ENOUGH_MEMORY = _MAPICore.MAPI_E_NOT_ENOUGH_MEMORY
MAPI_E_INVALID_PARAMETER = _MAPICore.MAPI_E_INVALID_PARAMETER
MAPI_E_INTERFACE_NOT_SUPPORTED = _MAPICore.MAPI_E_INTERFACE_NOT_SUPPORTED
MAPI_E_NO_ACCESS = _MAPICore.MAPI_E_NO_ACCESS
MAPI_E_NO_SUPPORT = _MAPICore.MAPI_E_NO_SUPPORT
MAPI_E_BAD_CHARWIDTH = _MAPICore.MAPI_E_BAD_CHARWIDTH
MAPI_E_STRING_TOO_LONG = _MAPICore.MAPI_E_STRING_TOO_LONG
MAPI_E_UNKNOWN_FLAGS = _MAPICore.MAPI_E_UNKNOWN_FLAGS
MAPI_E_INVALID_ENTRYID = _MAPICore.MAPI_E_INVALID_ENTRYID
MAPI_E_INVALID_OBJECT = _MAPICore.MAPI_E_INVALID_OBJECT
MAPI_E_OBJECT_CHANGED = _MAPICore.MAPI_E_OBJECT_CHANGED
MAPI_E_OBJECT_DELETED = _MAPICore.MAPI_E_OBJECT_DELETED
MAPI_E_BUSY = _MAPICore.MAPI_E_BUSY
MAPI_E_NOT_ENOUGH_DISK = _MAPICore.MAPI_E_NOT_ENOUGH_DISK
MAPI_E_NOT_ENOUGH_RESOURCES = _MAPICore.MAPI_E_NOT_ENOUGH_RESOURCES
MAPI_E_NOT_FOUND = _MAPICore.MAPI_E_NOT_FOUND
MAPI_E_VERSION = _MAPICore.MAPI_E_VERSION
MAPI_E_LOGON_FAILED = _MAPICore.MAPI_E_LOGON_FAILED
MAPI_E_SESSION_LIMIT = _MAPICore.MAPI_E_SESSION_LIMIT
MAPI_E_USER_CANCEL = _MAPICore.MAPI_E_USER_CANCEL
MAPI_E_UNABLE_TO_ABORT = _MAPICore.MAPI_E_UNABLE_TO_ABORT
MAPI_E_NETWORK_ERROR = _MAPICore.MAPI_E_NETWORK_ERROR
MAPI_E_DISK_ERROR = _MAPICore.MAPI_E_DISK_ERROR
MAPI_E_TOO_COMPLEX = _MAPICore.MAPI_E_TOO_COMPLEX
MAPI_E_BAD_COLUMN = _MAPICore.MAPI_E_BAD_COLUMN
MAPI_E_EXTENDED_ERROR = _MAPICore.MAPI_E_EXTENDED_ERROR
MAPI_E_COMPUTED = _MAPICore.MAPI_E_COMPUTED
MAPI_E_CORRUPT_DATA = _MAPICore.MAPI_E_CORRUPT_DATA
MAPI_E_UNCONFIGURED = _MAPICore.MAPI_E_UNCONFIGURED
MAPI_E_FAILONEPROVIDER = _MAPICore.MAPI_E_FAILONEPROVIDER
MAPI_E_UNKNOWN_CPID = _MAPICore.MAPI_E_UNKNOWN_CPID
MAPI_E_UNKNOWN_LCID = _MAPICore.MAPI_E_UNKNOWN_LCID
MAPI_E_PASSWORD_CHANGE_REQUIRED = _MAPICore.MAPI_E_PASSWORD_CHANGE_REQUIRED
MAPI_E_PASSWORD_EXPIRED = _MAPICore.MAPI_E_PASSWORD_EXPIRED
MAPI_E_INVALID_WORKSTATION_ACCOUNT = _MAPICore.MAPI_E_INVALID_WORKSTATION_ACCOUNT
MAPI_E_INVALID_ACCESS_TIME = _MAPICore.MAPI_E_INVALID_ACCESS_TIME
MAPI_E_ACCOUNT_DISABLED = _MAPICore.MAPI_E_ACCOUNT_DISABLED
MAPI_E_END_OF_SESSION = _MAPICore.MAPI_E_END_OF_SESSION
MAPI_E_UNKNOWN_ENTRYID = _MAPICore.MAPI_E_UNKNOWN_ENTRYID
MAPI_E_MISSING_REQUIRED_COLUMN = _MAPICore.MAPI_E_MISSING_REQUIRED_COLUMN
MAPI_W_NO_SERVICE = _MAPICore.MAPI_W_NO_SERVICE
MAPI_E_BAD_VALUE = _MAPICore.MAPI_E_BAD_VALUE
MAPI_E_INVALID_TYPE = _MAPICore.MAPI_E_INVALID_TYPE
MAPI_E_TYPE_NO_SUPPORT = _MAPICore.MAPI_E_TYPE_NO_SUPPORT
MAPI_E_UNEXPECTED_TYPE = _MAPICore.MAPI_E_UNEXPECTED_TYPE
MAPI_E_TOO_BIG = _MAPICore.MAPI_E_TOO_BIG
MAPI_E_DECLINE_COPY = _MAPICore.MAPI_E_DECLINE_COPY
MAPI_E_UNEXPECTED_ID = _MAPICore.MAPI_E_UNEXPECTED_ID
MAPI_W_ERRORS_RETURNED = _MAPICore.MAPI_W_ERRORS_RETURNED
MAPI_E_UNABLE_TO_COMPLETE = _MAPICore.MAPI_E_UNABLE_TO_COMPLETE
MAPI_E_TIMEOUT = _MAPICore.MAPI_E_TIMEOUT
MAPI_E_TABLE_EMPTY = _MAPICore.MAPI_E_TABLE_EMPTY
MAPI_E_TABLE_TOO_BIG = _MAPICore.MAPI_E_TABLE_TOO_BIG
MAPI_E_INVALID_BOOKMARK = _MAPICore.MAPI_E_INVALID_BOOKMARK
MAPI_W_POSITION_CHANGED = _MAPICore.MAPI_W_POSITION_CHANGED
MAPI_W_APPROX_COUNT = _MAPICore.MAPI_W_APPROX_COUNT
MAPI_E_WAIT = _MAPICore.MAPI_E_WAIT
MAPI_E_CANCEL = _MAPICore.MAPI_E_CANCEL
MAPI_E_NOT_ME = _MAPICore.MAPI_E_NOT_ME
MAPI_W_CANCEL_MESSAGE = _MAPICore.MAPI_W_CANCEL_MESSAGE
MAPI_E_CORRUPT_STORE = _MAPICore.MAPI_E_CORRUPT_STORE
MAPI_E_NOT_IN_QUEUE = _MAPICore.MAPI_E_NOT_IN_QUEUE
MAPI_E_NO_SUPPRESS = _MAPICore.MAPI_E_NO_SUPPRESS
MAPI_E_COLLISION = _MAPICore.MAPI_E_COLLISION
MAPI_E_NOT_INITIALIZED = _MAPICore.MAPI_E_NOT_INITIALIZED
MAPI_E_NON_STANDARD = _MAPICore.MAPI_E_NON_STANDARD
MAPI_E_NO_RECIPIENTS = _MAPICore.MAPI_E_NO_RECIPIENTS
MAPI_E_SUBMITTED = _MAPICore.MAPI_E_SUBMITTED
MAPI_E_HAS_FOLDERS = _MAPICore.MAPI_E_HAS_FOLDERS
MAPI_E_HAS_MESSAGES = _MAPICore.MAPI_E_HAS_MESSAGES
MAPI_E_FOLDER_CYCLE = _MAPICore.MAPI_E_FOLDER_CYCLE
MAPI_W_PARTIAL_COMPLETION = _MAPICore.MAPI_W_PARTIAL_COMPLETION
MAPI_E_AMBIGUOUS_RECIP = _MAPICore.MAPI_E_AMBIGUOUS_RECIP
MAPI_E_STORE_FULL = _MAPICore.MAPI_E_STORE_FULL
class MAPINotifSink(IMAPIAdviseSink):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def GetNotifications(self, fNonBlock, timeout_msec):
        return _MAPICore.MAPINotifSink_GetNotifications(self, fNonBlock, timeout_msec)

    def __init__(self):
        _MAPICore.MAPINotifSink_swiginit(self, _MAPICore.new_MAPINotifSink())
    __swig_destroy__ = _MAPICore.delete_MAPINotifSink

# Register MAPINotifSink in _MAPICore:
_MAPICore.MAPINotifSink_swigregister(MAPINotifSink)

def WrapStoreEntryID(ulFlags, lpszDLLName, cbOrigEntry):
    return _MAPICore.WrapStoreEntryID(ulFlags, lpszDLLName, cbOrigEntry)

def WrapCompressedRTFStream(lpCompressedRTFStream, ulFlags):
    return _MAPICore.WrapCompressedRTFStream(lpCompressedRTFStream, ulFlags)

def TestRestriction(lpRestriction, lpMessage):
    return _MAPICore.TestRestriction(lpRestriction, lpMessage)
class IExchangeImportContentsChanges(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IExchangeImportContentsChanges_GetLastError(self, hResult, ulFlags)

    def Config(self, lpStream, ulFlags):
        return _MAPICore.IExchangeImportContentsChanges_Config(self, lpStream, ulFlags)

    def UpdateState(self, lpStream):
        return _MAPICore.IExchangeImportContentsChanges_UpdateState(self, lpStream)

    def ImportMessageChange(self, cValues, ulFlags):
        return _MAPICore.IExchangeImportContentsChanges_ImportMessageChange(self, cValues, ulFlags)

    def ImportMessageDeletion(self, ulFlags, lpSourceEntryList):
        return _MAPICore.IExchangeImportContentsChanges_ImportMessageDeletion(self, ulFlags, lpSourceEntryList)

    def ImportPerUserReadStateChange(self, cElements):
        return _MAPICore.IExchangeImportContentsChanges_ImportPerUserReadStateChange(self, cElements)

    def ImportMessageMove(self, cbSourceKeySrcFolder, pbSourceKeySrcFolder, cbSourceKeySrcMessage, pbSourceKeySrcMessage, cbPCLMessage, pbPCLMessage, cbSourceKeyDestMessage, pbSourceKeyDestMessage, cbChangeNumDestMessage, pbChangeNumDestMessage):
        return _MAPICore.IExchangeImportContentsChanges_ImportMessageMove(self, cbSourceKeySrcFolder, pbSourceKeySrcFolder, cbSourceKeySrcMessage, pbSourceKeySrcMessage, cbPCLMessage, pbPCLMessage, cbSourceKeyDestMessage, pbSourceKeyDestMessage, cbChangeNumDestMessage, pbChangeNumDestMessage)
    __swig_destroy__ = _MAPICore.delete_IExchangeImportContentsChanges

# Register IExchangeImportContentsChanges in _MAPICore:
_MAPICore.IExchangeImportContentsChanges_swigregister(IExchangeImportContentsChanges)
class IExchangeImportHierarchyChanges(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IExchangeImportHierarchyChanges_GetLastError(self, hResult, ulFlags)

    def Config(self, lpStream, ulFlags):
        return _MAPICore.IExchangeImportHierarchyChanges_Config(self, lpStream, ulFlags)

    def UpdateState(self, lpStream):
        return _MAPICore.IExchangeImportHierarchyChanges_UpdateState(self, lpStream)

    def ImportFolderChange(self, cValues):
        return _MAPICore.IExchangeImportHierarchyChanges_ImportFolderChange(self, cValues)

    def ImportFolderDeletion(self, ulFlags, lpSrcEntryList):
        return _MAPICore.IExchangeImportHierarchyChanges_ImportFolderDeletion(self, ulFlags, lpSrcEntryList)
    __swig_destroy__ = _MAPICore.delete_IExchangeImportHierarchyChanges

# Register IExchangeImportHierarchyChanges in _MAPICore:
_MAPICore.IExchangeImportHierarchyChanges_swigregister(IExchangeImportHierarchyChanges)
class IExchangeExportChanges(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IExchangeExportChanges_GetLastError(self, hResult, ulFlags)

    def Config(self, lpStream, ulFlags, lpUnk, lpRestriction, lpIncludeProps, lpExcludeProps, ulBufferSize):
        return _MAPICore.IExchangeExportChanges_Config(self, lpStream, ulFlags, lpUnk, lpRestriction, lpIncludeProps, lpExcludeProps, ulBufferSize)

    def Synchronize(self, INOUT):
        return _MAPICore.IExchangeExportChanges_Synchronize(self, INOUT)

    def UpdateState(self, lpStream):
        return _MAPICore.IExchangeExportChanges_UpdateState(self, lpStream)
    __swig_destroy__ = _MAPICore.delete_IExchangeExportChanges

# Register IExchangeExportChanges in _MAPICore:
_MAPICore.IExchangeExportChanges_swigregister(IExchangeExportChanges)
class IECExportAddressbookChanges(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def Config(self, lpStream, ulFlags, lpUnk):
        return _MAPICore.IECExportAddressbookChanges_Config(self, lpStream, ulFlags, lpUnk)

    def Synchronize(self, INOUT):
        return _MAPICore.IECExportAddressbookChanges_Synchronize(self, INOUT)

    def UpdateState(self, lpStream):
        return _MAPICore.IECExportAddressbookChanges_UpdateState(self, lpStream)
    __swig_destroy__ = _MAPICore.delete_IECExportAddressbookChanges

# Register IECExportAddressbookChanges in _MAPICore:
_MAPICore.IECExportAddressbookChanges_swigregister(IECExportAddressbookChanges)
class IExchangeManageStore(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def CreateStoreEntryID(self, lpszMsgStoreDN, lpszMailboxDN, ulFlags):
        return _MAPICore.IExchangeManageStore_CreateStoreEntryID(self, lpszMsgStoreDN, lpszMailboxDN, ulFlags)

    def EntryIDFromSourceKey(self, cFolderKeySize, cMessageKeySize):
        return _MAPICore.IExchangeManageStore_EntryIDFromSourceKey(self, cFolderKeySize, cMessageKeySize)

    def GetRights(self, cbUserEntryID, cbEntryID):
        return _MAPICore.IExchangeManageStore_GetRights(self, cbUserEntryID, cbEntryID)

    def GetMailboxTable(self, lpszServerName, ulFlags):
        return _MAPICore.IExchangeManageStore_GetMailboxTable(self, lpszServerName, ulFlags)

    def GetPublicFolderTable(self, lpszServerName, ulFlags):
        return _MAPICore.IExchangeManageStore_GetPublicFolderTable(self, lpszServerName, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IExchangeManageStore

# Register IExchangeManageStore in _MAPICore:
_MAPICore.IExchangeManageStore_swigregister(IExchangeManageStore)
class IExchangeModifyTable(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags):
        return _MAPICore.IExchangeModifyTable_GetLastError(self, hResult, ulFlags)

    def GetTable(self, ulFlags):
        return _MAPICore.IExchangeModifyTable_GetTable(self, ulFlags)

    def ModifyTable(self, ulFlags, lpMods):
        return _MAPICore.IExchangeModifyTable_ModifyTable(self, ulFlags, lpMods)
    __swig_destroy__ = _MAPICore.delete_IExchangeModifyTable

# Register IExchangeModifyTable in _MAPICore:
_MAPICore.IExchangeModifyTable_swigregister(IExchangeModifyTable)
class ExchangeImportContentsChanges(IExchangeImportContentsChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == ExchangeImportContentsChanges:
            _self = None
        else:
            _self = self
        _MAPICore.ExchangeImportContentsChanges_swiginit(self, _MAPICore.new_ExchangeImportContentsChanges(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_ExchangeImportContentsChanges
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_ExchangeImportContentsChanges(self)
        return weakref.proxy(self)

# Register ExchangeImportContentsChanges in _MAPICore:
_MAPICore.ExchangeImportContentsChanges_swigregister(ExchangeImportContentsChanges)
class ExchangeImportHierarchyChanges(IExchangeImportHierarchyChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == ExchangeImportHierarchyChanges:
            _self = None
        else:
            _self = self
        _MAPICore.ExchangeImportHierarchyChanges_swiginit(self, _MAPICore.new_ExchangeImportHierarchyChanges(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_ExchangeImportHierarchyChanges
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_ExchangeImportHierarchyChanges(self)
        return weakref.proxy(self)

# Register ExchangeImportHierarchyChanges in _MAPICore:
_MAPICore.ExchangeImportHierarchyChanges_swigregister(ExchangeImportHierarchyChanges)
class ExchangeExportChanges(IExchangeExportChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == ExchangeExportChanges:
            _self = None
        else:
            _self = self
        _MAPICore.ExchangeExportChanges_swiginit(self, _MAPICore.new_ExchangeExportChanges(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_ExchangeExportChanges
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_ExchangeExportChanges(self)
        return weakref.proxy(self)

# Register ExchangeExportChanges in _MAPICore:
_MAPICore.ExchangeExportChanges_swigregister(ExchangeExportChanges)
SYNC_UNICODE = _MAPICore.SYNC_UNICODE
SYNC_NO_DELETIONS = _MAPICore.SYNC_NO_DELETIONS
SYNC_NO_SOFT_DELETIONS = _MAPICore.SYNC_NO_SOFT_DELETIONS
SYNC_READ_STATE = _MAPICore.SYNC_READ_STATE
SYNC_ASSOCIATED = _MAPICore.SYNC_ASSOCIATED
SYNC_NORMAL = _MAPICore.SYNC_NORMAL
SYNC_NO_CONFLICTS = _MAPICore.SYNC_NO_CONFLICTS
SYNC_ONLY_SPECIFIED_PROPS = _MAPICore.SYNC_ONLY_SPECIFIED_PROPS
SYNC_NO_FOREIGN_KEYS = _MAPICore.SYNC_NO_FOREIGN_KEYS
SYNC_LIMITED_IMESSAGE = _MAPICore.SYNC_LIMITED_IMESSAGE
SYNC_CATCHUP = _MAPICore.SYNC_CATCHUP
SYNC_NEW_MESSAGE = _MAPICore.SYNC_NEW_MESSAGE
SYNC_MSG_SELECTIVE = _MAPICore.SYNC_MSG_SELECTIVE
SYNC_BEST_BODY = _MAPICore.SYNC_BEST_BODY
SYNC_IGNORE_SPECIFIED_ON_ASSOCIATED = _MAPICore.SYNC_IGNORE_SPECIFIED_ON_ASSOCIATED
SYNC_PROGRESS_MODE = _MAPICore.SYNC_PROGRESS_MODE
SYNC_FXRECOVERMODE = _MAPICore.SYNC_FXRECOVERMODE
SYNC_DEFER_CONFIG = _MAPICore.SYNC_DEFER_CONFIG
SYNC_FORCE_UNICODE = _MAPICore.SYNC_FORCE_UNICODE
DELETE_HARD_DELETE = _MAPICore.DELETE_HARD_DELETE
ROWLIST_REPLACE = _MAPICore.ROWLIST_REPLACE
ROW_ADD = _MAPICore.ROW_ADD
ROW_MODIFY = _MAPICore.ROW_MODIFY
ROW_REMOVE = _MAPICore.ROW_REMOVE
ROW_EMPTY = _MAPICore.ROW_EMPTY
SYNC_E_UNKNOWN_FLAGS = _MAPICore.SYNC_E_UNKNOWN_FLAGS
SYNC_E_INVALID_PARAMETER = _MAPICore.SYNC_E_INVALID_PARAMETER
SYNC_E_ERROR = _MAPICore.SYNC_E_ERROR
SYNC_E_OBJECT_DELETED = _MAPICore.SYNC_E_OBJECT_DELETED
SYNC_E_IGNORE = _MAPICore.SYNC_E_IGNORE
SYNC_E_CONFLICT = _MAPICore.SYNC_E_CONFLICT
SYNC_E_NO_PARENT = _MAPICore.SYNC_E_NO_PARENT
SYNC_E_INCEST = _MAPICore.SYNC_E_INCEST
SYNC_E_UNSYNCHRONIZED = _MAPICore.SYNC_E_UNSYNCHRONIZED
SYNC_W_PROGRESS = _MAPICore.SYNC_W_PROGRESS
SYNC_W_CLIENT_CHANGE_NEWER = _MAPICore.SYNC_W_CLIENT_CHANGE_NEWER
ECSTORE_TYPE_PRIVATE = _MAPICore.ECSTORE_TYPE_PRIVATE
ECSTORE_TYPE_PUBLIC = _MAPICore.ECSTORE_TYPE_PUBLIC
ECSTORE_TYPE_ARCHIVE = _MAPICore.ECSTORE_TYPE_ARCHIVE
class IECServiceAdmin(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def CreateStore(self, ulStoreType, cbUserId):
        return _MAPICore.IECServiceAdmin_CreateStore(self, ulStoreType, cbUserId)

    def CreateEmptyStore(self, ulStoreType, cbUserId, ulFlags, lpcbStoreId_oio, lpcbRootId_oio):
        return _MAPICore.IECServiceAdmin_CreateEmptyStore(self, ulStoreType, cbUserId, ulFlags, lpcbStoreId_oio, lpcbRootId_oio)

    def HookStore(self, ulStoreType, cbUserId, lpGuid):
        return _MAPICore.IECServiceAdmin_HookStore(self, ulStoreType, cbUserId, lpGuid)

    def UnhookStore(self, ulStoreType, cbUserId):
        return _MAPICore.IECServiceAdmin_UnhookStore(self, ulStoreType, cbUserId)

    def RemoveStore(self, lpGuid):
        return _MAPICore.IECServiceAdmin_RemoveStore(self, lpGuid)

    def CreateUser(self, lpECUser, ulFlags):
        return _MAPICore.IECServiceAdmin_CreateUser(self, lpECUser, ulFlags)

    def DeleteUser(self, cbUserId):
        return _MAPICore.IECServiceAdmin_DeleteUser(self, cbUserId)

    def SetUser(self, lpECUser, ulFlags):
        return _MAPICore.IECServiceAdmin_SetUser(self, lpECUser, ulFlags)

    def GetUser(self, cbUserId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetUser(self, cbUserId, ulFlags)

    def ResolveUserName(self, lpszUserName, ulFlags):
        return _MAPICore.IECServiceAdmin_ResolveUserName(self, lpszUserName, ulFlags)

    def GetUserList(self, cbCompanyId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetUserList(self, cbCompanyId, ulFlags)

    def GetSendAsList(self, cbUserId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetSendAsList(self, cbUserId, ulFlags)

    def AddSendAsUser(self, cbUserId, cbSenderId):
        return _MAPICore.IECServiceAdmin_AddSendAsUser(self, cbUserId, cbSenderId)

    def DelSendAsUser(self, cbUserId, cbSenderId):
        return _MAPICore.IECServiceAdmin_DelSendAsUser(self, cbUserId, cbSenderId)

    def CreateGroup(self, lpECGroup, ulFlags):
        return _MAPICore.IECServiceAdmin_CreateGroup(self, lpECGroup, ulFlags)

    def DeleteGroup(self, cbGroupId):
        return _MAPICore.IECServiceAdmin_DeleteGroup(self, cbGroupId)

    def SetGroup(self, lpECGroup, ulFlags):
        return _MAPICore.IECServiceAdmin_SetGroup(self, lpECGroup, ulFlags)

    def GetGroup(self, cbGroupId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetGroup(self, cbGroupId, ulFlags)

    def ResolveGroupName(self, lpszGroupName, ulFlags):
        return _MAPICore.IECServiceAdmin_ResolveGroupName(self, lpszGroupName, ulFlags)

    def GetGroupList(self, cbCompanyId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetGroupList(self, cbCompanyId, ulFlags)

    def DeleteGroupUser(self, cbGroupId, cbUserId):
        return _MAPICore.IECServiceAdmin_DeleteGroupUser(self, cbGroupId, cbUserId)

    def AddGroupUser(self, cbGroupId, cbUserId):
        return _MAPICore.IECServiceAdmin_AddGroupUser(self, cbGroupId, cbUserId)

    def GetUserListOfGroup(self, cbGroupId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetUserListOfGroup(self, cbGroupId, ulFlags)

    def GetGroupListOfUser(self, cbUserId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetGroupListOfUser(self, cbUserId, ulFlags)

    def CreateCompany(self, lpECCompany, ulFlags):
        return _MAPICore.IECServiceAdmin_CreateCompany(self, lpECCompany, ulFlags)

    def DeleteCompany(self, cbCompanyId):
        return _MAPICore.IECServiceAdmin_DeleteCompany(self, cbCompanyId)

    def SetCompany(self, lpECCompany, ulFlags):
        return _MAPICore.IECServiceAdmin_SetCompany(self, lpECCompany, ulFlags)

    def GetCompany(self, cbCompanyId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetCompany(self, cbCompanyId, ulFlags)

    def ResolveCompanyName(self, lpszCompanyName, ulFlags):
        return _MAPICore.IECServiceAdmin_ResolveCompanyName(self, lpszCompanyName, ulFlags)

    def GetCompanyList(self, ulFlags):
        return _MAPICore.IECServiceAdmin_GetCompanyList(self, ulFlags)

    def AddCompanyToRemoteViewList(self, cbSetCompanyId, cbCompanyId):
        return _MAPICore.IECServiceAdmin_AddCompanyToRemoteViewList(self, cbSetCompanyId, cbCompanyId)

    def DelCompanyFromRemoteViewList(self, cbSetCompanyId, cbCompanyId):
        return _MAPICore.IECServiceAdmin_DelCompanyFromRemoteViewList(self, cbSetCompanyId, cbCompanyId)

    def GetRemoteViewList(self, cbCompanyId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetRemoteViewList(self, cbCompanyId, ulFlags)

    def AddUserToRemoteAdminList(self, cbUserId, cbCompanyId):
        return _MAPICore.IECServiceAdmin_AddUserToRemoteAdminList(self, cbUserId, cbCompanyId)

    def DelUserFromRemoteAdminList(self, cbUserId, cbCompanyId):
        return _MAPICore.IECServiceAdmin_DelUserFromRemoteAdminList(self, cbUserId, cbCompanyId)

    def GetRemoteAdminList(self, cbCompanyId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetRemoteAdminList(self, cbCompanyId, ulFlags)

    def SyncUsers(self, cbCompanyId):
        return _MAPICore.IECServiceAdmin_SyncUsers(self, cbCompanyId)

    def GetQuota(self, cbUserId, bGetUserDefault):
        return _MAPICore.IECServiceAdmin_GetQuota(self, cbUserId, bGetUserDefault)

    def SetQuota(self, cbUserId, lpsQuota):
        return _MAPICore.IECServiceAdmin_SetQuota(self, cbUserId, lpsQuota)

    def AddQuotaRecipient(self, cbCompanyId, cbRecipientId, ulType):
        return _MAPICore.IECServiceAdmin_AddQuotaRecipient(self, cbCompanyId, cbRecipientId, ulType)

    def DeleteQuotaRecipient(self, cbCompanyId, cbRecipientId, ulType):
        return _MAPICore.IECServiceAdmin_DeleteQuotaRecipient(self, cbCompanyId, cbRecipientId, ulType)

    def GetQuotaRecipients(self, cbUserId, ulFlags):
        return _MAPICore.IECServiceAdmin_GetQuotaRecipients(self, cbUserId, ulFlags)

    def GetQuotaStatus(self, cbUserId):
        return _MAPICore.IECServiceAdmin_GetQuotaStatus(self, cbUserId)

    def PurgeSoftDelete(self, ulDays):
        return _MAPICore.IECServiceAdmin_PurgeSoftDelete(self, ulDays)

    def PurgeCache(self, ulFlags):
        return _MAPICore.IECServiceAdmin_PurgeCache(self, ulFlags)

    def PurgeDeferredUpdates(self):
        return _MAPICore.IECServiceAdmin_PurgeDeferredUpdates(self)

    def OpenUserStoresTable(self, ulFlags):
        return _MAPICore.IECServiceAdmin_OpenUserStoresTable(self, ulFlags)

    def GetServerDetails(self, lpServerNameList, ulFlags):
        return _MAPICore.IECServiceAdmin_GetServerDetails(self, lpServerNameList, ulFlags)

    def ResolvePseudoUrl(self, url):
        return _MAPICore.IECServiceAdmin_ResolvePseudoUrl(self, url)

    def GetArchiveStoreEntryID(self, lpszUserName, lpszServerName, ulFlags):
        return _MAPICore.IECServiceAdmin_GetArchiveStoreEntryID(self, lpszUserName, lpszServerName, ulFlags)

    def ResetFolderCount(self, cbEntryID):
        return _MAPICore.IECServiceAdmin_ResetFolderCount(self, cbEntryID)
    __swig_destroy__ = _MAPICore.delete_IECServiceAdmin

# Register IECServiceAdmin in _MAPICore:
_MAPICore.IECServiceAdmin_swigregister(IECServiceAdmin)
class IECSpooler(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetMasterOutgoingTable(self, ulFlags):
        return _MAPICore.IECSpooler_GetMasterOutgoingTable(self, ulFlags)

    def DeleteFromMasterOutgoingTable(self, cbEntryID, ulFlags):
        return _MAPICore.IECSpooler_DeleteFromMasterOutgoingTable(self, cbEntryID, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IECSpooler

# Register IECSpooler in _MAPICore:
_MAPICore.IECSpooler_swigregister(IECSpooler)
class IECTestProtocol(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def TestPerform(self, cmd, argc):
        return _MAPICore.IECTestProtocol_TestPerform(self, cmd, argc)

    def TestSet(self, name, value):
        return _MAPICore.IECTestProtocol_TestSet(self, name, value)

    def TestGet(self, name):
        return _MAPICore.IECTestProtocol_TestGet(self, name)
    __swig_destroy__ = _MAPICore.delete_IECTestProtocol

# Register IECTestProtocol in _MAPICore:
_MAPICore.IECTestProtocol_swigregister(IECTestProtocol)
class IECExportChanges(IExchangeExportChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetChangeCount(self):
        return _MAPICore.IECExportChanges_GetChangeCount(self)
    __swig_destroy__ = _MAPICore.delete_IECExportChanges

# Register IECExportChanges in _MAPICore:
_MAPICore.IECExportChanges_swigregister(IECExportChanges)

def UnwrapObject(lpWrapped):
    return _MAPICore.UnwrapObject(lpWrapped)
class IECChangeAdvisor(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hResult, ulFlags, lppMAPIError):
        return _MAPICore.IECChangeAdvisor_GetLastError(self, hResult, ulFlags, lppMAPIError)

    def Config(self, lpStream, lpGUID, lpAdviseSink, ulFlags):
        return _MAPICore.IECChangeAdvisor_Config(self, lpStream, lpGUID, lpAdviseSink, ulFlags)

    def UpdateState(self, lpStream):
        return _MAPICore.IECChangeAdvisor_UpdateState(self, lpStream)

    def AddKeys(self, lpEntryList):
        return _MAPICore.IECChangeAdvisor_AddKeys(self, lpEntryList)

    def UpdateSyncState(self, ulSyncId, ulChangeId):
        return _MAPICore.IECChangeAdvisor_UpdateSyncState(self, ulSyncId, ulChangeId)
    __swig_destroy__ = _MAPICore.delete_IECChangeAdvisor

# Register IECChangeAdvisor in _MAPICore:
_MAPICore.IECChangeAdvisor_swigregister(IECChangeAdvisor)
class IECChangeAdviseSink(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def OnNotify(self, ulFlags, lpEntryList):
        return _MAPICore.IECChangeAdviseSink_OnNotify(self, ulFlags, lpEntryList)
    __swig_destroy__ = _MAPICore.delete_IECChangeAdviseSink

# Register IECChangeAdviseSink in _MAPICore:
_MAPICore.IECChangeAdviseSink_swigregister(IECChangeAdviseSink)
class IECImportContentsChanges(IExchangeImportContentsChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def ImportMessageChangeAsAStream(self, cValues, ulFlags):
        return _MAPICore.IECImportContentsChanges_ImportMessageChangeAsAStream(self, cValues, ulFlags)
    __swig_destroy__ = _MAPICore.delete_IECImportContentsChanges

# Register IECImportContentsChanges in _MAPICore:
_MAPICore.IECImportContentsChanges_swigregister(IECImportContentsChanges)
class IECImportAddressbookChanges(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetLastError(self, hr, ulFlags, lppMAPIError):
        return _MAPICore.IECImportAddressbookChanges_GetLastError(self, hr, ulFlags, lppMAPIError)

    def Config(self, lpStream, ulFlags):
        return _MAPICore.IECImportAddressbookChanges_Config(self, lpStream, ulFlags)

    def UpdateState(self, lpStream):
        return _MAPICore.IECImportAddressbookChanges_UpdateState(self, lpStream)

    def ImportABChange(self, type, cbEntryID):
        return _MAPICore.IECImportAddressbookChanges_ImportABChange(self, type, cbEntryID)

    def ImportABDeletion(self, type, cbEntryID):
        return _MAPICore.IECImportAddressbookChanges_ImportABDeletion(self, type, cbEntryID)
    __swig_destroy__ = _MAPICore.delete_IECImportAddressbookChanges

# Register IECImportAddressbookChanges in _MAPICore:
_MAPICore.IECImportAddressbookChanges_swigregister(IECImportAddressbookChanges)
class IECImportHierarchyChanges(IExchangeImportHierarchyChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def ImportFolderChangeEx(self, cValues, fNew):
        return _MAPICore.IECImportHierarchyChanges_ImportFolderChangeEx(self, cValues, fNew)
    __swig_destroy__ = _MAPICore.delete_IECImportHierarchyChanges

# Register IECImportHierarchyChanges in _MAPICore:
_MAPICore.IECImportHierarchyChanges_swigregister(IECImportHierarchyChanges)
class IECSingleInstance(IUnknown):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def GetSingleInstanceId(self):
        return _MAPICore.IECSingleInstance_GetSingleInstanceId(self)

    def SetSingleInstanceId(self, eid_size, eid):
        return _MAPICore.IECSingleInstance_SetSingleInstanceId(self, eid_size, eid)
    __swig_destroy__ = _MAPICore.delete_IECSingleInstance

# Register IECSingleInstance in _MAPICore:
_MAPICore.IECSingleInstance_swigregister(IECSingleInstance)
class ECChangeAdviseSink(IECChangeAdviseSink):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == ECChangeAdviseSink:
            _self = None
        else:
            _self = self
        _MAPICore.ECChangeAdviseSink_swiginit(self, _MAPICore.new_ECChangeAdviseSink(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_ECChangeAdviseSink
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_ECChangeAdviseSink(self)
        return weakref.proxy(self)

# Register ECChangeAdviseSink in _MAPICore:
_MAPICore.ECChangeAdviseSink_swigregister(ECChangeAdviseSink)
class ECImportContentsChanges(IECImportContentsChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == ECImportContentsChanges:
            _self = None
        else:
            _self = self
        _MAPICore.ECImportContentsChanges_swiginit(self, _MAPICore.new_ECImportContentsChanges(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_ECImportContentsChanges
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_ECImportContentsChanges(self)
        return weakref.proxy(self)

# Register ECImportContentsChanges in _MAPICore:
_MAPICore.ECImportContentsChanges_swigregister(ECImportContentsChanges)
class ECImportHierarchyChanges(IECImportHierarchyChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == ECImportHierarchyChanges:
            _self = None
        else:
            _self = self
        _MAPICore.ECImportHierarchyChanges_swiginit(self, _MAPICore.new_ECImportHierarchyChanges(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_ECImportHierarchyChanges
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_ECImportHierarchyChanges(self)
        return weakref.proxy(self)

# Register ECImportHierarchyChanges in _MAPICore:
_MAPICore.ECImportHierarchyChanges_swigregister(ECImportHierarchyChanges)
class ECImportAddressbookChanges(IECImportAddressbookChanges):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == ECImportAddressbookChanges:
            _self = None
        else:
            _self = self
        _MAPICore.ECImportAddressbookChanges_swiginit(self, _MAPICore.new_ECImportAddressbookChanges(_self, cInterfaces))
    __swig_destroy__ = _MAPICore.delete_ECImportAddressbookChanges
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_ECImportAddressbookChanges(self)
        return weakref.proxy(self)

# Register ECImportAddressbookChanges in _MAPICore:
_MAPICore.ECImportAddressbookChanges_swigregister(ECImportAddressbookChanges)
MAPI_ORIG = _MAPICore.MAPI_ORIG
MAPI_TO = _MAPICore.MAPI_TO
MAPI_CC = _MAPICore.MAPI_CC
MAPI_BCC = _MAPICore.MAPI_BCC
MAPI_P1 = _MAPICore.MAPI_P1
MAPI_SUBMITTED = _MAPICore.MAPI_SUBMITTED
MAPI_UNREAD = _MAPICore.MAPI_UNREAD
MAPI_RECEIPT_REQUESTED = _MAPICore.MAPI_RECEIPT_REQUESTED
MAPI_SENT = _MAPICore.MAPI_SENT
MAPI_LOGON_UI = _MAPICore.MAPI_LOGON_UI
MAPI_PASSWORD_UI = _MAPICore.MAPI_PASSWORD_UI
MAPI_NEW_SESSION = _MAPICore.MAPI_NEW_SESSION
MAPI_FORCE_DOWNLOAD = _MAPICore.MAPI_FORCE_DOWNLOAD
MAPI_EXTENDED = _MAPICore.MAPI_EXTENDED
MAPI_DIALOG = _MAPICore.MAPI_DIALOG
MAPI_USE_DEFAULT = _MAPICore.MAPI_USE_DEFAULT
MAPI_UNREAD_ONLY = _MAPICore.MAPI_UNREAD_ONLY
MAPI_GUARANTEE_FIFO = _MAPICore.MAPI_GUARANTEE_FIFO
MAPI_LONG_MSGID = _MAPICore.MAPI_LONG_MSGID
MAPI_PEEK = _MAPICore.MAPI_PEEK
MAPI_SUPPRESS_ATTACH = _MAPICore.MAPI_SUPPRESS_ATTACH
MAPI_ENVELOPE_ONLY = _MAPICore.MAPI_ENVELOPE_ONLY
MAPI_BODY_AS_FILE = _MAPICore.MAPI_BODY_AS_FILE
MAPI_AB_NOMODIFY = _MAPICore.MAPI_AB_NOMODIFY
PROJECT_VERSION = _MAPICore.PROJECT_VERSION
class Stream(IStream):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, cInterfaces):
        if self.__class__ == Stream:
            _self = None
        else:
            _self = self
        _MAPICore.Stream_swiginit(self, _MAPICore.new_Stream(_self, cInterfaces))

    def Read(self, cb):
        return _MAPICore.Stream_Read(self, cb)

    def Write(self, pv):
        return _MAPICore.Stream_Write(self, pv)
    __swig_destroy__ = _MAPICore.delete_Stream
    def __disown__(self):
        self.this.disown()
        _MAPICore.disown_Stream(self)
        return weakref.proxy(self)

# Register Stream in _MAPICore:
_MAPICore.Stream_swigregister(Stream)

