import * as PIXI from 'pixi.js';
import { Color } from './Colors';
type vec3 = [number, number, number];
/** Uniforms used by the shader. */
export interface WellboreUniforms {
    /** Color of lighted wellbore on the format: [R, G, B]. */
    wellboreColor1: vec3;
    /** Color of shaded wellbore on the format: [R, G, B]. */
    wellboreColor2: vec3;
    /** True if completion and ticks should be visible. */
    completionVisible: boolean;
    /** True if wellbore should be visible. */
    wellboreVisible: boolean;
    status: number;
}
export declare class WellboreShader {
    private static program;
    /**
   * Get shader for wellbore.
   * @param color Color used for wellbore
   * @param wellboreWidth Width of wellbore
   * @return PIXI shader
   */
    static get(color: Color, completionVisible: boolean, wellboreVisible: boolean): PIXI.Shader;
    /** Build wellbore shader with assigned variables. */
    static build(maxScale: number, wellboreDash: number): void;
}
export interface RootUniforms {
    active: boolean;
    circleColor1: [number, number, number];
    circleColor2: [number, number, number];
    rootRadius: number;
}
export declare class RootShader {
    private static program;
    /** Get root shader */
    static get(): PIXI.Shader;
    /** Build vertex shader from given resize configs */
    static build(maxScale: number): void;
}
export {};
