import { default as React, ReactNode } from 'react';
export interface CompoundComponentContext {
    variant?: 'default' | 'minimal' | 'enterprise';
    size?: 'sm' | 'md' | 'lg';
    theme?: string;
    disabled?: boolean;
    className?: string;
}
export declare const useCompoundContext: () => CompoundComponentContext;
export interface CompoundProviderProps extends CompoundComponentContext {
    children: ReactNode;
}
export declare function CompoundProvider({ children, ...context }: CompoundProviderProps): import("react/jsx-runtime").JSX.Element;
export interface SlotProps {
    name: string;
    children?: ReactNode;
    fallback?: ReactNode;
    className?: string;
}
export declare function Slot({ name, children, fallback, className }: SlotProps): import("react/jsx-runtime").JSX.Element;
export interface CompoundComponentProps {
    variant?: 'default' | 'minimal' | 'enterprise';
    size?: 'sm' | 'md' | 'lg';
    theme?: string;
    className?: string;
    children?: ReactNode;
}
export declare function withCompoundComponent<T extends Record<string, any>>(Component: React.ComponentType<T>, subComponents?: Record<string, React.ComponentType<any>>): React.ComponentType<T> & Record<string, React.ComponentType<any>>;
