@tsonic/dotnet
Version:
TypeScript type definitions for .NET 10 BCL (Base Class Library)
850 lines (643 loc) • 25.1 kB
TypeScript
// Generated by tsbindgen - Architecture
// Namespace: System.Runtime.InteropServices.ComTypes
// Assembly: System.Private.CoreLib, System.Runtime.InteropServices
// Branded primitive types are sourced from @tsonic/types
import type { sbyte, byte, short, ushort, int, uint, long, ulong, int128, uint128, half, float, double, decimal, nint, nuint, char } from '@tsonic/types';
// Import support types from @tsonic/types
import type { ptr, ref } from "@tsonic/types";
// Import types from other namespaces
import * as System_Internal from "../../System/internal/index.js";
import type { Boolean as ClrBoolean, Byte, Enum, Guid, IComparable, IConvertible, IFormatProvider, IFormattable, Int16, Int32, Int64, IntPtr, ISpanFormattable, Object as ClrObject, String as ClrString, Type, TypeCode, ValueType, Void } from "../../System/internal/index.js";
// CLROf<T> - Maps ergonomic primitives to their CLR types for generic constraints
// This utility is used ONLY in generic type arguments to satisfy CLR interface constraints
// Value positions (parameters, return types) use lowercase primitives for ergonomics
export type CLROf<T> =
T extends sbyte ? System_Internal.SByte :
T extends short ? System_Internal.Int16 :
T extends int ? System_Internal.Int32 :
T extends long ? System_Internal.Int64 :
T extends int128 ? System_Internal.Int128 :
T extends nint ? System_Internal.IntPtr :
T extends byte ? System_Internal.Byte :
T extends ushort ? System_Internal.UInt16 :
T extends uint ? System_Internal.UInt32 :
T extends ulong ? System_Internal.UInt64 :
T extends uint128 ? System_Internal.UInt128 :
T extends nuint ? System_Internal.UIntPtr :
T extends half ? System_Internal.Half :
T extends float ? System_Internal.Single :
T extends double ? System_Internal.Double :
T extends decimal ? System_Internal.Decimal :
T extends char ? System_Internal.Char :
T extends boolean ? System_Internal.Boolean :
T extends string ? System_Internal.String :
T; // Identity fallback for non-primitive types
export enum ADVF {
ADVF_NODATA = 1,
ADVF_PRIMEFIRST = 2,
ADVF_ONLYONCE = 4,
ADVF_DATAONSTOP = 64,
ADVFCACHE_NOHANDLER = 8,
ADVFCACHE_FORCEBUILTIN = 16,
ADVFCACHE_ONSAVE = 32
}
export enum CALLCONV {
CC_CDECL = 1,
CC_MSCPASCAL = 2,
CC_PASCAL = 2,
CC_MACPASCAL = 3,
CC_STDCALL = 4,
CC_RESERVED = 5,
CC_SYSCALL = 6,
CC_MPWCDECL = 7,
CC_MPWPASCAL = 8,
CC_MAX = 9
}
export enum DATADIR {
DATADIR_GET = 1,
DATADIR_SET = 2
}
export enum DESCKIND {
DESCKIND_NONE = 0,
DESCKIND_FUNCDESC = 1,
DESCKIND_VARDESC = 2,
DESCKIND_TYPECOMP = 3,
DESCKIND_IMPLICITAPPOBJ = 4,
DESCKIND_MAX = 5
}
export enum DVASPECT {
DVASPECT_CONTENT = 1,
DVASPECT_THUMBNAIL = 2,
DVASPECT_ICON = 4,
DVASPECT_DOCPRINT = 8
}
export enum FUNCFLAGS {
FUNCFLAG_FRESTRICTED = 1,
FUNCFLAG_FSOURCE = 2,
FUNCFLAG_FBINDABLE = 4,
FUNCFLAG_FREQUESTEDIT = 8,
FUNCFLAG_FDISPLAYBIND = 16,
FUNCFLAG_FDEFAULTBIND = 32,
FUNCFLAG_FHIDDEN = 64,
FUNCFLAG_FUSESGETLASTERROR = 128,
FUNCFLAG_FDEFAULTCOLLELEM = 256,
FUNCFLAG_FUIDEFAULT = 512,
FUNCFLAG_FNONBROWSABLE = 1024,
FUNCFLAG_FREPLACEABLE = 2048,
FUNCFLAG_FIMMEDIATEBIND = 4096
}
export enum FUNCKIND {
FUNC_VIRTUAL = 0,
FUNC_PUREVIRTUAL = 1,
FUNC_NONVIRTUAL = 2,
FUNC_STATIC = 3,
FUNC_DISPATCH = 4
}
export enum IDLFLAG {
IDLFLAG_NONE = 0,
IDLFLAG_FIN = 1,
IDLFLAG_FOUT = 2,
IDLFLAG_FLCID = 4,
IDLFLAG_FRETVAL = 8
}
export enum IMPLTYPEFLAGS {
IMPLTYPEFLAG_FDEFAULT = 1,
IMPLTYPEFLAG_FSOURCE = 2,
IMPLTYPEFLAG_FRESTRICTED = 4,
IMPLTYPEFLAG_FDEFAULTVTABLE = 8
}
export enum INVOKEKIND {
INVOKE_FUNC = 1,
INVOKE_PROPERTYGET = 2,
INVOKE_PROPERTYPUT = 4,
INVOKE_PROPERTYPUTREF = 8
}
export enum LIBFLAGS {
LIBFLAG_FRESTRICTED = 1,
LIBFLAG_FCONTROL = 2,
LIBFLAG_FHIDDEN = 4,
LIBFLAG_FHASDISKIMAGE = 8
}
export enum PARAMFLAG {
PARAMFLAG_NONE = 0,
PARAMFLAG_FIN = 1,
PARAMFLAG_FOUT = 2,
PARAMFLAG_FLCID = 4,
PARAMFLAG_FRETVAL = 8,
PARAMFLAG_FOPT = 16,
PARAMFLAG_FHASDEFAULT = 32,
PARAMFLAG_FHASCUSTDATA = 64
}
export enum SYSKIND {
SYS_WIN16 = 0,
SYS_WIN32 = 1,
SYS_MAC = 2,
SYS_WIN64 = 3
}
export enum TYMED {
TYMED_HGLOBAL = 1,
TYMED_FILE = 2,
TYMED_ISTREAM = 4,
TYMED_ISTORAGE = 8,
TYMED_GDI = 16,
TYMED_MFPICT = 32,
TYMED_ENHMF = 64,
TYMED_NULL = 0
}
export enum TYPEFLAGS {
TYPEFLAG_FAPPOBJECT = 1,
TYPEFLAG_FCANCREATE = 2,
TYPEFLAG_FLICENSED = 4,
TYPEFLAG_FPREDECLID = 8,
TYPEFLAG_FHIDDEN = 16,
TYPEFLAG_FCONTROL = 32,
TYPEFLAG_FDUAL = 64,
TYPEFLAG_FNONEXTENSIBLE = 128,
TYPEFLAG_FOLEAUTOMATION = 256,
TYPEFLAG_FRESTRICTED = 512,
TYPEFLAG_FAGGREGATABLE = 1024,
TYPEFLAG_FREPLACEABLE = 2048,
TYPEFLAG_FDISPATCHABLE = 4096,
TYPEFLAG_FREVERSEBIND = 8192,
TYPEFLAG_FPROXY = 16384
}
export enum TYPEKIND {
TKIND_ENUM = 0,
TKIND_RECORD = 1,
TKIND_MODULE = 2,
TKIND_INTERFACE = 3,
TKIND_DISPATCH = 4,
TKIND_COCLASS = 5,
TKIND_ALIAS = 6,
TKIND_UNION = 7,
TKIND_MAX = 8
}
export enum VARFLAGS {
VARFLAG_FREADONLY = 1,
VARFLAG_FSOURCE = 2,
VARFLAG_FBINDABLE = 4,
VARFLAG_FREQUESTEDIT = 8,
VARFLAG_FDISPLAYBIND = 16,
VARFLAG_FDEFAULTBIND = 32,
VARFLAG_FHIDDEN = 64,
VARFLAG_FRESTRICTED = 128,
VARFLAG_FDEFAULTCOLLELEM = 256,
VARFLAG_FUIDEFAULT = 512,
VARFLAG_FNONBROWSABLE = 1024,
VARFLAG_FREPLACEABLE = 2048,
VARFLAG_FIMMEDIATEBIND = 4096
}
export enum VARKIND {
VAR_PERINSTANCE = 0,
VAR_STATIC = 1,
VAR_CONST = 2,
VAR_DISPATCH = 3
}
export interface IAdviseSink$instance {
onDataChange(format: { value: ref<FORMATETC> }, stgmedium: { value: ref<STGMEDIUM> }): void;
onRename(moniker: IMoniker): void;
onSave(): void;
onViewChange(aspect: int, index: int): void;
}
export type IAdviseSink = IAdviseSink$instance;
export interface IBindCtx$instance {
enumObjectParam(ppenum: { value: ref<IEnumString> }): void;
getObjectParam(pszKey: string, ppunk: { value: ref<unknown> }): void;
getRunningObjectTable(pprot: { value: ref<IRunningObjectTable> }): void;
registerObjectBound(punk: unknown): void;
registerObjectParam(pszKey: string, punk: unknown): void;
releaseBoundObjects(): void;
revokeObjectParam(pszKey: string): int;
setBindOptions(pbindopts: { value: ref<BIND_OPTS> }): void;
}
export type IBindCtx = IBindCtx$instance;
export interface IConnectionPoint$instance {
advise(pUnkSink: unknown, pdwCookie: { value: ref<int> }): void;
enumConnections(ppEnum: { value: ref<IEnumConnections> }): void;
getConnectionInterface(pIID: { value: ref<Guid> }): void;
getConnectionPointContainer(ppCPC: { value: ref<IConnectionPointContainer> }): void;
unadvise(dwCookie: int): void;
}
export type IConnectionPoint = IConnectionPoint$instance;
export interface IConnectionPointContainer$instance {
enumConnectionPoints(ppEnum: { value: ref<IEnumConnectionPoints> }): void;
findConnectionPoint(riid: { value: ref<Guid> }, ppCP: { value: ref<IConnectionPoint> }): void;
}
export type IConnectionPointContainer = IConnectionPointContainer$instance;
export interface IDataObject$instance {
dAdvise(pFormatetc: { value: ref<FORMATETC> }, advf: ADVF, adviseSink: IAdviseSink, connection: { value: ref<int> }): int;
dUnadvise(connection: int): void;
enumDAdvise(enumAdvise: { value: ref<IEnumSTATDATA> }): int;
enumFormatEtc(direction: DATADIR): IEnumFORMATETC;
getCanonicalFormatEtc(formatIn: { value: ref<FORMATETC> }, formatOut: { value: ref<FORMATETC> }): int;
getData(format: { value: ref<FORMATETC> }, medium: { value: ref<STGMEDIUM> }): void;
queryGetData(format: { value: ref<FORMATETC> }): int;
setData(formatIn: { value: ref<FORMATETC> }, medium: { value: ref<STGMEDIUM> }, release: boolean): void;
}
export type IDataObject = IDataObject$instance;
export interface IEnumConnectionPoints$instance {
clone(ppenum: { value: ref<IEnumConnectionPoints> }): void;
next(celt: int, rgelt: { value: IConnectionPoint[] }, pceltFetched: nint): int;
reset(): void;
skip(celt: int): int;
}
export type IEnumConnectionPoints = IEnumConnectionPoints$instance;
export interface IEnumConnections$instance {
clone(ppenum: { value: ref<IEnumConnections> }): void;
next(celt: int, rgelt: { value: CONNECTDATA[] }, pceltFetched: nint): int;
reset(): void;
skip(celt: int): int;
}
export type IEnumConnections = IEnumConnections$instance;
export interface IEnumFORMATETC$instance {
clone(newEnum: { value: ref<IEnumFORMATETC> }): void;
next(celt: int, rgelt: { value: FORMATETC[] }, pceltFetched: { value: int[] }): int;
reset(): int;
skip(celt: int): int;
}
export type IEnumFORMATETC = IEnumFORMATETC$instance;
export interface IEnumMoniker$instance {
clone(ppenum: { value: ref<IEnumMoniker> }): void;
next(celt: int, rgelt: { value: IMoniker[] }, pceltFetched: nint): int;
reset(): void;
skip(celt: int): int;
}
export type IEnumMoniker = IEnumMoniker$instance;
export interface IEnumSTATDATA$instance {
clone(newEnum: { value: ref<IEnumSTATDATA> }): void;
next(celt: int, rgelt: { value: STATDATA[] }, pceltFetched: { value: int[] }): int;
reset(): int;
skip(celt: int): int;
}
export type IEnumSTATDATA = IEnumSTATDATA$instance;
export interface IEnumString$instance {
clone(ppenum: { value: ref<IEnumString> }): void;
next(celt: int, rgelt: { value: string[] }, pceltFetched: nint): int;
reset(): void;
skip(celt: int): int;
}
export type IEnumString = IEnumString$instance;
export interface IEnumVARIANT$instance {
clone(): IEnumVARIANT;
next(celt: int, rgVar: { value: unknown[] }, pceltFetched: nint): int;
reset(): int;
skip(celt: int): int;
}
export type IEnumVARIANT = IEnumVARIANT$instance;
export interface IMoniker$instance {
bindToObject(pbc: IBindCtx, pmkToLeft: IMoniker, riidResult: { value: ref<Guid> }, ppvResult: { value: ref<unknown> }): void;
commonPrefixWith(pmkOther: IMoniker, ppmkPrefix: { value: ref<IMoniker> }): void;
composeWith(pmkRight: IMoniker, fOnlyIfNotGeneric: boolean, ppmkComposite: { value: ref<IMoniker> }): void;
enum_(fForward: boolean, ppenumMoniker: { value: ref<IEnumMoniker> }): void;
getClassID(pClassID: { value: ref<Guid> }): void;
getDisplayName(pbc: IBindCtx, pmkToLeft: IMoniker, ppszDisplayName: { value: ref<string> }): void;
getSizeMax(pcbSize: { value: ref<long> }): void;
getTimeOfLastChange(pbc: IBindCtx, pmkToLeft: IMoniker, pFileTime: { value: ref<FILETIME> }): void;
hash(pdwHash: { value: ref<int> }): void;
inverse(ppmk: { value: ref<IMoniker> }): void;
isDirty(): int;
isEqual(pmkOtherMoniker: IMoniker): int;
isRunning(pbc: IBindCtx, pmkToLeft: IMoniker, pmkNewlyRunning: IMoniker): int;
isSystemMoniker(pdwMksys: { value: ref<int> }): int;
load(pStm: IStream): void;
parseDisplayName(pbc: IBindCtx, pmkToLeft: IMoniker, pszDisplayName: string, pchEaten: { value: ref<int> }, ppmkOut: { value: ref<IMoniker> }): void;
reduce(pbc: IBindCtx, dwReduceHowFar: int, ppmkToLeft: { value: ref<IMoniker> }, ppmkReduced: { value: ref<IMoniker> }): void;
save(pStm: IStream, fClearDirty: boolean): void;
}
export type IMoniker = IMoniker$instance;
export interface IPersistFile$instance {
getClassID(pClassID: { value: ref<Guid> }): void;
getCurFile(ppszFileName: { value: ref<string> }): void;
isDirty(): int;
load(pszFileName: string, dwMode: int): void;
save(pszFileName: string, fRemember: boolean): void;
saveCompleted(pszFileName: string): void;
}
export type IPersistFile = IPersistFile$instance;
export interface IRunningObjectTable$instance {
enumRunning(ppenumMoniker: { value: ref<IEnumMoniker> }): void;
getObject(pmkObjectName: IMoniker, ppunkObject: { value: ref<unknown> }): int;
getTimeOfLastChange(pmkObjectName: IMoniker, pfiletime: { value: ref<FILETIME> }): int;
isRunning(pmkObjectName: IMoniker): int;
noteChangeTime(dwRegister: int, pfiletime: { value: ref<FILETIME> }): void;
register(grfFlags: int, punkObject: unknown, pmkObjectName: IMoniker): int;
revoke(dwRegister: int): void;
}
export type IRunningObjectTable = IRunningObjectTable$instance;
export interface IStream$instance {
clone(ppstm: { value: ref<IStream> }): void;
commit(grfCommitFlags: int): void;
copyTo(pstm: IStream, cb: long, pcbRead: nint, pcbWritten: nint): void;
lockRegion(libOffset: long, cb: long, dwLockType: int): void;
read(pv: { value: byte[] }, cb: int, pcbRead: nint): void;
revert(): void;
seek(dlibMove: long, dwOrigin: int, plibNewPosition: nint): void;
setSize(libNewSize: long): void;
stat(pstatstg: { value: ref<STATSTG> }, grfStatFlag: int): void;
}
export type IStream = IStream$instance;
export interface ITypeComp$instance {
bind(szName: string, lHashVal: int, wFlags: short, ppTInfo: { value: ref<ITypeInfo> }, pDescKind: { value: ref<DESCKIND> }, pBindPtr: { value: ref<BINDPTR> }): void;
bindType(szName: string, lHashVal: int, ppTInfo: { value: ref<ITypeInfo> }, ppTComp: { value: ref<ITypeComp> }): void;
}
export type ITypeComp = ITypeComp$instance;
export interface ITypeInfo$instance {
addressOfMember(memid: int, invKind: INVOKEKIND, ppv: { value: ref<nint> }): void;
createInstance(pUnkOuter: unknown, riid: { value: ref<Guid> }, ppvObj: { value: ref<unknown> }): void;
getContainingTypeLib(ppTLB: { value: ref<ITypeLib> }, pIndex: { value: ref<int> }): void;
getDllEntry(memid: int, invKind: INVOKEKIND, pBstrDllName: nint, pBstrName: nint, pwOrdinal: nint): void;
getDocumentation(index: int, strName: { value: ref<string> }, strDocString: { value: ref<string> }, dwHelpContext: { value: ref<int> }, strHelpFile: { value: ref<string> }): void;
getFuncDesc(index: int, ppFuncDesc: { value: ref<nint> }): void;
getIDsOfNames(rgszNames: string[], cNames: int, pMemId: { value: int[] }): void;
getImplTypeFlags(index: int, pImplTypeFlags: { value: ref<IMPLTYPEFLAGS> }): void;
getMops(memid: int, pBstrMops: { value: ref<string> }): void;
getNames(memid: int, rgBstrNames: { value: string[] }, cMaxNames: int, pcNames: { value: ref<int> }): void;
getRefTypeInfo(hRef: int, ppTI: { value: ref<ITypeInfo> }): void;
getRefTypeOfImplType(index: int, href: { value: ref<int> }): void;
getTypeAttr(ppTypeAttr: { value: ref<nint> }): void;
getTypeComp(ppTComp: { value: ref<ITypeComp> }): void;
invoke(pvInstance: unknown, memid: int, wFlags: short, pDispParams: { value: ref<DISPPARAMS> }, pVarResult: nint, pExcepInfo: nint, puArgErr: { value: ref<int> }): void;
releaseTypeAttr(pTypeAttr: nint): void;
}
export type ITypeInfo = ITypeInfo$instance;
export interface ITypeInfo2$instance extends ITypeInfo {
addressOfMember(memid: int, invKind: INVOKEKIND, ppv: { value: ref<nint> }): void;
createInstance(pUnkOuter: unknown, riid: { value: ref<Guid> }, ppvObj: { value: ref<unknown> }): void;
getAllFuncCustData(index: int, pCustData: nint): void;
getAllParamCustData(indexFunc: int, indexParam: int, pCustData: nint): void;
getContainingTypeLib(ppTLB: { value: ref<ITypeLib> }, pIndex: { value: ref<int> }): void;
getCustData(guid: { value: ref<Guid> }, pVarVal: { value: ref<unknown> }): void;
getDllEntry(memid: int, invKind: INVOKEKIND, pBstrDllName: nint, pBstrName: nint, pwOrdinal: nint): void;
getDocumentation(index: int, strName: { value: ref<string> }, strDocString: { value: ref<string> }, dwHelpContext: { value: ref<int> }, strHelpFile: { value: ref<string> }): void;
getDocumentation2(memid: int, pbstrHelpString: { value: ref<string> }, pdwHelpStringContext: { value: ref<int> }, pbstrHelpStringDll: { value: ref<string> }): void;
getFuncCustData(index: int, guid: { value: ref<Guid> }, pVarVal: { value: ref<unknown> }): void;
getFuncDesc(index: int, ppFuncDesc: { value: ref<nint> }): void;
getFuncIndexOfMemId(memid: int, invKind: INVOKEKIND, pFuncIndex: { value: ref<int> }): void;
getIDsOfNames(rgszNames: string[], cNames: int, pMemId: { value: int[] }): void;
getImplTypeFlags(index: int, pImplTypeFlags: { value: ref<IMPLTYPEFLAGS> }): void;
getMops(memid: int, pBstrMops: { value: ref<string> }): void;
getNames(memid: int, rgBstrNames: { value: string[] }, cMaxNames: int, pcNames: { value: ref<int> }): void;
getParamCustData(indexFunc: int, indexParam: int, guid: { value: ref<Guid> }, pVarVal: { value: ref<unknown> }): void;
getRefTypeInfo(hRef: int, ppTI: { value: ref<ITypeInfo> }): void;
getRefTypeOfImplType(index: int, href: { value: ref<int> }): void;
getTypeAttr(ppTypeAttr: { value: ref<nint> }): void;
getTypeComp(ppTComp: { value: ref<ITypeComp> }): void;
getTypeFlags(pTypeFlags: { value: ref<int> }): void;
getTypeKind(pTypeKind: { value: ref<TYPEKIND> }): void;
invoke(pvInstance: unknown, memid: int, wFlags: short, pDispParams: { value: ref<DISPPARAMS> }, pVarResult: nint, pExcepInfo: nint, puArgErr: { value: ref<int> }): void;
releaseTypeAttr(pTypeAttr: nint): void;
}
export interface ITypeInfo2$instance extends ITypeInfo$instance {}
export type ITypeInfo2 = ITypeInfo2$instance;
export interface ITypeLib$instance {
findName(szNameBuf: string, lHashVal: int, ppTInfo: { value: ITypeInfo[] }, rgMemId: { value: int[] }, pcFound: { value: ref<short> }): void;
getDocumentation(index: int, strName: { value: ref<string> }, strDocString: { value: ref<string> }, dwHelpContext: { value: ref<int> }, strHelpFile: { value: ref<string> }): void;
getLibAttr(ppTLibAttr: { value: ref<nint> }): void;
getTypeComp(ppTComp: { value: ref<ITypeComp> }): void;
getTypeInfo(index: int, ppTI: { value: ref<ITypeInfo> }): void;
getTypeInfoCount(): int;
getTypeInfoOfGuid(guid: { value: ref<Guid> }, ppTInfo: { value: ref<ITypeInfo> }): void;
getTypeInfoType(index: int, pTKind: { value: ref<TYPEKIND> }): void;
isName(szNameBuf: string, lHashVal: int): boolean;
releaseTLibAttr(pTLibAttr: nint): void;
}
export type ITypeLib = ITypeLib$instance;
export interface ITypeLib2$instance extends ITypeLib {
findName(szNameBuf: string, lHashVal: int, ppTInfo: { value: ITypeInfo[] }, rgMemId: { value: int[] }, pcFound: { value: ref<short> }): void;
getCustData(guid: { value: ref<Guid> }, pVarVal: { value: ref<unknown> }): void;
getDocumentation(index: int, strName: { value: ref<string> }, strDocString: { value: ref<string> }, dwHelpContext: { value: ref<int> }, strHelpFile: { value: ref<string> }): void;
getDocumentation2(index: int, pbstrHelpString: { value: ref<string> }, pdwHelpStringContext: { value: ref<int> }, pbstrHelpStringDll: { value: ref<string> }): void;
getLibAttr(ppTLibAttr: { value: ref<nint> }): void;
getLibStatistics(pcUniqueNames: nint, pcchUniqueNames: { value: ref<int> }): void;
getTypeComp(ppTComp: { value: ref<ITypeComp> }): void;
getTypeInfo(index: int, ppTI: { value: ref<ITypeInfo> }): void;
getTypeInfoCount(): int;
getTypeInfoOfGuid(guid: { value: ref<Guid> }, ppTInfo: { value: ref<ITypeInfo> }): void;
getTypeInfoType(index: int, pTKind: { value: ref<TYPEKIND> }): void;
isName(szNameBuf: string, lHashVal: int): boolean;
releaseTLibAttr(pTLibAttr: nint): void;
}
export interface ITypeLib2$instance extends ITypeLib$instance {}
export type ITypeLib2 = ITypeLib2$instance;
export interface BIND_OPTS$instance {
cbStruct: int;
grfFlags: int;
grfMode: int;
dwTickCountDeadline: int;
}
export const BIND_OPTS: {
new(): BIND_OPTS$instance;
};
export type BIND_OPTS = BIND_OPTS$instance;
export interface BINDPTR$instance {
lpfuncdesc: nint;
lpvardesc: nint;
lptcomp: nint;
}
export const BINDPTR: {
new(): BINDPTR$instance;
};
export type BINDPTR = BINDPTR$instance;
export interface CONNECTDATA$instance {
pUnk: unknown;
dwCookie: int;
}
export const CONNECTDATA: {
new(): CONNECTDATA$instance;
};
export type CONNECTDATA = CONNECTDATA$instance;
export interface DISPPARAMS$instance {
rgvarg: nint;
rgdispidNamedArgs: nint;
cArgs: int;
cNamedArgs: int;
}
export const DISPPARAMS: {
new(): DISPPARAMS$instance;
};
export type DISPPARAMS = DISPPARAMS$instance;
export interface ELEMDESC$instance {
tdesc: TYPEDESC;
desc: ELEMDESC_DESCUNION;
}
export const ELEMDESC: {
new(): ELEMDESC$instance;
};
export type ELEMDESC = ELEMDESC$instance;
export interface ELEMDESC_DESCUNION$instance {
idldesc: IDLDESC;
paramdesc: PARAMDESC;
}
export const ELEMDESC_DESCUNION: {
new(): ELEMDESC_DESCUNION$instance;
};
export type ELEMDESC_DESCUNION = ELEMDESC_DESCUNION$instance;
export interface EXCEPINFO$instance {
wCode: short;
wReserved: short;
bstrSource: string;
bstrDescription: string;
bstrHelpFile: string;
dwHelpContext: int;
pvReserved: nint;
pfnDeferredFillIn: nint;
scode: int;
}
export const EXCEPINFO: {
new(): EXCEPINFO$instance;
};
export type EXCEPINFO = EXCEPINFO$instance;
export interface FILETIME$instance {
dwLowDateTime: int;
dwHighDateTime: int;
}
export const FILETIME: {
new(): FILETIME$instance;
};
export type FILETIME = FILETIME$instance;
export interface FORMATETC$instance {
cfFormat: short;
ptd: nint;
dwAspect: DVASPECT;
lindex: int;
tymed: TYMED;
}
export const FORMATETC: {
new(): FORMATETC$instance;
};
export type FORMATETC = FORMATETC$instance;
export interface FUNCDESC$instance {
memid: int;
lprgscode: nint;
lprgelemdescParam: nint;
funckind: FUNCKIND;
invkind: INVOKEKIND;
callconv: CALLCONV;
cParams: short;
cParamsOpt: short;
oVft: short;
cScodes: short;
elemdescFunc: ELEMDESC;
wFuncFlags: short;
}
export const FUNCDESC: {
new(): FUNCDESC$instance;
};
export type FUNCDESC = FUNCDESC$instance;
export interface IDLDESC$instance {
dwReserved: nint;
wIDLFlags: IDLFLAG;
}
export const IDLDESC: {
new(): IDLDESC$instance;
};
export type IDLDESC = IDLDESC$instance;
export interface PARAMDESC$instance {
lpVarValue: nint;
wParamFlags: PARAMFLAG;
}
export const PARAMDESC: {
new(): PARAMDESC$instance;
};
export type PARAMDESC = PARAMDESC$instance;
export interface STATDATA$instance {
formatetc: FORMATETC;
advf: ADVF;
advSink: IAdviseSink;
connection: int;
}
export const STATDATA: {
new(): STATDATA$instance;
};
export type STATDATA = STATDATA$instance;
export interface STATSTG$instance {
pwcsName: string;
type_: int;
cbSize: long;
mtime: FILETIME;
ctime: FILETIME;
atime: FILETIME;
grfMode: int;
grfLocksSupported: int;
clsid: Guid;
grfStateBits: int;
reserved: int;
}
export const STATSTG: {
new(): STATSTG$instance;
};
export type STATSTG = STATSTG$instance;
export interface STGMEDIUM$instance {
tymed: TYMED;
unionmember: nint;
pUnkForRelease: unknown;
}
export const STGMEDIUM: {
new(): STGMEDIUM$instance;
};
export type STGMEDIUM = STGMEDIUM$instance;
export interface TYPEATTR$instance {
guid: Guid;
lcid: int;
dwReserved: int;
memidConstructor: int;
memidDestructor: int;
lpstrSchema: nint;
cbSizeInstance: int;
typekind: TYPEKIND;
cFuncs: short;
cVars: short;
cImplTypes: short;
cbSizeVft: short;
cbAlignment: short;
wTypeFlags: TYPEFLAGS;
wMajorVerNum: short;
wMinorVerNum: short;
tdescAlias: TYPEDESC;
idldescType: IDLDESC;
}
export const TYPEATTR: {
new(): TYPEATTR$instance;
readonly MEMBER_ID_NIL: int;
};
export type TYPEATTR = TYPEATTR$instance;
export interface TYPEDESC$instance {
lpValue: nint;
vt: short;
}
export const TYPEDESC: {
new(): TYPEDESC$instance;
};
export type TYPEDESC = TYPEDESC$instance;
export interface TYPELIBATTR$instance {
guid: Guid;
lcid: int;
syskind: SYSKIND;
wMajorVerNum: short;
wMinorVerNum: short;
wLibFlags: LIBFLAGS;
}
export const TYPELIBATTR: {
new(): TYPELIBATTR$instance;
};
export type TYPELIBATTR = TYPELIBATTR$instance;
export interface VARDESC$instance {
memid: int;
lpstrSchema: string;
desc: VARDESC_DESCUNION;
elemdescVar: ELEMDESC;
wVarFlags: short;
varkind: VARKIND;
}
export const VARDESC: {
new(): VARDESC$instance;
};
export type VARDESC = VARDESC$instance;
export interface VARDESC_DESCUNION$instance {
oInst: int;
lpvarValue: nint;
}
export const VARDESC_DESCUNION: {
new(): VARDESC_DESCUNION$instance;
};
export type VARDESC_DESCUNION = VARDESC_DESCUNION$instance;