import { GLclampf4 } from './tuples'; import { Framebuffer } from './framebuffer'; /** * Default framebuffer with framebuffer interface. It is intended for use as default buffer binding and enables lazy * target size reconfiguration of stages. * * ``` * this._someStage.frame(this._nullFBO, frameNumber, multiFrameNumber); * ``` * * Note that this buffer does query its size from the current context's canvas. */ export declare class DefaultFramebuffer extends Framebuffer { /** * @override * Default framebuffer cannot be created. */ protected create(): WebGLFramebuffer | undefined; /** * @override * Default framebuffer cannot be deleted. */ protected delete(): void; /** * @override * @returns - Always false, since default buffer cannot have any attachments. */ protected hasAttachment(attachment: GLenum): boolean; /** * @override * Binds the default framebuffer object to the provided target. * @param target - Specifying the binding point (target). */ bind(target?: GLenum): void; /** * @override * Sets the clear color used for clearing the default color buffer. In order to have transparency working, the * canvas needs to have the alpha attribute enabled. This stage also supports premultiplied alpha, which is applied * automatically when the context's `premultipliedAlpha` attribute is set. * @param color - RGBA clear color. */ clearColor(color: GLclampf4): void; /** * Resets the size (important for valid size change detection in stages). */ resize(): void; /** * Convenience accessor: returns the renderable width of the canvas back buffer. */ get width(): GLsizei; /** * Convenience accessor: returns the renderable height of the canvas back buffer. */ get height(): GLsizei; }