import TexturePainter from './TexturePainter';
import Viewport from './Viewport';
import BlockPainter from 'parsegraph-blockpainter';
export declare enum MenuIcon {
    MAIN = 0,
    UNDO = 1,
    REDO = 2,
    VSPLIT = 3,
    HSPLIT = 4,
    RESET_CAMERA = 5,
    CLOSE = 6
}
declare class BurgerMenuLocation {
    icon: MenuIcon;
    location: number;
}
export default class BurgerMenu {
    _viewport: Viewport;
    _iconImage: HTMLImageElement;
    _iconReady: boolean;
    _needsRepaint: boolean;
    _menuOpened: boolean;
    _textInput: HTMLInputElement;
    _blockPainter: BlockPainter;
    _iconTexture: WebGLTexture;
    _iconPainter: TexturePainter;
    _menuHovered: MenuIcon;
    _iconLocations: BurgerMenuLocation[];
    constructor(viewport: Viewport);
    mount(): void;
    scheduleRepaint(): void;
    scheduleRender(): void;
    getIcon(x: number, y: number): MenuIcon;
    onMousemove(x: number, y: number): boolean;
    onMousedown(x: number, y: number): boolean;
    dispose(): void;
    contextChanged(isLost: boolean): void;
    closeMenu(): void;
    drawIcon(iconIndex: MenuIcon, x: number, y?: number): void;
    paint(): void;
    render(): void;
    needsRepaint(): boolean;
    gl(): WebGLRenderingContext;
    window(): import("parsegraph-window").BasicWindow;
}
export {};
//# sourceMappingURL=BurgerMenu.d.ts.map