// Generated IDL File (by Great Migrations Studio) 
// Created: 12/3/2025 09:33:17 AM
// Source: C:\gmTestBed\FMStocks\src\FMSLib\bin\FMSStore_Bus.dll
// typelib filename: FMSStore_Bus.dll
[
    uuid(EB819871-A313-46F7-B0C4-E39EAC214163),
    version(2.0),
    custom(50867B00-BB69-11D0-A8FF-00A0C9110059, "8169")
]
library FMSStore_Bus
{
    // TLib : Microsoft ActiveX Data Objects 2.7 Library : {EF53050B-882E-4776-B643-EDA472E8E3F2}
    importlib("msado27.tlb");
    // TLib : OLE Automation : {00020430-0000-0000-C000-000000000046}
    importlib("stdole2.tlb");

    // Forward declare all types defined in this typelib

    interface _ShoppingCart;
    interface _Product;
    coclass ShoppingCart;
    coclass Product;

    [
        odl,
        uuid(EDCD5179-D556-4B5B-A7CA-6B10A851BA29),
        version(1.0),
        hidden,
        dual,
        nonextensible,
        oleautomation
    ]
    interface _ShoppingCart : IDispatch {
        [id(0x60030002)]
        HRESULT GetByKey(
            [in] long AccountID,
            [in] long SKU,
            [out, retval] ADODB._Recordset** retVal);
        [id(0x60030003)]
        HRESULT Add(
            [in] long AccountID,
            [in] long SKU);
        [id(0x60030004)]
        HRESULT Buy([in] long AccountID);
        [id(0x60030005)]
        HRESULT ListByAccount(
            [in] long AccountID,
            [out, retval] ADODB._Recordset** retVal);
        [id(0x60030006)]
        HRESULT SetQuantity(
            [in] long AccountID,
            [in] long SKU,
            [in] short Quantity);
        [id(0x60030007)]
        HRESULT TotalByAccount(
            [in] long AccountID,
            [out, retval] ADODB._Recordset** retVal);
        [id(0x60030008)]
        HRESULT EmptyShoppingCart([in] long AccountID);
    };

    [
        uuid(2EF8D4AE-184C-4900-9D0C-7BE880784E28),
        version(1.0)
    ]
    coclass ShoppingCart {
        [default] interface _ShoppingCart;
    };

    [
        odl,
        uuid(412F6E70-F3D8-4B78-8FC2-73507C7FEEC3),
        version(1.0),
        hidden,
        dual,
        nonextensible,
        oleautomation
    ]
    interface _Product : IDispatch {
        [id(0x60030000)]
        HRESULT FindByDescription(
            [in] BSTR Description,
            [out, retval] ADODB._Recordset** retVal);
        [id(0x60030001)]
        HRESULT GetBySKU(
            [in] long SKU,
            [out, retval] ADODB._Recordset** retVal);
        [id(0x60030002)]
        HRESULT List([out, retval] ADODB._Recordset** retVal);
    };

    [
        uuid(606FA7F6-0495-4C25-AAD5-82B1F7F22737),
        version(1.0)
    ]
    coclass Product {
        [default] interface _Product;
    };

};