import * as spec from '@galacean/effects-specification'; import { type ValueGetter } from '../math'; import type { FrameContext } from '../plugins/timeline/playable'; import { Playable } from '../plugins/timeline/playable'; import { VFXItem } from '../vfx-item'; import type { Material } from '../material'; import type { ColorStop } from '../utils'; import { MaskableGraphic } from '../components'; export interface ColorPlayableAssetData extends spec.EffectsObjectData { colorOverLifetime?: spec.ColorOverLifetime; } export declare class ColorPlayable extends Playable { clipData: { colorOverLifetime?: spec.ColorOverLifetime; startColor?: spec.RGBAColorValue; }; colorOverLifetime: ColorStop[]; opacityOverLifetime: ValueGetter; startColor: spec.RGBAColorValue; renderColor: spec.vec4; activeComponent?: MaskableGraphic; activeMaterial?: Material; processFrame(context: FrameContext): void; create(clipData: ColorPlayableAssetData): this; getActiveComponent(boundObject: VFXItem): MaskableGraphic; }