/** * A shader effect that draws a colored outline around the sprite. * Works by sampling neighboring pixels — if any neighbor is opaque but the * current pixel is transparent, it draws the outline color. * Commonly used for selection highlights, hover states, or collectible glow. * @category Effects * @see {@link Renderable#addPostEffect} for usage * @example * // yellow outline for selection * mySprite.addPostEffect(new OutlineEffect(renderer, { * color: [1.0, 1.0, 0.0], * width: 2.0, * })); * @example * // remove the effect * mySprite.removePostEffect(outline); */ export default class OutlineEffect extends ShaderEffect { /** * @param {WebGLRenderer|WebGPURenderer|CanvasRenderer} renderer - the current renderer instance * @param {object} [options] - effect options * @param {number[]} [options.color=[1.0, 1.0, 1.0]] - outline color as [r, g, b] (0.0–1.0) * @param {number} [options.width=1.0] - outline width in pixels * @param {number[]} [options.textureSize] - texture dimensions [width, height] (defaults to renderer size) */ constructor(renderer: WebGLRenderer | WebGPURenderer | CanvasRenderer, options?: { color?: number[] | undefined; width?: number | undefined; textureSize?: number[] | undefined; }); /** * set the outline color * @param {number[]} color - outline color as [r, g, b] (0.0–1.0) */ setColor(color: number[]): void; /** * set the outline width * @param {number} width - outline width in pixels */ setWidth(width: number): void; /** * set the texture size for accurate outline width calculation * @param {number} width - texture width in pixels * @param {number} height - texture height in pixels */ setTextureSize(width: number, height: number): void; } import ShaderEffect from "./shadereffect.js"; //# sourceMappingURL=outline.d.ts.map