#include "nsISupports.idl"

interface nsIInputStream;


%{C++
#define NS_CLABSCRIPTABLEINPUTSTREAM_CLASSNAME "CLAB ScriptableInputStream"
#define NS_CLABSCRIPTABLEINPUTSTREAM_CONTRACTID "@mozilla.org/secclab/nsCLABScriptableInputStream;1"
     
#define NS_CLABSCRIPTABLEINPUTSTREAM_CID                       \
{/* a9af45b3-bb37-41d6-bc29-247800b011aa */      \
    0xa9af45b3, 0xbb37, 0x41d6,\
{0xbc, 0x29, 0x24, 0x78, 0x00, 0xb0, 0x11, 0xaa} }
%}
[scriptable, uuid(a9af45b3-bb37-41d6-bc29-247800b011aa)] 
interface nsICLABScriptableInputStream : nsISupports
{ 
    void close();
    void init(in nsIInputStream aInputStream); 
    unsigned long available(); 
    void read(in unsigned long aCount,out unsigned long aLen,[retval, size_is(aLen)]out string data); 
}; 
