import type { EasingType } from '@visactor/vrender-core';
import { HybridEffectBase } from './base/CustomEffectBase';
export interface DistortionConfig {
    distortionType?: 'wave' | 'ripple' | 'swirl';
    strength?: number;
    useWebGL?: boolean;
}
export declare class Distortion extends HybridEffectBase {
    private distortionConfig;
    constructor(from: null, to: null, duration: number, easing: EasingType, params: any);
    protected getShaderSources(): {
        vertex: string;
        fragment: string;
    } | null;
    protected applyWebGLEffect(canvas: HTMLCanvasElement): HTMLCanvasElement | null;
    private setDistortionUniforms;
    protected applyCanvas2DEffect(canvas: HTMLCanvasElement): HTMLCanvasElement | null;
    private applyWaveDistortion;
    private applyRippleDistortion;
    private applySwirlDistortion;
    protected afterStageRender(stage: any, canvas: HTMLCanvasElement): HTMLCanvasElement | void | null | false;
}
