import { default as React, ReactNode, MouseEvent, CSSProperties } from 'react';
import { MantineColor } from '@mantine/core';
interface RippleItem {
    id: number;
    x: number;
    y: number;
    size: number;
}
export interface ArchbaseRippleProps {
    /** Conteúdo a ser envolvido */
    children: ReactNode;
    /** Cor do ripple */
    color?: MantineColor;
    /** Opacidade do ripple */
    opacity?: number;
    /** Duração da animação em ms */
    duration?: number;
    /** Se o ripple deve ser centralizado */
    centered?: boolean;
    /** Se está desabilitado */
    disabled?: boolean;
    /** Se deve cobrir todo o elemento */
    unbounded?: boolean;
    /** Classe CSS */
    className?: string;
    /** Estilo */
    style?: CSSProperties;
}
export declare const ArchbaseRipple: React.ForwardRefExoticComponent<ArchbaseRippleProps & React.RefAttributes<HTMLDivElement>>;
export interface UseArchbaseRippleOptions {
    color?: MantineColor;
    opacity?: number;
    duration?: number;
    centered?: boolean;
    disabled?: boolean;
}
export interface UseArchbaseRippleReturn {
    ripples: RippleItem[];
    handleClick: (event: MouseEvent<HTMLElement>) => void;
    RippleContainer: React.FC;
}
export declare function useArchbaseRipple(options?: UseArchbaseRippleOptions): UseArchbaseRippleReturn;
export {};
