declare class QGLWidget extends QWidget {

    /* Properties */

    /* Methods */
    constructor(context: QGLContext, parent: QWidget, name: string);
    constructor(parent: QWidget, name: string);
    constructor(format: QGLFormat, parent: QWidget, name: string);

    autoBufferSwap(): boolean;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    bindTexture(image: QImage, target: number): number;
    bindTexture(image: QImage, target: number, format: number): number;
    bindTexture(image: QImage, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(image: QImage, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(pixmap: QPixmap, target: number): number;
    bindTexture(pixmap: QPixmap, target: number, format: number): number;
    bindTexture(pixmap: QPixmap, GL_TEXTURE_2D: QMacCompatGLenum): number;
    bindTexture(pixmap: QPixmap, obj: QMacCompatGLenum, format: QMacCompatGLint): number;
    bindTexture(fileName: QString): number;
    colormap(): any;
    context(): any;
    convertToGLFormat(img: QImage): QImage;
    deleteTexture(tx_id: number): void;
    deleteTexture(tx_id: QMacCompatGLuint): void;
    deleteTexture(tx_id: number): void;
    deleteTexture(tx_id: QMacCompatGLuint): void;
    doneCurrent(): void;
    doubleBuffer(): boolean;
    drawTexture(point: QPointF, textureId: number, textureTarget: number): void;
    drawTexture(point: QPointF, textureId: QMacCompatGLuint, textureTarget: QMacCompatGLenum): void;
    drawTexture(target: QRectF, textureId: number, textureTarget: number): void;
    drawTexture(target: QRectF, textureId: QMacCompatGLuint, textureTarget: QMacCompatGLenum): void;
    drawTexture(point: QPointF, textureId: number, textureTarget: number): void;
    drawTexture(point: QPointF, textureId: QMacCompatGLuint, textureTarget: QMacCompatGLenum): void;
    drawTexture(target: QRectF, textureId: number, textureTarget: number): void;
    drawTexture(target: QRectF, textureId: QMacCompatGLuint, textureTarget: QMacCompatGLenum): void;
    drawTexture(point: QPointF, textureId: number, textureTarget: number): void;
    drawTexture(point: QPointF, textureId: QMacCompatGLuint, textureTarget: QMacCompatGLenum): void;
    drawTexture(target: QRectF, textureId: number, textureTarget: number): void;
    drawTexture(target: QRectF, textureId: QMacCompatGLuint, textureTarget: QMacCompatGLenum): void;
    drawTexture(point: QPointF, textureId: number, textureTarget: number): void;
    drawTexture(point: QPointF, textureId: QMacCompatGLuint, textureTarget: QMacCompatGLenum): void;
    drawTexture(target: QRectF, textureId: number, textureTarget: number): void;
    drawTexture(target: QRectF, textureId: QMacCompatGLuint, textureTarget: QMacCompatGLenum): void;
    event(obj: QEvent): boolean;
    //fontDisplayListBase(fnt: QFont, listBase: number, ###: \/\/): number;
    format(): QGLFormat;
    glDraw(): void;
    glInit(): void;
    grabFrameBuffer(withAlpha: boolean): QImage;
    initializeGL(): void;
    initializeOverlayGL(): void;
    isSharing(): boolean;
    isValid(): boolean;
    makeCurrent(): void;
    makeOverlayCurrent(): void;
    overlayContext(): any;
    paintEvent(obj: QPaintEvent): void;
    paintGL(): void;
    paintOverlayGL(): void;
    qglClearColor(c: QColor): void;
    qglColor(c: QColor): void;
    renderPixmap(w: number, h: number, useContext: boolean): QPixmap;
    renderText(x: number, y: number, z: number, str: QString): void;
    renderText(x: number, y: number, str: QString): void;
    renderText(x: number, y: number, z: number, str: QString): void;
    renderText(x: number, y: number, str: QString): void;
    resizeEvent(obj: QResizeEvent): void;
    resizeGL(w: number, h: number): void;
    resizeOverlayGL(w: number, h: number): void;
    setAutoBufferSwap(on: boolean): void;
    setColormap(map: QGLColormap): void;
    setContext(context: QGLContext, shareContext: QGLContext): void;
    setFormat(format: QGLFormat): void;
    setMouseTracking(enable: boolean): void;
    swapBuffers(): void;
    updateGL(): void;
    updateOverlayGL(): void;
}