• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2021 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *   http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16/**
17 * WebGL 2.0
18 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
19 * @since 7
20 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
21 */
22
23import * as webgl from "./webgl";
24
25type GLint64 = number;
26/**
27 * WebGL 2.0
28 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
29 * @since 7
30 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
31 */
32type GLuint64 = number;
33/**
34 * WebGL 2.0
35 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
36 * @since 7
37 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
38 */
39interface WebGLQuery {
40}
41/**
42 * WebGL 2.0
43 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
44 * @since 7
45 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
46 */
47interface WebGLSampler {
48}
49/**
50 * WebGL 2.0
51 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
52 * @since 7
53 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
54 */
55interface WebGLSync {
56}
57/**
58 * WebGL 2.0
59 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
60 * @since 7
61 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
62 */
63interface WebGLTransformFeedback {
64}
65/**
66 * WebGL 2.0
67 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
68 * @since 7
69 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
70 */
71interface WebGLVertexArrayObject {
72}
73/**
74 * WebGL 2.0
75 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
76 * @since 7
77 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
78 */
79type Uint32List = Uint32Array | webgl.GLuint[];
80/**
81 * WebGL 2.0
82 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
83 * @since 7
84 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
85 */
86interface WebGL2RenderingContextBase {
87    readonly READ_BUFFER: webgl.GLenum;
88    readonly UNPACK_ROW_LENGTH: webgl.GLenum;
89    readonly UNPACK_SKIP_ROWS: webgl.GLenum;
90    readonly UNPACK_SKIP_PIXELS: webgl.GLenum;
91    readonly PACK_ROW_LENGTH: webgl.GLenum;
92    readonly PACK_SKIP_ROWS: webgl.GLenum;
93    readonly PACK_SKIP_PIXELS: webgl.GLenum;
94    readonly COLOR: webgl.GLenum;
95    readonly DEPTH: webgl.GLenum;
96    readonly STENCIL: webgl.GLenum;
97    readonly RED: webgl.GLenum;
98    readonly RGB8: webgl.GLenum;
99    readonly RGBA8: webgl.GLenum;
100    readonly RGB10_A2: webgl.GLenum;
101    readonly TEXTURE_BINDING_3D: webgl.GLenum;
102    readonly UNPACK_SKIP_IMAGES: webgl.GLenum;
103    readonly UNPACK_IMAGE_HEIGHT: webgl.GLenum;
104    readonly TEXTURE_3D: webgl.GLenum;
105    readonly TEXTURE_WRAP_R: webgl.GLenum;
106    readonly MAX_3D_TEXTURE_SIZE: webgl.GLenum;
107    readonly UNSIGNED_INT_2_10_10_10_REV: webgl.GLenum;
108    readonly MAX_ELEMENTS_VERTICES: webgl.GLenum;
109    readonly MAX_ELEMENTS_INDICES: webgl.GLenum;
110    readonly TEXTURE_MIN_LOD: webgl.GLenum;
111    readonly TEXTURE_MAX_LOD: webgl.GLenum;
112    readonly TEXTURE_BASE_LEVEL: webgl.GLenum;
113    readonly TEXTURE_MAX_LEVEL: webgl.GLenum;
114    readonly MIN: webgl.GLenum;
115    readonly MAX: webgl.GLenum;
116    readonly DEPTH_COMPONENT24: webgl.GLenum;
117    readonly MAX_TEXTURE_LOD_BIAS: webgl.GLenum;
118    readonly TEXTURE_COMPARE_MODE: webgl.GLenum;
119    readonly TEXTURE_COMPARE_FUNC: webgl.GLenum;
120    readonly CURRENT_QUERY: webgl.GLenum;
121    readonly QUERY_RESULT: webgl.GLenum;
122    readonly QUERY_RESULT_AVAILABLE: webgl.GLenum;
123    readonly STREAM_READ: webgl.GLenum;
124    readonly STREAM_COPY: webgl.GLenum;
125    readonly STATIC_READ: webgl.GLenum;
126    readonly STATIC_COPY: webgl.GLenum;
127    readonly DYNAMIC_READ: webgl.GLenum;
128    readonly DYNAMIC_COPY: webgl.GLenum;
129    readonly MAX_DRAW_BUFFERS: webgl.GLenum;
130    readonly DRAW_BUFFER0: webgl.GLenum;
131    readonly DRAW_BUFFER1: webgl.GLenum;
132    readonly DRAW_BUFFER2: webgl.GLenum;
133    readonly DRAW_BUFFER3: webgl.GLenum;
134    readonly DRAW_BUFFER4: webgl.GLenum;
135    readonly DRAW_BUFFER5: webgl.GLenum;
136    readonly DRAW_BUFFER6: webgl.GLenum;
137    readonly DRAW_BUFFER7: webgl.GLenum;
138    readonly DRAW_BUFFER8: webgl.GLenum;
139    readonly DRAW_BUFFER9: webgl.GLenum;
140    readonly DRAW_BUFFER10: webgl.GLenum;
141    readonly DRAW_BUFFER11: webgl.GLenum;
142    readonly DRAW_BUFFER12: webgl.GLenum;
143    readonly DRAW_BUFFER13: webgl.GLenum;
144    readonly DRAW_BUFFER14: webgl.GLenum;
145    readonly DRAW_BUFFER15: webgl.GLenum;
146    readonly MAX_FRAGMENT_UNIFORM_COMPONENTS: webgl.GLenum;
147    readonly MAX_VERTEX_UNIFORM_COMPONENTS: webgl.GLenum;
148    readonly SAMPLER_3D: webgl.GLenum;
149    readonly SAMPLER_2D_SHADOW: webgl.GLenum;
150    readonly FRAGMENT_SHADER_DERIVATIVE_HINT: webgl.GLenum;
151    readonly PIXEL_PACK_BUFFER: webgl.GLenum;
152    readonly PIXEL_UNPACK_BUFFER: webgl.GLenum;
153    readonly PIXEL_PACK_BUFFER_BINDING: webgl.GLenum;
154    readonly PIXEL_UNPACK_BUFFER_BINDING: webgl.GLenum;
155    readonly FLOAT_MAT2x3: webgl.GLenum;
156    readonly FLOAT_MAT2x4: webgl.GLenum;
157    readonly FLOAT_MAT3x2: webgl.GLenum;
158    readonly FLOAT_MAT3x4: webgl.GLenum;
159    readonly FLOAT_MAT4x2: webgl.GLenum;
160    readonly FLOAT_MAT4x3: webgl.GLenum;
161    readonly SRGB: webgl.GLenum;
162    readonly SRGB8: webgl.GLenum;
163    readonly SRGB8_ALPHA8: webgl.GLenum;
164    readonly COMPARE_REF_TO_TEXTURE: webgl.GLenum;
165    readonly RGBA32F: webgl.GLenum;
166    readonly RGB32F: webgl.GLenum;
167    readonly RGBA16F: webgl.GLenum;
168    readonly RGB16F: webgl.GLenum;
169    readonly VERTEX_ATTRIB_ARRAY_INTEGER: webgl.GLenum;
170    readonly MAX_ARRAY_TEXTURE_LAYERS: webgl.GLenum;
171    readonly MIN_PROGRAM_TEXEL_OFFSET: webgl.GLenum;
172    readonly MAX_PROGRAM_TEXEL_OFFSET: webgl.GLenum;
173    readonly MAX_VARYING_COMPONENTS: webgl.GLenum;
174    readonly TEXTURE_2D_ARRAY: webgl.GLenum;
175    readonly TEXTURE_BINDING_2D_ARRAY: webgl.GLenum;
176    readonly R11F_G11F_B10F: webgl.GLenum;
177    readonly UNSIGNED_INT_10F_11F_11F_REV: webgl.GLenum;
178    readonly RGB9_E5: webgl.GLenum;
179    readonly UNSIGNED_INT_5_9_9_9_REV: webgl.GLenum;
180    readonly TRANSFORM_FEEDBACK_BUFFER_MODE: webgl.GLenum;
181    readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: webgl.GLenum;
182    readonly TRANSFORM_FEEDBACK_VARYINGS: webgl.GLenum;
183    readonly TRANSFORM_FEEDBACK_BUFFER_START: webgl.GLenum;
184    readonly TRANSFORM_FEEDBACK_BUFFER_SIZE: webgl.GLenum;
185    readonly TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: webgl.GLenum;
186    readonly RASTERIZER_DISCARD: webgl.GLenum;
187    readonly MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: webgl.GLenum;
188    readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: webgl.GLenum;
189    readonly INTERLEAVED_ATTRIBS: webgl.GLenum;
190    readonly SEPARATE_ATTRIBS: webgl.GLenum;
191    readonly TRANSFORM_FEEDBACK_BUFFER: webgl.GLenum;
192    readonly TRANSFORM_FEEDBACK_BUFFER_BINDING: webgl.GLenum;
193    readonly RGBA32UI: webgl.GLenum;
194    readonly RGB32UI: webgl.GLenum;
195    readonly RGBA16UI: webgl.GLenum;
196    readonly RGB16UI: webgl.GLenum;
197    readonly RGBA8UI: webgl.GLenum;
198    readonly RGB8UI: webgl.GLenum;
199    readonly RGBA32I: webgl.GLenum;
200    readonly RGB32I: webgl.GLenum;
201    readonly RGBA16I: webgl.GLenum;
202    readonly RGB16I: webgl.GLenum;
203    readonly RGBA8I: webgl.GLenum;
204    readonly RGB8I: webgl.GLenum;
205    readonly RED_INTEGER: webgl.GLenum;
206    readonly RGB_INTEGER: webgl.GLenum;
207    readonly RGBA_INTEGER: webgl.GLenum;
208    readonly SAMPLER_2D_ARRAY: webgl.GLenum;
209    readonly SAMPLER_2D_ARRAY_SHADOW: webgl.GLenum;
210    readonly SAMPLER_CUBE_SHADOW: webgl.GLenum;
211    readonly UNSIGNED_INT_VEC2: webgl.GLenum;
212    readonly UNSIGNED_INT_VEC3: webgl.GLenum;
213    readonly UNSIGNED_INT_VEC4: webgl.GLenum;
214    readonly INT_SAMPLER_2D: webgl.GLenum;
215    readonly INT_SAMPLER_3D: webgl.GLenum;
216    readonly INT_SAMPLER_CUBE: webgl.GLenum;
217    readonly INT_SAMPLER_2D_ARRAY: webgl.GLenum;
218    readonly UNSIGNED_INT_SAMPLER_2D: webgl.GLenum;
219    readonly UNSIGNED_INT_SAMPLER_3D: webgl.GLenum;
220    readonly UNSIGNED_INT_SAMPLER_CUBE: webgl.GLenum;
221    readonly UNSIGNED_INT_SAMPLER_2D_ARRAY: webgl.GLenum;
222    readonly DEPTH_COMPONENT32F: webgl.GLenum;
223    readonly DEPTH32F_STENCIL8: webgl.GLenum;
224    readonly FLOAT_32_UNSIGNED_INT_24_8_REV: webgl.GLenum;
225    readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: webgl.GLenum;
226    readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: webgl.GLenum;
227    readonly FRAMEBUFFER_ATTACHMENT_RED_SIZE: webgl.GLenum;
228    readonly FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: webgl.GLenum;
229    readonly FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: webgl.GLenum;
230    readonly FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: webgl.GLenum;
231    readonly FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: webgl.GLenum;
232    readonly FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: webgl.GLenum;
233    readonly FRAMEBUFFER_DEFAULT: webgl.GLenum;
234    readonly UNSIGNED_INT_24_8: webgl.GLenum;
235    readonly DEPTH24_STENCIL8: webgl.GLenum;
236    readonly UNSIGNED_NORMALIZED: webgl.GLenum;
237    readonly DRAW_FRAMEBUFFER_BINDING: webgl.GLenum;
238    readonly READ_FRAMEBUFFER: webgl.GLenum;
239    readonly DRAW_FRAMEBUFFER: webgl.GLenum;
240    readonly READ_FRAMEBUFFER_BINDING: webgl.GLenum;
241    readonly RENDERBUFFER_SAMPLES: webgl.GLenum;
242    readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: webgl.GLenum;
243    readonly MAX_COLOR_ATTACHMENTS: webgl.GLenum;
244    readonly COLOR_ATTACHMENT1: webgl.GLenum;
245    readonly COLOR_ATTACHMENT2: webgl.GLenum;
246    readonly COLOR_ATTACHMENT3: webgl.GLenum;
247    readonly COLOR_ATTACHMENT4: webgl.GLenum;
248    readonly COLOR_ATTACHMENT5: webgl.GLenum;
249    readonly COLOR_ATTACHMENT6: webgl.GLenum;
250    readonly COLOR_ATTACHMENT7: webgl.GLenum;
251    readonly COLOR_ATTACHMENT8: webgl.GLenum;
252    readonly COLOR_ATTACHMENT9: webgl.GLenum;
253    readonly COLOR_ATTACHMENT10: webgl.GLenum;
254    readonly COLOR_ATTACHMENT11: webgl.GLenum;
255    readonly COLOR_ATTACHMENT12: webgl.GLenum;
256    readonly COLOR_ATTACHMENT13: webgl.GLenum;
257    readonly COLOR_ATTACHMENT14: webgl.GLenum;
258    readonly COLOR_ATTACHMENT15: webgl.GLenum;
259    readonly FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: webgl.GLenum;
260    readonly MAX_SAMPLES: webgl.GLenum;
261    readonly HALF_FLOAT: webgl.GLenum;
262    readonly RG: webgl.GLenum;
263    readonly RG_INTEGER: webgl.GLenum;
264    readonly R8: webgl.GLenum;
265    readonly RG8: webgl.GLenum;
266    readonly R16F: webgl.GLenum;
267    readonly R32F: webgl.GLenum;
268    readonly RG16F: webgl.GLenum;
269    readonly RG32F: webgl.GLenum;
270    readonly R8I: webgl.GLenum;
271    readonly R8UI: webgl.GLenum;
272    readonly R16I: webgl.GLenum;
273    readonly R16UI: webgl.GLenum;
274    readonly R32I: webgl.GLenum;
275    readonly R32UI: webgl.GLenum;
276    readonly RG8I: webgl.GLenum;
277    readonly RG8UI: webgl.GLenum;
278    readonly RG16I: webgl.GLenum;
279    readonly RG16UI: webgl.GLenum;
280    readonly RG32I: webgl.GLenum;
281    readonly RG32UI: webgl.GLenum;
282    readonly VERTEX_ARRAY_BINDING: webgl.GLenum;
283    readonly R8_SNORM: webgl.GLenum;
284    readonly RG8_SNORM: webgl.GLenum;
285    readonly RGB8_SNORM: webgl.GLenum;
286    readonly RGBA8_SNORM: webgl.GLenum;
287    readonly SIGNED_NORMALIZED: webgl.GLenum;
288    readonly COPY_READ_BUFFER: webgl.GLenum;
289    readonly COPY_WRITE_BUFFER: webgl.GLenum;
290    readonly COPY_READ_BUFFER_BINDING: webgl.GLenum;
291    readonly COPY_WRITE_BUFFER_BINDING: webgl.GLenum;
292    readonly UNIFORM_BUFFER: webgl.GLenum;
293    readonly UNIFORM_BUFFER_BINDING: webgl.GLenum;
294    readonly UNIFORM_BUFFER_START: webgl.GLenum;
295    readonly UNIFORM_BUFFER_SIZE: webgl.GLenum;
296    readonly MAX_VERTEX_UNIFORM_BLOCKS: webgl.GLenum;
297    readonly MAX_FRAGMENT_UNIFORM_BLOCKS: webgl.GLenum;
298    readonly MAX_COMBINED_UNIFORM_BLOCKS: webgl.GLenum;
299    readonly MAX_UNIFORM_BUFFER_BINDINGS: webgl.GLenum;
300    readonly MAX_UNIFORM_BLOCK_SIZE: webgl.GLenum;
301    readonly MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: webgl.GLenum;
302    readonly MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: webgl.GLenum;
303    readonly UNIFORM_BUFFER_OFFSET_ALIGNMENT: webgl.GLenum;
304    readonly ACTIVE_UNIFORM_BLOCKS: webgl.GLenum;
305    readonly UNIFORM_TYPE: webgl.GLenum;
306    readonly UNIFORM_SIZE: webgl.GLenum;
307    readonly UNIFORM_BLOCK_INDEX: webgl.GLenum;
308    readonly UNIFORM_OFFSET: webgl.GLenum;
309    readonly UNIFORM_ARRAY_STRIDE: webgl.GLenum;
310    readonly UNIFORM_MATRIX_STRIDE: webgl.GLenum;
311    readonly UNIFORM_IS_ROW_MAJOR: webgl.GLenum;
312    readonly UNIFORM_BLOCK_BINDING: webgl.GLenum;
313    readonly UNIFORM_BLOCK_DATA_SIZE: webgl.GLenum;
314    readonly UNIFORM_BLOCK_ACTIVE_UNIFORMS: webgl.GLenum;
315    readonly UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: webgl.GLenum;
316    readonly UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: webgl.GLenum;
317    readonly UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: webgl.GLenum;
318    readonly INVALID_INDEX: webgl.GLenum;
319    readonly MAX_VERTEX_OUTPUT_COMPONENTS: webgl.GLenum;
320    readonly MAX_FRAGMENT_INPUT_COMPONENTS: webgl.GLenum;
321    readonly MAX_SERVER_WAIT_TIMEOUT: webgl.GLenum;
322    readonly OBJECT_TYPE: webgl.GLenum;
323    readonly SYNC_CONDITION: webgl.GLenum;
324    readonly SYNC_STATUS: webgl.GLenum;
325    readonly SYNC_FLAGS: webgl.GLenum;
326    readonly SYNC_FENCE: webgl.GLenum;
327    readonly SYNC_GPU_COMMANDS_COMPLETE: webgl.GLenum;
328    readonly UNSIGNALED: webgl.GLenum;
329    readonly SIGNALED: webgl.GLenum;
330    readonly ALREADY_SIGNALED: webgl.GLenum;
331    readonly TIMEOUT_EXPIRED: webgl.GLenum;
332    readonly CONDITION_SATISFIED: webgl.GLenum;
333    readonly WAIT_FAILED: webgl.GLenum;
334    readonly SYNC_FLUSH_COMMANDS_BIT: webgl.GLenum;
335    readonly VERTEX_ATTRIB_ARRAY_DIVISOR: webgl.GLenum;
336    readonly ANY_SAMPLES_PASSED: webgl.GLenum;
337    readonly ANY_SAMPLES_PASSED_CONSERVATIVE: webgl.GLenum;
338    readonly SAMPLER_BINDING: webgl.GLenum;
339    readonly RGB10_A2UI: webgl.GLenum;
340    readonly INT_2_10_10_10_REV: webgl.GLenum;
341    readonly TRANSFORM_FEEDBACK: webgl.GLenum;
342    readonly TRANSFORM_FEEDBACK_PAUSED: webgl.GLenum;
343    readonly TRANSFORM_FEEDBACK_ACTIVE: webgl.GLenum;
344    readonly TRANSFORM_FEEDBACK_BINDING: webgl.GLenum;
345    readonly TEXTURE_IMMUTABLE_FORMAT: webgl.GLenum;
346    readonly MAX_ELEMENT_INDEX: webgl.GLenum;
347    readonly TEXTURE_IMMUTABLE_LEVELS: webgl.GLenum;
348    readonly TIMEOUT_IGNORED: GLint64;
349    readonly MAX_CLIENT_WAIT_TIMEOUT_WEBGL: webgl.GLenum;
350    copyBufferSubData(readTarget: webgl.GLenum, writeTarget: webgl.GLenum, readOffset: webgl.GLintptr, writeOffset: webgl.GLintptr, size: webgl.GLsizeiptr): void;
351    getBufferSubData(target: webgl.GLenum, srcByteOffset: webgl.GLintptr, dstBuffer: ArrayBufferView, dstOffset?: webgl.GLuint, length?: webgl.GLuint): void;
352    blitFramebuffer(srcX0: webgl.GLint, srcY0: webgl.GLint, srcX1: webgl.GLint, srcY1: webgl.GLint, dstX0: webgl.GLint, dstY0: webgl.GLint, dstX1: webgl.GLint, dstY1: webgl.GLint, mask: webgl.GLbitfield, filter: webgl.GLenum): void;
353    framebufferTextureLayer(target: webgl.GLenum, attachment: webgl.GLenum, texture: webgl.WebGLTexture | null, level: webgl.GLint, layer: webgl.GLint): void;
354    invalidateFramebuffer(target: webgl.GLenum, attachments: webgl.GLenum[]): void;
355    invalidateSubFramebuffer(target: webgl.GLenum, attachments: webgl.GLenum[], x: webgl.GLint, y: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei): void;
356    readBuffer(src: webgl.GLenum): void;
357    getInternalformatParameter(target: webgl.GLenum, internalformat: webgl.GLenum, pname: webgl.GLenum): any;
358    renderbufferStorageMultisample(target: webgl.GLenum, samples: webgl.GLsizei, internalformat: webgl.GLenum, width: webgl.GLsizei, height: webgl.GLsizei): void;
359    texStorage2D(target: webgl.GLenum, levels: webgl.GLsizei, internalformat: webgl.GLenum, width: webgl.GLsizei, height: webgl.GLsizei): void;
360    texStorage3D(target: webgl.GLenum, levels: webgl.GLsizei, internalformat: webgl.GLenum, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei): void;
361    texImage3D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, border: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, pboOffset: webgl.GLintptr): void;
362    texImage3D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, border: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, source: webgl.TexImageSource): void;
363    texImage3D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, border: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, srcData: ArrayBufferView | null): void;
364    texImage3D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, border: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, srcData: ArrayBufferView, srcOffset: webgl.GLuint): void;
365    texSubImage3D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, zoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, pboOffset: webgl.GLintptr): void;
366    texSubImage3D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, zoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, source: webgl.TexImageSource): void;
367    texSubImage3D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, zoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, srcData: ArrayBufferView | null, srcOffset?: webgl.GLuint): void;
368    copyTexSubImage3D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, zoffset: webgl.GLint, x: webgl.GLint, y: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei): void;
369    compressedTexImage3D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLenum, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, border: webgl.GLint, imageSize: webgl.GLsizei, offset: webgl.GLintptr): void;
370    compressedTexImage3D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLenum, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, border: webgl.GLint, srcData: ArrayBufferView, srcOffset?: webgl.GLuint, srcLengthOverride?: webgl.GLuint): void;
371    compressedTexSubImage3D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, zoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, format: webgl.GLenum, imageSize: webgl.GLsizei, offset: webgl.GLintptr): void;
372    compressedTexSubImage3D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, zoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, depth: webgl.GLsizei, format: webgl.GLenum, srcData: ArrayBufferView, srcOffset?: webgl.GLuint, srcLengthOverride?: webgl.GLuint): void;
373    getFragDataLocation(program: webgl.WebGLProgram, name: string): webgl.GLint;
374    uniform1ui(location: webgl.WebGLUniformLocation | null, v0: webgl.GLuint): void;
375    uniform2ui(location: webgl.WebGLUniformLocation | null, v0: webgl.GLuint, v1: webgl.GLuint): void;
376    uniform3ui(location: webgl.WebGLUniformLocation | null, v0: webgl.GLuint, v1: webgl.GLuint, v2: webgl.GLuint): void;
377    uniform4ui(location: webgl.WebGLUniformLocation | null, v0: webgl.GLuint, v1: webgl.GLuint, v2: webgl.GLuint, v3: webgl.GLuint): void;
378    uniform1uiv(location: webgl.WebGLUniformLocation | null, data: Uint32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
379    uniform2uiv(location: webgl.WebGLUniformLocation | null, data: Uint32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
380    uniform3uiv(location: webgl.WebGLUniformLocation | null, data: Uint32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
381    uniform4uiv(location: webgl.WebGLUniformLocation | null, data: Uint32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
382    uniformMatrix3x2fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
383    uniformMatrix4x2fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
384    uniformMatrix2x3fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
385    uniformMatrix4x3fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
386    uniformMatrix2x4fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
387    uniformMatrix3x4fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
388    vertexAttribI4i(index: webgl.GLuint, x: webgl.GLint, y: webgl.GLint, z: webgl.GLint, w: webgl.GLint): void;
389    vertexAttribI4iv(index: webgl.GLuint, values: webgl.Int32List): void;
390    vertexAttribI4ui(index: webgl.GLuint, x: webgl.GLuint, y: webgl.GLuint, z: webgl.GLuint, w: webgl.GLuint): void;
391    vertexAttribI4uiv(index: webgl.GLuint, values: Uint32List): void;
392    vertexAttribIPointer(index: webgl.GLuint, size: webgl.GLint, type: webgl.GLenum, stride: webgl.GLsizei, offset: webgl.GLintptr): void;
393    vertexAttribDivisor(index: webgl.GLuint, divisor: webgl.GLuint): void;
394    drawArraysInstanced(mode: webgl.GLenum, first: webgl.GLint, count: webgl.GLsizei, instanceCount: webgl.GLsizei): void;
395    drawElementsInstanced(mode: webgl.GLenum, count: webgl.GLsizei, type: webgl.GLenum, offset: webgl.GLintptr, instanceCount: webgl.GLsizei): void;
396    drawRangeElements(mode: webgl.GLenum, start: webgl.GLuint, end: webgl.GLuint, count: webgl.GLsizei, type: webgl.GLenum, offset: webgl.GLintptr): void;
397    drawBuffers(buffers: webgl.GLenum[]): void;
398    clearBufferfv(buffer: webgl.GLenum, drawbuffer: webgl.GLint, values: webgl.Float32List, srcOffset?: webgl.GLuint): void;
399    clearBufferiv(buffer: webgl.GLenum, drawbuffer: webgl.GLint, values: webgl.Int32List, srcOffset?: webgl.GLuint): void;
400    clearBufferuiv(buffer: webgl.GLenum, drawbuffer: webgl.GLint, values: Uint32List, srcOffset?: webgl.GLuint): void;
401    clearBufferfi(buffer: webgl.GLenum, drawbuffer: webgl.GLint, depth: webgl.GLfloat, stencil: webgl.GLint): void;
402    createQuery(): WebGLQuery | null;
403    deleteQuery(query: WebGLQuery | null): void;
404    isQuery(query: WebGLQuery | null): webgl.GLboolean;
405    beginQuery(target: webgl.GLenum, query: WebGLQuery): void;
406    endQuery(target: webgl.GLenum): void;
407    getQuery(target: webgl.GLenum, pname: webgl.GLenum): WebGLQuery | null;
408    getQueryParameter(query: WebGLQuery, pname: webgl.GLenum): any;
409    createSampler(): WebGLSampler | null;
410    deleteSampler(sampler: WebGLSampler | null): void;
411    isSampler(sampler: WebGLSampler | null): webgl.GLboolean;
412    bindSampler(unit: webgl.GLuint, sampler: WebGLSampler | null): void;
413    samplerParameteri(sampler: WebGLSampler, pname: webgl.GLenum, param: webgl.GLint): void;
414    samplerParameterf(sampler: WebGLSampler, pname: webgl.GLenum, param: webgl.GLfloat): void;
415    getSamplerParameter(sampler: WebGLSampler, pname: webgl.GLenum): any;
416    fenceSync(condition: webgl.GLenum, flags: webgl.GLbitfield): WebGLSync | null;
417    isSync(sync: WebGLSync | null): webgl.GLboolean;
418    deleteSync(sync: WebGLSync | null): void;
419    clientWaitSync(sync: WebGLSync, flags: webgl.GLbitfield, timeout: GLuint64 ): webgl.GLenum;
420    waitSync(sync: WebGLSync, flags: webgl.GLbitfield, timeout: GLint64): void;
421    getSyncParameter(sync: WebGLSync, pname: webgl.GLenum): any;
422    createTransformFeedback(): WebGLTransformFeedback | null;
423    deleteTransformFeedback(tf: WebGLTransformFeedback | null): void;
424    isTransformFeedback(tf: WebGLTransformFeedback | null): webgl.GLboolean;
425    bindTransformFeedback(target: webgl.GLenum, tf: WebGLTransformFeedback | null): void;
426    beginTransformFeedback(primitiveMode: webgl.GLenum): void;
427    endTransformFeedback(): void;
428    transformFeedbackVaryings(program: webgl.WebGLProgram, varyings: string[], bufferMode: webgl.GLenum): void;
429    getTransformFeedbackVarying(program: webgl.WebGLProgram, index: webgl.GLuint): webgl.WebGLActiveInfo | null;
430    pauseTransformFeedback(): void;
431    resumeTransformFeedback(): void;
432    bindBufferBase(target: webgl.GLenum, index: webgl.GLuint, buffer: webgl.WebGLBuffer | null): void;
433    bindBufferRange(target: webgl.GLenum, index: webgl.GLuint, buffer: webgl.WebGLBuffer | null, offset: webgl.GLintptr, size: webgl.GLsizeiptr): void;
434    getIndexedParameter(target: webgl.GLenum, index: webgl.GLuint): any;
435    getUniformIndices(program: webgl.WebGLProgram, uniformNames: string[]): webgl.GLuint[] | null;
436    getActiveUniforms(program: webgl.WebGLProgram, uniformIndices: webgl.GLuint[], pname: webgl.GLenum): any;
437    getUniformBlockIndex(program: webgl.WebGLProgram, uniformBlockName: string): webgl.GLuint;
438    getActiveUniformBlockParameter(program: webgl.WebGLProgram, uniformBlockIndex: webgl.GLuint, pname: webgl.GLenum): any;
439    getActiveUniformBlockName(program: webgl.WebGLProgram, uniformBlockIndex: webgl.GLuint): string | null;
440    uniformBlockBinding(program: webgl.WebGLProgram, uniformBlockIndex: webgl.GLuint, uniformBlockBinding: webgl.GLuint): void;
441    createVertexArray(): WebGLVertexArrayObject | null;
442    deleteVertexArray(vertexArray: WebGLVertexArrayObject | null): void;
443    isVertexArray(vertexArray: WebGLVertexArrayObject | null): webgl.GLboolean;
444    bindVertexArray(array: WebGLVertexArrayObject | null): void;
445}
446/**
447 * WebGL 2.0
448 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
449 * @since 7
450 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
451 */
452interface WebGL2RenderingContextOverloads {
453    bufferData(target: webgl.GLenum, size: webgl.GLsizeiptr, usage: webgl.GLenum): void;
454    bufferData(target: webgl.GLenum, srcData: BufferSource | null, usage: webgl.GLenum): void;
455    bufferSubData(target: webgl.GLenum, dstByteOffset: webgl.GLintptr, srcData: BufferSource): void;
456    bufferData(target: webgl.GLenum, srcData: ArrayBufferView, usage: webgl.GLenum, srcOffset: webgl.GLuint, length?: webgl.GLuint): void;
457    bufferSubData(target: webgl.GLenum, dstByteOffset: webgl.GLintptr, srcData: ArrayBufferView, srcOffset: webgl.GLuint, length?: webgl.GLuint): void;
458    texImage2D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, border: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, pixels: ArrayBufferView | null): void;
459    texImage2D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, source: webgl.TexImageSource): void;
460    texSubImage2D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, pixels: ArrayBufferView | null): void;
461    texSubImage2D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, source: webgl.TexImageSource): void;
462    texImage2D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, border: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, pboOffset: webgl.GLintptr): void;
463    texImage2D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, border: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, source: webgl.TexImageSource): void;
464    texImage2D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, border: webgl.GLint, format: webgl.GLenum, type: webgl.GLenum, srcData: ArrayBufferView, srcOffset: webgl.GLuint): void;
465    texSubImage2D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, pboOffset: webgl.GLintptr): void;
466    texSubImage2D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, source: webgl.TexImageSource): void;
467    texSubImage2D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, srcData: ArrayBufferView, srcOffset: webgl.GLuint): void;
468    compressedTexImage2D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLenum, width: webgl.GLsizei, height: webgl.GLsizei, border: webgl.GLint, imageSize: webgl.GLsizei, offset: webgl.GLintptr): void;
469    compressedTexImage2D(target: webgl.GLenum, level: webgl.GLint, internalformat: webgl.GLenum, width: webgl.GLsizei, height: webgl.GLsizei, border: webgl.GLint, srcData: ArrayBufferView, srcOffset?: webgl.GLuint, srcLengthOverride?: webgl.GLuint): void;
470    compressedTexSubImage2D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, imageSize: webgl.GLsizei, offset: webgl.GLintptr): void;
471    compressedTexSubImage2D(target: webgl.GLenum, level: webgl.GLint, xoffset: webgl.GLint, yoffset: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, srcData: ArrayBufferView, srcOffset?: webgl.GLuint, srcLengthOverride?: webgl.GLuint): void;
472    uniform1fv(location: webgl.WebGLUniformLocation | null, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
473    uniform2fv(location: webgl.WebGLUniformLocation | null, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
474    uniform3fv(location: webgl.WebGLUniformLocation | null, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
475    uniform4fv(location: webgl.WebGLUniformLocation | null, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
476    uniform1iv(location: webgl.WebGLUniformLocation | null, data: webgl.Int32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
477    uniform2iv(location: webgl.WebGLUniformLocation | null, data: webgl.Int32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
478    uniform3iv(location: webgl.WebGLUniformLocation | null, data: webgl.Int32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
479    uniform4iv(location: webgl.WebGLUniformLocation | null, data: webgl.Int32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
480    uniformMatrix2fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
481    uniformMatrix3fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
482    uniformMatrix4fv(location: webgl.WebGLUniformLocation | null, transpose: webgl.GLboolean, data: webgl.Float32List, srcOffset?: webgl.GLuint, srcLength?: webgl.GLuint): void;
483    readPixels(x: webgl.GLint, y: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, dstData: ArrayBufferView | null): void;
484    readPixels(x: webgl.GLint, y: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, offset: webgl.GLintptr): void;
485    readPixels(x: webgl.GLint, y: webgl.GLint, width: webgl.GLsizei, height: webgl.GLsizei, format: webgl.GLenum, type: webgl.GLenum, dstData: ArrayBufferView, dstOffset: webgl.GLuint): void;
486}
487/**
488 * WebGL 2.0
489 * @see https://www.khronos.org/registry/webgl/specs/latest/2.0/
490 * @since 7
491 * @syscap SystemCapability.Graphic.Graphic2D.WebGL2
492 */
493export interface WebGL2RenderingContext extends WebGL2RenderingContextBase, WebGL2RenderingContextOverloads, WebGLRenderingContextBase {
494}
495