/*
 * Copyright (C) 2006, 2007 Apple Inc.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 */

cpp_quote("/*")
cpp_quote(" * Copyright (C) 2006, 2007 Apple Inc.  All rights reserved.")
cpp_quote(" *")
cpp_quote(" * Redistribution and use in source and binary forms, with or without")
cpp_quote(" * modification, are permitted provided that the following conditions")
cpp_quote(" * are met:")
cpp_quote(" * 1. Redistributions of source code must retain the above copyright")
cpp_quote(" *    notice, this list of conditions and the following disclaimer.")
cpp_quote(" * 2. Redistributions in binary form must reproduce the above copyright")
cpp_quote(" *    notice, this list of conditions and the following disclaimer in the")
cpp_quote(" *    documentation and/or other materials provided with the distribution.")
cpp_quote(" *")
cpp_quote(" * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY")
cpp_quote(" * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE")
cpp_quote(" * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR")
cpp_quote(" * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR")
cpp_quote(" * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,")
cpp_quote(" * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,")
cpp_quote(" * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR")
cpp_quote(" * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY")
cpp_quote(" * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT")
cpp_quote(" * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE")
cpp_quote(" * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ")
cpp_quote(" */")

import "oaidl.idl";
import "ocidl.idl";

import "IWebTextRenderer.idl";
import "IWebView.idl";
import "IWebViewPrivate.idl";
import "IWebUIDelegate.idl";
import "IWebResourceLoadDelegate.idl";
import "IWebDatabaseManager.idl";
import "IWebDownload.idl";
import "IWebFrameLoadDelegate.idl";
import "IWebPolicyDelegate.idl";
import "IWebFrame.idl";
import "IWebBackForwardList.idl";
import "IWebHistoryItem.idl";
import "IWebScriptObject.idl";
import "IWebPreferences.idl";
import "IWebDocument.idl";
import "IWebURLRequest.idl";
import "IWebDataSource.idl";
import "IWebURLResponse.idl";
import "IWebURLAuthenticationChallenge.idl";
import "IWebError.idl";
import "IWebMutableURLRequest.idl";
import "IWebArchive.idl";
import "IWebResource.idl";
import "IWebFrameView.idl";
import "DOMHTML.idl";
import "IWebIconDatabase.idl";
import "IWebNotificationCenter.idl";
import "IWebNotificationObserver.idl";
import "IWebHistory.idl";
import "IWebCache.idl";
import "IWebJavaScriptCollector.idl";
import "IWebKitStatistics.idl";
import "IWebScrollBarPrivate.idl";
import "IWebScriptDebugServer.idl";

