import { ClassProp } from 'class-variance-authority/types';
import { JSX } from 'react/jsx-runtime';
import type * as React_2 from 'react';
import { VariantProps } from 'class-variance-authority';

declare function Button({ className, variant, size, arrow, rounded, padding, asChild, ...props }: React_2.ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
    asChild?: boolean;
}): JSX.Element;

declare const buttonVariants: (props?: ({
    variant?: "link" | "error" | "warning" | "success" | "info" | "primary" | "secondary" | "tertiary" | "quaternary" | "surface" | "outline" | "icon" | "surface-hard" | "background" | "background-soft" | "foreground" | "foreground-soft" | null | undefined;
    arrow?: boolean | null | undefined;
    size?: "base" | "xs" | "sm" | "xl" | null | undefined;
    rounded?: "base" | "sm" | "md" | "lg" | "xl" | "2xl" | "full" | null | undefined;
    padding?: "base" | "sm" | "none" | null | undefined;
} & ClassProp) | undefined) => string;

export declare function InputGroup({ className, variant, rounded, ...props }: React_2.ComponentProps<'div'> & VariantProps<typeof inputGroupVariants>): JSX.Element;

export declare function InputGroupAddon({ className, align, variant, ...props }: React_2.ComponentProps<'div'> & VariantProps<typeof inputGroupAddonVariants>): JSX.Element;

declare const inputGroupAddonVariants: (props?: ({
    variant?: "error" | "warning" | "success" | "info" | "surface" | "surface-hard" | "background" | "background-soft" | "foreground" | "foreground-soft" | "transparent" | null | undefined;
    align?: "block-end" | "block-start" | "inline-end" | "inline-start" | null | undefined;
} & ClassProp) | undefined) => string;

export declare function InputGroupButton({ className, type, variant, size, ...props }: Omit<React_2.ComponentProps<typeof Button>, 'size'> & VariantProps<typeof inputGroupButtonVariants>): JSX.Element;

declare const inputGroupButtonVariants: (props?: ({
    size?: "xs" | "sm" | "icon-xs" | "icon-sm" | null | undefined;
} & ClassProp) | undefined) => string;

export declare function InputGroupInput({ className, ...props }: React_2.ComponentProps<'input'>): JSX.Element;

export declare function InputGroupText({ className, variant, ...props }: React_2.ComponentProps<'span'> & VariantProps<typeof inputGroupTextVariants>): JSX.Element;

export declare function InputGroupTextarea({ className, ...props }: React_2.ComponentProps<'textarea'>): JSX.Element;

declare const inputGroupTextVariants: (props?: ({
    variant?: "reverse" | "error" | "warning" | "success" | "info" | "primary" | "secondary" | "tertiary" | "quaternary" | "placeholder" | null | undefined;
} & ClassProp) | undefined) => string;

declare const inputGroupVariants: (props?: ({
    variant?: "light" | "normal" | null | undefined;
    rounded?: "base" | "sm" | "md" | "lg" | "xl" | "2xl" | "full" | null | undefined;
} & ClassProp) | undefined) => string;

export { }


declare namespace BreadcrumbSeparator {
    var displayName: string;
}


declare namespace BreadcrumbEllipsis {
    var displayName: string;
}


declare namespace DialogHeader {
    var displayName: string;
}


declare namespace DialogFooter {
    var displayName: string;
}


declare namespace PaginationUnit {
    var displayName: string;
}


declare namespace PaginationLink {
    var displayName: string;
}


declare namespace PaginationPrevious {
    var displayName: string;
}


declare namespace PaginationNext {
    var displayName: string;
}


declare namespace PaginationEllipsis {
    var displayName: string;
}
