export interface ShaderSources { readonly vertex: string; readonly fragment: string; } export declare class ShaderProgram { readonly gl: WebGL2RenderingContext; readonly program: WebGLProgram; private readonly uniformLocations; private readonly attributeLocations; readonly sourceSize: number; private constructor(); static create(gl: WebGL2RenderingContext, sources: ShaderSources, attributeLocations?: Record): ShaderProgram; use(): void; getUniformLocation(name: string): WebGLUniformLocation | null; getAttributeLocation(name: string): number; dispose(): void; } export declare function createProgramFromSources(gl: WebGL2RenderingContext, sources: ShaderSources, attributeLocations?: Record): ShaderProgram; //# sourceMappingURL=shaderProgram.d.ts.map