type WebGLState = {
    program: WebGLProgram;
    activeTexture: number;
    arrayBuffer: WebGLBuffer;
    elementArrayBuffer: WebGLBuffer;
    framebuffer: WebGLFramebuffer;
    renderbuffer: WebGLRenderbuffer;
    texture: WebGLTexture;
    viewport: number[];
    blend: boolean;
    depthTest: boolean;
    cullFace: boolean;
    scissorTest: boolean;
    scissor: number[];
    blendFunc: number[];
    blendEquation: number[];
    colorMask: boolean[];
    clearColor: number[];
    pixelStoreParams: {
        unpackAlignment: number;
        unpackFlipY: boolean;
        unpackPremultiplyAlpha: boolean;
        unpackColorspaceConversion: number;
    };
};
export declare class WebGLStateManager {
    private gl;
    private tfState;
    private capturedState;
    ingoreRestore: boolean;
    debugging: boolean;
    constructor(gl: WebGLRenderingContext);
    private captureState;
    captureCurrentState(): void;
    saveState(ignoreRestore?: boolean): void;
    restoreState(): void;
    private applyState;
    logState(state: WebGLState, addedContext?: string): void;
}
export {};
