import type { Effect as DeckEffect } from '@deck.gl/core';
import { MapState, Effect, EffectProps, EffectDescription } from '@kepler.gl/types';
type VisState = any;
export declare function computeDeckEffects({ visState, mapState, isExport }: {
    visState: VisState;
    mapState: MapState;
    isExport?: boolean;
}): DeckEffect[];
/**
 * Always keep light & shadow effect at the top, then distance fog and
 * surface fog right after it (before other post-processing effects).
 * Both fog effects read the depth buffer from renderBuffers[0];
 * subsequent effects clear depth during their render passes, so fog
 * must run before that happens.
 */
export declare const fixEffectOrder: (effects: Effect[], effectOrder: string[]) => string[];
export declare function reorderEffectOrder(effectOrder: string[], originEffectId: string, destinationEffectId: string): string[];
/**
 * Validates parameters for an effect, clamps numbers to allowed ranges
 * or applies default values in case of wrong non-numeric values.
 * All unknown properties aren't modified.
 * @param parameters Parameters candidate for an effect.
 * @param effectDescription Description of an effect.
 * @returns
 */
export declare function validateEffectParameters(parameters: EffectProps["parameters"] | undefined, effectDescription: EffectDescription['parameters']): EffectProps['parameters'];
export {};
