diff --git a/dlls/mshtml/htmlframe.c b/dlls/mshtml/htmlframe.c
index fd76fa22794..1a2772b98bb 100644
--- a/dlls/mshtml/htmlframe.c
+++ b/dlls/mshtml/htmlframe.c
@@ -31,10 +31,10 @@
WINE_DEFAULT_DEBUG_CHANNEL(mshtml);
-typedef struct {
+struct HTMLFrameElement {
HTMLFrameBase framebase;
IHTMLFrameElement3 IHTMLFrameElement3_iface;
-} HTMLFrameElement;
+};
static inline HTMLFrameElement *impl_from_IHTMLFrameElement3(IHTMLFrameElement3 *iface)
{
diff --git a/include/mshtml.idl b/include/mshtml.idl
index 0bdd473d0bc..ff67650244c 100644
--- a/include/mshtml.idl
+++ b/include/mshtml.idl
@@ -19427,6 +19427,29 @@ methods:
BSTR ie8_frameBorder();
}
+/*****************************************************************************
+ * HTMLFrameElement coclass
+ */
+[
+ noncreatable,
+ uuid(3050f314-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass HTMLFrameElement
+{
+ [default] dispinterface DispHTMLFrameElement;
+ /* [source, default] dispinterface HTMLControlElementEvents; */
+ /* [source] dispinterface HTMLControlElementEvents2; */
+ WINE_HTMLDATAELEMENT_INTERFACES;
+ interface IHTMLControlElement;
+ interface IHTMLFrameBase;
+ interface IHTMLFrameBase2;
+ /* interface IHTMLFrameBase3; */
+ /* interface IHTMLFrameElement; */
+ /* interface IHTMLFrameElement2; */
+ interface IHTMLFrameElement3;
+ /* interface IGetSVGDocument; */
+}
+
/*****************************************************************************
* IHTMLIFrameElement interface
*/