import type { FboOpts, IFbo } from "./api/buffers.js"; /** * WebGL framebuffer wrapper w/ automatic detection & support for multiple * render targets (color attachments) and optional depth buffer. Multiple * targets are only supported if the `WEBGL_draw_buffers` extension is * available. The max. number of attachments can be obtained via the * `maxAttachments` property of the FBO instance. * * ```ts * import { defFBO } from "@thi.ng/webgl"; * * // create FBO w/ 2 render targets * fbo = defFBO(gl, { tex: [tex1, tex2] }); * ``` * * https://developer.mozilla.org/en-US/docs/Web/API/WEBGL_draw_buffers */ export declare class FBO implements IFbo { gl: WebGLRenderingContext; fbo: WebGLFramebuffer; ext?: WEBGL_draw_buffers; maxAttachments: number; constructor(gl: WebGLRenderingContext, opts?: Partial); bind(): boolean; unbind(): boolean; release(): boolean; configure(opts: Partial, unbind?: boolean): boolean; validate(): boolean; } export declare const defFBO: (gl: WebGLRenderingContext, opts?: Partial) => FBO; //# sourceMappingURL=fbo.d.ts.map