import type { ReactNode, Ref } from "react";
import { type PressableProps, View as RNView, type ViewProps as RNViewProps } from "react-native";
import type { VariantProps } from "tailwind-variants";
import type { AccentOrNeutral } from "../../core/AlouetteConfig";
export declare const boxBaseClasses = "shrink";
export interface BoxProps extends RNViewProps {
    accent?: AccentOrNeutral;
    ref?: Ref<RNView>;
}
export declare function Box({ className, accent, ...props }: BoxProps): ReactNode;
export declare const interactiveBoxVariants: import("tailwind-variants").TVReturnType<{
    withPressEffect: {
        true: string;
        false: string;
    };
    withFocusVisibleOutline: {
        true: string;
        inset: string;
        false: string;
    };
}, undefined, string, {
    withPressEffect: {
        true: string;
        false: string;
    };
    withFocusVisibleOutline: {
        true: string;
        inset: string;
        false: string;
    };
}, undefined, import("tailwind-variants").TVReturnType<{
    withPressEffect: {
        true: string;
        false: string;
    };
    withFocusVisibleOutline: {
        true: string;
        inset: string;
        false: string;
    };
}, undefined, string, unknown, unknown, undefined>>;
export interface InteractiveBoxProps extends VariantProps<typeof interactiveBoxVariants>, PressableProps {
    ref?: Ref<RNView>;
}
export declare function InteractiveBox({ withFocusVisibleOutline, withPressEffect, className, ...rest }: InteractiveBoxProps): ReactNode;
export declare function InteractiveBoxHitSlop({ withFocusVisibleOutline, withPressEffect, children, className, ...rest }: InteractiveBoxProps): ReactNode;
export type SafeAreaBoxProps = Omit<BoxProps, "style">;
export declare function SafeAreaBox(props: SafeAreaBoxProps): ReactNode;
//# sourceMappingURL=Box.d.ts.map