import { IVector3 } from './IVector' ; import { TypedArray } from '../../types/CommonTypes' ; export interface IColorRgb { readonly r : number ; readonly g : number ; readonly b : number ; readonly a : number ; toString ( ) : string ; toStringApproximately ( ) : string ; flattenAsArray ( ) : Array < number > ; isDummy ( ) : boolean ; isEqual ( vec , delta ) : boolean ; isStrictEqual ( vec ) : boolean ; at ( i ) : number ; length ( ) : number ; lengthSquared ( ) : number ; lengthTo ( vec ) : number ; dot ( vec ) : number ; clone ( ) : IColorRgb ; } export interface IMutableColorRgb { r : number ; g : number ; b : number ; readonly a : number ; toString ( ) : string ; toStringApproximately ( ) : string ; flattenAsArray ( ) : Array < number > ; isDummy ( ) : boolean ; isEqual ( vec , delta ) : boolean ; isStrictEqual ( vec ) : boolean ; at ( i ) : number ; length ( ) : number ; lengthSquared ( ) : number ; lengthTo ( vec ) : number ; dot ( vec ) : number ; clone ( ) : IMutableColorRgb ; raw ( ) : TypedArray ; setAt ( i , value ) : IMutableColorRgb ; setComponents ( x , y , z ) : IMutableColorRgb ; copyComponents ( vec ) : IMutableColorRgb ; zero ( ) : IMutableColorRgb ; one ( ) : IMutableColorRgb ; normalize ( ) : IMutableColorRgb ; add ( vec ) : IMutableColorRgb ; subtract ( vec ) : IMutableColorRgb ; multiply ( value ) : IMutableColorRgb ; multiplyVector ( vec ) : IMutableColorRgb ; divide ( value ) : IMutableColorRgb ; divideVector ( vec ) : IMutableColorRgb ; cross ( vec ) : IMutableColorRgb ; } export interface IColorRgba { readonly r : number ; readonly g : number ; readonly b : number ; readonly a : number ; } export interface IMutableColorRgba { r : number ; g : number ; b : number ; a : number ; }