import { FragmentShader } from '../../shader/fragment'; import { ShaderProgram } from '../../shader/program'; import { VertexShader } from '../../shader/vertex'; import { Component } from '../component'; /** * Built-in Shader Component, defining the Shader an Entity will use in rendering * * @see ShaderProgram */ export declare class Shader extends Component { private readonly program; /** * Constructor. Take the ShaderProgram to use, and extract its details into the Component * * @param program the ShaderProgram to use */ constructor(program: ShaderProgram); /** * Getter for the Shader's name, as provided in its ShaderProgram config */ get programName(): string; /** * Getter for the Shader's VertexShader, as provided in its ShaderProgram config */ get vertex(): VertexShader; /** * Getter for the Shader's FragmentShader, as provided in its ShaderProgram config */ get fragment(): FragmentShader; }