/**
 * Fictoan Button Component Prop Schema
 * Static schema based on Fictoan v2.1.0 Button component
 * Maps Fictoan props to shadcn/ui equivalents
 */
export interface FictoanButtonProps {
    colour?: "blue" | "red" | "green" | "yellow" | "orange" | "pink" | "purple" | "grey" | "white" | "black";
    color?: "blue" | "red" | "green" | "yellow" | "orange" | "pink" | "purple" | "grey" | "white" | "black";
    kind?: "primary" | "secondary" | "tertiary" | "custom";
    size?: "tiny" | "small" | "medium" | "large" | "huge";
    isLoading?: boolean;
    disabled?: boolean;
    shadow?: "mild" | "soft" | "hard";
    isFullWidth?: boolean;
    onClick?: () => void;
    type?: "button" | "submit" | "reset";
    children?: React.ReactNode;
}
export declare const fictoanButtonMapping: {
    readonly colors: {
        readonly blue: "default";
        readonly red: "destructive";
        readonly green: "success";
        readonly yellow: "warning";
        readonly orange: "warning";
        readonly pink: "secondary";
        readonly purple: "secondary";
        readonly grey: "secondary";
        readonly gray: "secondary";
        readonly white: "outline-solid";
        readonly black: "default";
    };
    readonly kinds: {
        readonly primary: "default";
        readonly secondary: "secondary";
        readonly tertiary: "ghost";
        readonly custom: "default";
    };
    readonly sizes: {
        readonly tiny: "sm";
        readonly small: "sm";
        readonly medium: "default";
        readonly large: "lg";
        readonly huge: "lg";
    };
    readonly shadows: {
        readonly mild: "shadow-xs";
        readonly soft: "shadow-md";
        readonly hard: "shadow-lg";
    };
};
export type FictoanButtonColor = keyof typeof fictoanButtonMapping.colors;
export type FictoanButtonKind = keyof typeof fictoanButtonMapping.kinds;
export type FictoanButtonSize = keyof typeof fictoanButtonMapping.sizes;
export type FictoanButtonShadow = keyof typeof fictoanButtonMapping.shadows;
export interface FictoanInfoPanelProps {
    width?: "tiny" | "small" | "medium" | "large" | "huge";
    isOpen?: boolean;
    onCloseCallback?: () => void;
    closeOnClickOutside?: boolean;
    bgColor?: string;
    bgColour?: string;
    textColor?: string;
    textColour?: string;
    padding?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    margin?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    shadow?: "none" | "mild" | "soft" | "hard";
    shape?: "rounded" | "curved";
    className?: string;
    classNames?: string[];
    children?: React.ReactNode;
}
export declare const fictoanInfoPanelMapping: {
    readonly widths: {
        readonly tiny: "max-w-xs";
        readonly small: "max-w-sm";
        readonly medium: "max-w-md";
        readonly large: "max-w-lg";
        readonly huge: "max-w-xl";
    };
    readonly stateMapping: {
        readonly isOpen: "open";
        readonly onCloseCallback: "onOpenChange";
    };
    readonly spacing: {
        readonly none: "p-0";
        readonly nano: "p-1";
        readonly micro: "p-2";
        readonly tiny: "p-3";
        readonly small: "p-4";
        readonly medium: "p-6";
        readonly large: "p-8";
        readonly huge: "p-12";
    };
    readonly shadows: {
        readonly none: "";
        readonly mild: "shadow-xs";
        readonly soft: "shadow-md";
        readonly hard: "shadow-lg";
    };
    readonly shapes: {
        readonly rounded: "rounded-md";
        readonly curved: "rounded-xl";
    };
};
export type FictoanInfoPanelWidth = keyof typeof fictoanInfoPanelMapping.widths;
export type FictoanInfoPanelSpacing = keyof typeof fictoanInfoPanelMapping.spacing;
export type FictoanInfoPanelShadow = keyof typeof fictoanInfoPanelMapping.shadows;
export type FictoanInfoPanelShape = keyof typeof fictoanInfoPanelMapping.shapes;
export interface FictoanCardProps {
    bgColor?: string;
    bgColour?: string;
    textColor?: string;
    textColour?: string;
    borderColor?: string;
    borderColour?: string;
    padding?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    margin?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    shadow?: "none" | "mild" | "soft" | "hard";
    shape?: "rounded" | "curved";
    className?: string;
    classNames?: string[];
    children?: React.ReactNode;
}
export interface FictoanInputFieldProps {
    label?: string;
    labelColour?: string;
    type?: string;
    placeholder?: string;
    value?: string;
    defaultValue?: string;
    onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
    iconLeft?: React.ReactElement;
    iconRight?: React.ReactElement;
    helpText?: string;
    errorText?: string;
    validateThis?: boolean;
    valid?: boolean;
    invalid?: boolean;
    bgColor?: string;
    bgColour?: string;
    textColor?: string;
    textColour?: string;
    borderColor?: string;
    borderColour?: string;
    padding?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    margin?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    shadow?: "none" | "mild" | "soft" | "hard";
    shape?: "rounded" | "curved";
    className?: string;
    classNames?: string[];
    disabled?: boolean;
    required?: boolean;
}
export interface FictoanTooltipProps {
    label: string;
    position?: "top" | "bottom" | "left" | "right";
    children?: React.ReactNode;
    bgColor?: string;
    bgColour?: string;
    textColor?: string;
    textColour?: string;
    padding?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    shadow?: "none" | "mild" | "soft" | "hard";
    shape?: "rounded" | "curved";
    className?: string;
    classNames?: string[];
}
export interface FictoanBadgeProps {
    size?: "tiny" | "small" | "medium" | "large" | "huge";
    shape?: "rounded" | "curved";
    bgColor?: string;
    bgColour?: string;
    textColor?: string;
    textColour?: string;
    borderColor?: string;
    borderColour?: string;
    padding?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    margin?: "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
    shadow?: "none" | "mild" | "soft" | "hard";
    className?: string;
    classNames?: string[];
    children?: React.ReactNode;
}
export declare const fictoanComponentMapping: {
    readonly badgeSizes: {
        readonly tiny: "text-xs px-1 py-0.5";
        readonly small: "text-xs px-2 py-1";
        readonly medium: "text-sm px-2.5 py-1.5";
        readonly large: "text-base px-3 py-2";
        readonly huge: "text-lg px-4 py-2.5";
    };
    readonly inputStates: {
        readonly valid: "border-green-500 focus:border-green-500 focus:ring-green-500";
        readonly invalid: "border-red-500 focus:border-red-500 focus:ring-red-500";
        readonly default: "border-input focus:border-ring focus:ring-ring";
    };
    readonly tooltipPositions: {
        readonly top: "bottom";
        readonly bottom: "top";
        readonly left: "right";
        readonly right: "left";
    };
    readonly colors: {
        readonly blue: "blue-500";
        readonly red: "red-500";
        readonly green: "green-500";
        readonly yellow: "yellow-500";
        readonly orange: "orange-500";
        readonly pink: "pink-500";
        readonly purple: "purple-500";
        readonly grey: "gray-500";
        readonly gray: "gray-500";
        readonly white: "white";
        readonly black: "black";
    };
};
export type FictoanBadgeSize = keyof typeof fictoanComponentMapping.badgeSizes;
export type FictoanInputState = keyof typeof fictoanComponentMapping.inputStates;
export type FictoanTooltipPosition = keyof typeof fictoanComponentMapping.tooltipPositions;
export type FictoanColor = keyof typeof fictoanComponentMapping.colors;
//# sourceMappingURL=fictoan-schema.d.ts.map