/**
* @fileoverview Main entry point for @fpkit/acss component library
* @module @fpkit/acss
*
* @description
* A lightweight React UI component library with 25+ accessible components.
* Uses CSS custom properties for reactive styling and emphasizes semantic HTML.
*
* @example
* ```tsx
* import { Button, Card, Alert } from '@fpkit/acss';
* import '@fpkit/acss/styles';
*
* function App() {
* return (
*
* Welcome!
*
*
* );
* }
* ```
*
* @see {@link https://www.npmjs.com/package/@fpkit/acss} NPM Package
* @packageDocumentation
*/
// import { TextToSpeech } from "./components/text-to-speech/TextToSpeech";
// import { Popover } from './hooks/popover/popover'
// export { Textarea } from './components/form/textarea';
// export { ModalDialog as Dialog } from "./components/modal/dialog";
/**
* Core UI Components
*
* Essential interactive components for building user interfaces.
* Includes buttons, cards, alerts, modals, forms, and more.
*
* All components support:
* - CSS custom properties for theming
* - WCAG 2.1 Level AA accessibility
* - Keyboard navigation
* - Screen reader support
*
* @example
* ```tsx
* import { Button, Card, Alert, Modal } from '@fpkit/acss';
*
*
* Operation completed
*
*
* ```
*/
export { Button, type ButtonProps } from "./components/buttons/button";
export {
IconButton,
type IconButtonProps,
} from "./components/buttons/icon-button";
export {
Card,
Title as CardTitle,
Content as CardContent,
Footer as CardFooter,
type CardProps,
} from "./components/cards/card";
export { Alert, type AlertProps } from "./components/alert/alert";
export { Field, type FieldProps } from "./components/form/fields";
export { Input, type InputProps } from "./components/form/inputs";
/**
* Checkbox wrapper component (uses Input type="checkbox")
* This is the recommended checkbox component.
*/
export { Checkbox, type CheckboxProps } from "./components/form/checkbox";
export { Icon, type IconProps } from "./components/icons/icon";
export { Img } from "./components/images/img";
export type { ImgProps } from "./components/images/img.types";
export { default as Link } from "./components/link/link";
export type { LinkProps } from "./components/link/link.types";
export {
default as List,
type ListProps,
type ListItemProps,
} from "./components/list/list";
export { Modal, type ModalProps } from "./components/modal/modal";
export { Popover, type PopoverProps } from "./components/popover/popover";
export { RenderTable as TBL, type TableProps } from "./components/tables/table";
export { Dialog } from "./components/dialog/dialog";
export { DialogModal } from "./components/dialog/dialog-modal";
export type {
DialogProps,
DialogModalProps,
DialogSize,
DialogPosition,
} from "./components/dialog/dialog.types";
/**
* Layout Components
*
* Semantic HTML5 landmark elements and layout primitives for page structure.
*
* Components include:
* - **Landmarks**: Header, Main, Footer, Aside (semantic page regions)
* - **Box**: General-purpose container with spacing/sizing controls
* - **Stack**: Simplified vertical/horizontal layouts with gap spacing
* - **Cluster**: Wrapping flex layout for inline groups (tags, buttons)
* - **Flex**: Flexbox container with responsive utilities and type-safe props
*
* Landmarks provide proper ARIA roles and improve screen reader navigation.
* Layout primitives offer polymorphic, type-safe APIs for flexible layouts with
* unified spacing scales and CSS custom properties for theming.
*
* @example
* ```tsx
* import { Header, Main, Footer, Box, Flex } from '@fpkit/acss';
*
*
*
*
*
*
*
*
* ```
*
* @see {@link ./components/layout/landmarks} Landmark Components
* @see {@link ./components/box/box} Box Component
* @see {@link ./components/flexbox/flex} Flex Component
*/
export * from "./components/layout/landmarks";
export { Box, type BoxProps } from "./components/box/box";
export { Stack, type StackProps } from "./components/stack/stack";
export { Cluster, type ClusterProps } from "./components/cluster/cluster";
export {
default as Grid,
GridItem,
type GridProps,
type GridItemProps,
} from "./components/grid/grid";
export { Row, type RowProps } from "./components/row/row";
export { Col, type ColProps } from "./components/col/col";
export { default as Flex } from "./components/flexbox/flex";
export type {
FlexProps,
FlexItemProps,
FlexSpacerProps,
FlexContainerElement,
FlexItemElement,
FlexDirection,
FlexWrap,
FlexJustify,
FlexAlign,
FlexAlignContent,
FlexAlignSelf,
FlexGap,
FlexVariant,
ResponsiveFlexProps,
} from "./components/flexbox/flex.types";
/**
* Navigation Components
*
* Accessible navigation elements for site and page navigation.
*
* Components support:
* - Semantic `