+// @interface DOM* {{{
+@interface DOMObject
+@end
+
+@interface DOMCSSValue : DOMObject
+@end
+
+@interface DOMCSSPrimitiveValue : DOMCSSValue
+@property (readonly) unsigned short primitiveType;
+- (DOMRGBColor *) getRGBColorValue;
+- (float) getFloatValue:(unsigned short)unit;
+@end
+
+@interface DOMRGBColor : DOMObject
+@property (readonly, strong) DOMCSSPrimitiveValue *red;
+@property (readonly, strong) DOMCSSPrimitiveValue *green;
+@property (readonly, strong) DOMCSSPrimitiveValue *blue;
+@property (readonly, strong) DOMCSSPrimitiveValue *alpha;
+@end
+
+@interface DOMCSSStyleDeclaration : DOMObject
+- (DOMCSSValue *) getPropertyCSSValue:(NSString *)name;
+- (void) setProperty:(NSString *)name value:(NSString *)value priority:(NSString *)priority;
+@end
+
+@interface DOMNode : DOMObject
+@end
+
+@interface DOMNodeList : DOMObject
+@property (readonly) unsigned length;
+- (DOMNode *) item:(unsigned)index;
+@end
+
+@interface DOMElement : DOMNode
+@property (readonly) int scrollHeight;
+@end
+
+@interface DOMHTMLElement : DOMElement
+@property (readonly, strong) DOMCSSStyleDeclaration *style;
+@end
+
+@interface DOMHTMLBodyElement : DOMHTMLElement
+@end
+
+@interface DOMHTMLIFrameElement : DOMHTMLElement
+@end
+
+@interface DOMDocument : DOMNode
+@property (strong) DOMHTMLElement *body;
+- (DOMCSSStyleDeclaration *) getComputedStyle:(DOMElement *)element pseudoElement:(NSString *)pseudo;
+- (DOMNodeList *) getElementsByTagName:(NSString *)name;
+@end
+// }}}
+// @interface WAK* : * {{{
+@interface WAKResponder : NSObject
+@end
+
+@interface WAKView : NSObject
++ (BOOL) hasLandscapeOrientation;
+@end
+
+@interface WAKWindow : NSObject
++ (BOOL) hasLandscapeOrientation;
+@end
+// }}}
+// @interface Web* {{{
+@interface WebPreferences : NSObject
+- (void) setCacheModel:(WebCacheModel)value;
+- (void) setJavaScriptCanOpenWindowsAutomatically:(BOOL)value;
+@end
+
+@interface WebFrame : NSObject
+@property (nonatomic, readonly, copy) NSArray *childFrames;
+@property (nonatomic, readonly, strong) WebDataSource *dataSource;
+@property (nonatomic, readonly, strong) DOMDocument *DOMDocument;
+@property (nonatomic, readonly, strong) DOMHTMLElement *frameElement;
+@property (nonatomic, readonly) JSGlobalContextRef globalContext;
+@property (nonatomic, readonly, strong) WebFrame *parentFrame;
+@property (nonatomic, readonly, strong) WebDataSource *provisionalDataSource;
+@property (nonatomic, readonly, strong) WebScriptObject *windowObject;
+@end
+
+@interface WebView : WAKView
+@property (nonatomic, readonly, strong) WebFrame *mainFrame;
+@property (nonatomic, strong) WebPreferences *preferences;
+- (IBAction) reloadFromOrigin:(id)sender;
+- (void) setApplicationNameForUserAgent:(NSString *)value;
+- (void) setShouldUpdateWhileOffscreen:(BOOL)value;
+@end
+
+@interface WebScriptObject : NSObject
+- (id) evaluateWebScript:(NSString *)script;
++ (BOOL) isKeyExcludedFromWebScript:(const char *)name;
+- (JSObjectRef) JSObject;
+- (void) setWebScriptValueAtIndex:(unsigned)index value:(id)value;
+- (id) webScriptValueAtIndex:(unsigned)index;
+@end
+
+@interface WebUndefined : NSObject
++ (WebUndefined *) undefined;
+@end
+// }}}