import React, { type ForwardedRef } from 'react';
import type { SpringConfig } from 'react-native-reanimated/lib/typescript/reanimated2/animation/springUtils';
interface RenderItemParams {
    x: number;
    y: number;
    colors: string[];
}
export declare enum PopperDirection {
    Ascending = "Ascending",
    Descending = "Descending"
}
export interface PopperProps {
    spacing?: number;
    theme?: string[];
    renderItem: (renderItemParams: RenderItemParams, index: number) => React.ReactElement;
    autoPlay?: boolean;
    /**
     * Direction in which the elements will be popped
     */
    direction?: PopperDirection;
    /**
     * Controls the speed of the elements moving across the screen
     * @default FiestaSpeed.Normal
     */
    positionSpringConfig?: SpringConfig;
    /**
     * Controls the speed of the elements fading out
     * @default singleItemFadeSpeed – mass is set to screenHeight, which calculates the fade speed based on the screen height
     */
    fadeSpringConfig?: SpringConfig;
}
export type StartPopperParams = Pick<PopperProps, 'theme' | 'direction' | 'positionSpringConfig' | 'fadeSpringConfig'>;
export interface PopperHandler {
    start(params?: StartPopperParams): void;
}
export type PopperRef = ForwardedRef<PopperHandler>;
export declare const Popper: React.MemoExoticComponent<React.ForwardRefExoticComponent<PopperProps & React.RefAttributes<PopperHandler>>>;
export {};
