import { HTMLChakraProps } from '@chakra-ui/react';
import { ReactNode } from 'react';
declare const SIZE_STYLES: {
    readonly sm: {
        readonly container: {
            readonly height: "20px";
            readonly lineHeight: {
                readonly base: "20px";
            };
            readonly px: "2xs";
        };
        readonly iconSize: 12;
        readonly textStyle: "xs";
    };
    readonly md: {
        readonly container: {
            readonly height: "24px";
            readonly lineHeight: {
                readonly base: "24px";
            };
            readonly px: "xs";
        };
        readonly iconSize: 14;
        readonly textStyle: "sm";
    };
};
declare const TONE_STYLES: {
    readonly neutral: {
        readonly color: "color.primary";
        readonly bg: "bg.muted";
        readonly _hover: {
            readonly bg: "bg.emphasized";
        };
    };
    readonly accent: {
        readonly color: "var(--schub-foreground-accent)";
        readonly bg: "var(--schub-accent-subtle)";
        readonly _hover: {
            readonly bg: "var(--schub-accent-subtle)";
        };
    };
};
export interface MissingResourceBadgeProps {
    referenceId: string;
    onRemove?: (referenceId: string) => void;
}
/**
 * Shown when a reference points to a resource that no longer exists
 */
export declare const MissingResourceBadge: (props: MissingResourceBadgeProps) => import("react/jsx-runtime").JSX.Element;
export type ResourceBadgeSize = keyof typeof SIZE_STYLES;
export type ResourceBadgeTone = keyof typeof TONE_STYLES;
export interface ResourceBadgeProps extends Omit<HTMLChakraProps<"span">, "onSelect"> {
    fileName: string;
    onRemove?: (fileName: string) => void;
    onSelect?: (fileName: string) => void;
    size?: ResourceBadgeSize;
    tone?: ResourceBadgeTone;
    icon?: ReactNode;
}
export declare const ResourceBadge: (props: ResourceBadgeProps) => import("react/jsx-runtime").JSX.Element;
export {};