[
#if __PRODUCTION__
    uuid(2a748656-625d-4207-b29f-40c95bfeb3a9),
    helpstring("WebKit 525.2 Type Library"),
#else
    uuid(76E5F7F0-18FD-48a2-B549-1159435B513B),
    helpstring("OpenSourceWebKit 525.2 Type Library"),
#endif
    version(525.2)
]
#if __PRODUCTION__
library WebKit
#else
library OpenSourceWebKit
#endif
{
    // TLib : OLE Automation : {00020430-0000-0000-C000-000000000046}
    importlib("STDOLE2.TLB");

#if __PRODUCTION__
    [uuid(d6bca079-f61c-4e1e-b453-32a0477d02e3)]
#else
    [uuid(4FF47097-3FEA-4b47-AC0E-90725C546490)]
#endif
    coclass WebView {
        [default] interface IWebView;
        interface IWebIBActions;
        interface IWebViewCSS;
        interface IWebViewEditing;
        interface IWebViewUndoableEditing;
        interface IWebViewEditingActions;
        interface IWebNotificationObserver;
        interface IWebViewPrivate;
    }

#if __PRODUCTION__
    [uuid(66827ec1-3aef-4241-bac5-f776b44f030f)]
#else
    [uuid(BE8EE509-9894-44ba-9E2F-E29780BCB25C)]
#endif
    coclass WebIconDatabase {
        [default] interface IWebIconDatabase;
    }

#if __PRODUCTION__
    [uuid(a062ecc3-bb1b-4694-a569-f59e0ad6be0c)]
#else
    [uuid(97F3EB52-9EAC-4062-82E1-E5C1E7789DEE)]
#endif
    coclass WebMutableURLRequest {
        [default] interface IWebMutableURLRequest;
    }

#if __PRODUCTION__
    [uuid(ba590766-0a6f-46c7-b96e-743490d94cb7)]
#else
    [uuid(99B9D99A-060D-4695-8C8F-3AB53156054C)]
#endif
    coclass WebNotificationCenter {
        [default] interface IWebNotificationCenter;
    }

#if __PRODUCTION__
    [uuid(a4b9b45d-949f-4c8c-9b92-6fbfcc1caaa2)]
#else
    [uuid(4D043991-E844-48b0-8EF7-85FE1AB8829E)]
#endif
    coclass WebHistory {
        [default] interface IWebHistory;
    }

#if __PRODUCTION__
    [uuid(dd653964-4d37-4fb2-9cb6-6a9a97719332)]
#else
    [uuid(97795891-293D-4855-800E-E21987568537)]
#endif
    coclass CFDictionaryPropertyBag {
        [default] interface IPropertyBag;
    }

#if __PRODUCTION__
    [uuid(6be190e9-1725-4e4a-88db-6a9fe242c9e5)]
#else
    [uuid(82F6400A-3CD0-40a3-8EA1-7A23B26D6153)]
#endif
    coclass WebHistoryItem {
        [default] interface IWebHistoryItem;
    }

#if __PRODUCTION__
    [uuid(f71071fd-a51b-4b69-9eb6-44374405e80c)]
#else
    [uuid(CB0111F6-168B-467e-8613-23AB37D0493E)]
#endif
    coclass WebCache {
        [default] interface IWebCache;
    }

#if __PRODUCTION__
    [uuid(1820D883-42FE-4b78-88C8-5456BB19D224)]
#else
    [uuid(5D911A44-4316-4a02-A2B5-BAE7036357B9)]
#endif
    coclass WebJavaScriptCollector {
        [default] interface IWebJavaScriptCollector;
    }

#if __PRODUCTION__
    [uuid(67B89F90-F778-438b-ABBF-34D1ACBF8651)]
#else
    [uuid(CC914F49-2385-4943-9B3F-E17501383F5B)]
#endif
    coclass WebPreferences {
        [default] interface IWebPreferences;
    }

#if __PRODUCTION__
    [uuid(E93AA8D7-F362-4a4a-A95D-325906BEB5F0)]
#else
    [uuid(87689DC6-5F8C-4194-90D5-CE6083837AB5)]
#endif
    coclass WebKitStatistics {
        [default] interface IWebKitStatistics;
    }

#if __PRODUCTION__
    [uuid(6C6AF3F9-36B4-4bf7-8BDE-74DCD4AD75A4)]
#else
    [uuid(319B38AC-2794-47fa-AE18-A14A7576A6D8)]
#endif
    coclass WebError {
        [default] interface IWebError;
    }

#if __PRODUCTION__
    [uuid(7433F53B-7FE9-484a-9432-72909457A646)]
#else
    [uuid(BCF988AF-9A2F-403f-A1D8-BD815C46401D)]
#endif
    coclass WebURLCredential {
        [default] interface IWebURLCredential;
    }

#if __PRODUCTION__
    [uuid(C0F98BD9-3B1C-413d-904A-E2D1453EAF1F)]
#else
    [uuid(3FE547FC-4EC1-4062-9DE2-9FC3DA0A08FF)]
#endif
    coclass WebDownload {
        [default] interface IWebDownload;
    }

#if __PRODUCTION__
    [uuid(2FB5499A-BB5D-4469-8517-789FEC8FD9BA)]
#else
    [uuid(20B9702D-B41F-449b-84FE-3E32DB5D775F)]
#endif
    coclass WebURLRequest {
        [default] interface IWebURLRequest;
    }

#if __PRODUCTION__
    [uuid(F366A6E8-E43C-4fd4-AAB0-8E6E79C73E6E)]
#else
    [uuid(41EFBA9A-63E4-4c49-A012-CCC48694D7A5)]
#endif
    coclass WebURLProtectionSpace {
        [default] interface IWebURLProtectionSpace;
    }

#if __PRODUCTION__
    [uuid(24A53AD5-AA9F-44e6-AA22-2C7C250B661A)]
#else
    [uuid(0F34FB95-301F-4ea1-943E-B5E6E6D94121)]
#endif
    coclass WebScrollBar {
        [default] interface IWebScrollBarPrivate;
    }

#if __PRODUCTION__
    [uuid(715636C4-59E7-4b85-BBC5-B555888787D7)]
#else
    [uuid(5BE39DBA-5887-4a69-9157-EBEE96BA3309)]
#endif
    coclass WebScriptDebugServer {
        [default] interface IWebScriptDebugServer;
    }

#if __PRODUCTION__
    [uuid(AB201196-8DD2-4d45-AEBD-029B6A37AA27)]
#else
    [uuid(EA2FCB14-072B-48b5-B9B5-1BBEFBABC7BC)]
#endif
    coclass WebURLResponse {
        [default] interface IWebURLResponse;
    }

#if __PRODUCTION__
    [uuid(24040cd6-aff4-4a51-9c8b-71539580ee76)]
#else
    [uuid(1fbff564-5ff4-484f-b3d9-217483f9f5fc)]
#endif
    coclass WebTextRenderer {
        [default] interface IWebTextRenderer;
    }

#if __PRODUCTION__
    [uuid(C2A1BFC2-1E7C-49fe-8592-D0C7FB440BC0)]
#else
    [uuid(1F7B8CEE-5D74-4974-8A47-C5733B422644)]
#endif
    coclass WebDatabaseManager {
        [default] interface IWebDatabaseManager;
    }
}
