import { default as React, ReactNode } from 'react';
import { MantineColor, MantineSize } from '@mantine/core';
export interface ArchbaseActionSheetItem {
    /** Chave única */
    key: string;
    /** Tipo do item */
    type?: 'item' | 'divider';
    /** Label do item */
    label?: string;
    /** Descrição */
    description?: string;
    /** Ícone */
    icon?: ReactNode;
    /** Cor */
    color?: MantineColor;
    /** Se está desabilitado */
    disabled?: boolean;
    /** Callback ao clicar */
    onClick?: () => void;
}
export interface ArchbaseActionSheetProps {
    /** Itens do action sheet */
    items: ArchbaseActionSheetItem[];
    /** Se está aberto */
    opened: boolean;
    /** Callback ao fechar */
    onClose: () => void;
    /** Título */
    title?: string;
    /** Descrição */
    description?: string;
    /** Label do botão cancelar */
    cancelLabel?: string;
    /** Se deve mostrar botão cancelar */
    showCancel?: boolean;
    /** Breakpoint para mudar de drawer para menu */
    breakpoint?: string;
    /** Posição do menu no desktop */
    menuPosition?: 'bottom' | 'top' | 'left' | 'right';
    /** Elemento alvo do menu (desktop) */
    target?: ReactNode;
    /** Tamanho */
    size?: MantineSize;
    /** Raio das bordas do drawer */
    radius?: MantineSize;
    /** Se deve ter overlay */
    withOverlay?: boolean;
    /** Classe CSS */
    className?: string;
    /** Estilo */
    style?: React.CSSProperties;
}
export declare const ArchbaseActionSheet: React.ForwardRefExoticComponent<ArchbaseActionSheetProps & React.RefAttributes<HTMLDivElement>>;
export interface UseArchbaseActionSheetOptions {
    items: ArchbaseActionSheetItem[];
    title?: string;
    description?: string;
    cancelLabel?: string;
    showCancel?: boolean;
}
export interface UseArchbaseActionSheetReturn {
    opened: boolean;
    open: () => void;
    close: () => void;
    toggle: () => void;
    ActionSheet: React.FC<{
        target?: ReactNode;
    }>;
}
export declare function useArchbaseActionSheet(options: UseArchbaseActionSheetOptions): UseArchbaseActionSheetReturn;
