// LDAP.odl : type library source for LDAP.dll

// This file will be processed by the Make Type Library (mktyplib) tool to
// produce the type library (LDAP.tlb).

#include "LDAP2.h"

[ uuid(LDAP_LIBIID_LDAPOle), version(1.0) ]
library LDAPOle
{
        importlib("stdole2.tlb");
        importlib("activeds.tlb");

        [uuid(LDAP_CLSID_LDAPProvider)]
        coclass LDAPProvider
        {
                [default] interface IDispatch;
                          interface IUnknown;
        };

        [ uuid(LDAP_CLSID_LDAPNamespace)]
        coclass LDAPNamespace
        {
                [default] interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

        [ uuid(LDAP_CLSID_LDAPGenObject)]
        coclass LDAPGenObject
        {
                [default] interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

        [ uuid(LDAP_CLSID_LDAPUser)]
        coclass LDAPUser
        {
                [default] interface IADsUser;
                          interface IADs;
                          interface IDispatch;
        };

        [ uuid(LDAP_CLSID_LDAPGroup)]
        coclass LDAPGroup
        {
                [default] interface IADsGroup;
                          interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };


        [uuid(LDAP_CLSID_LDAPSchema)]
        coclass LDAPSchema
        {
                [default] interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

        [uuid(LDAP_CLSID_LDAPClass)]
        coclass LDAPClass
        {
                [default] interface IADsClass;
                          interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

        [uuid(LDAP_CLSID_LDAPProperty)]
        coclass LDAPProperty
        {
                [default] interface IADsProperty;
                          interface IADs;
                          interface IDispatch;
        };

        [uuid(LDAP_CLSID_LDAPSyntax)]
        coclass LDAPSyntax
        {
                          interface IADs;
                [default] interface IDispatch;
        };

        [uuid(LDAP_CLSID_LDAPLocality)]
        coclass LDAPLocality
        {
                [default] interface IADsLocality;
                          interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

        [uuid(LDAP_CLSID_LDAPO)]
        coclass LDAPOrganization
        {
                [default] interface IADsO;
                          interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

        [uuid(LDAP_CLSID_LDAPOU)]
        coclass LDAPOrganizationUnit
        {
                [default] interface IADsOU;
                          interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

        [uuid(LDAP_CLSID_LDAPDomain)]
        coclass LDAPDomain
        {
                [default] interface IADsDomain;
                          interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

#if 0
        [uuid(LDAP_CLSID_LDAPComputer)]
        coclass LDAPComputer
        {
                [default] interface IADsComputer;
                          interface IADsContainer;
                          interface IADs;
                          interface IDispatch;
        };

        [uuid(LDAP_CLSID_LDAPPrintQueue)]
        coclass LDAPPrintQueue
        {
                [default] interface IADsPrintQueue;
                          interface IADs;
                          interface IDispatch;
        };
#endif
};