export declare function easeLinear(t: number): number;
export declare function easeInCubic(t: number): number;
export declare function easeOutCubic(t: number): number;
export declare function easeInOutCubic(t: number): number;
export declare function easeSpring(t: number): number;
export declare function getEasingFn(name?: string): (t: number) => number;
export declare function interpolateColor(color1: string, color2: string, progress: number): string;
export declare function hashFraction(str: string, salt?: number): number;
export declare function getFloatAnimName(direction: string, seed: string): string;
export declare function entranceRuntimeKeyframe(mode: string | undefined): string | null;
export declare function exitRuntimeKeyframe(mode: string | undefined): string | null;
export declare function emphasisKeyframeName(mode: string | undefined): string | null;
export declare function getIdleAnimName(cfg: {
    preset?: string;
    direction?: string;
} | undefined | null, seed: string): string;
export declare function computeFloatAmp(cfg: {
    amplitude: number;
    amplitudeRandomness?: number;
}, seed: string): number;
export declare function computeFloatSpeed(cfg: {
    speed: number;
    speedRandomness?: number;
}, seed: string): number;
interface GradientStop {
    color: string;
    position: number;
}
interface BgInput {
    type: string;
    color?: string;
    gradient?: {
        type: string;
        angle?: number;
        colors: string[];
        stops?: GradientStop[];
        radialShape?: 'circle' | 'ellipse';
        radialPosition?: string;
    };
    image?: string;
}
export declare function getBackgroundStyle(bg: BgInput): string;
/** Build a CSS gradient string from a standalone gradient shape (no canvas
 *  background wrapper). Reusable by elements that embed a gradient
 *  directly — text fills, progress bars, etc. */
export declare function gradientShapeToCss(g: {
    type: string;
    angle?: number;
    colors: string[];
    stops?: GradientStop[];
    radialShape?: 'circle' | 'ellipse';
    radialPosition?: string;
}): string;
export {};
