
import { Styles } from "../styles/types.js";

//#region src/tasty/hooks/useStyles.d.ts
/**
 * Tasty styles object to generate CSS classes for.
 * Can be undefined or empty object for no styles.
 */
type UseStylesOptions = Styles | undefined;
interface UseStylesResult {
  /**
   * Generated className(s) to apply to the element.
   * Can be empty string if no styles are provided.
   * With chunking enabled, may contain multiple space-separated class names.
   */
  className: string;
}
/**
 * Hook to generate CSS classes from Tasty styles.
 * Handles style rendering, className allocation, and CSS injection.
 *
 * Uses chunking to split styles into logical groups for better caching
 * and CSS reuse across components.
 *
 * @example
 * ```tsx
 * function MyComponent() {
 *   const { className } = useStyles({
 *     padding: '2x',
 *     fill: '#purple',
 *     radius: '1r',
 *   });
 *
 *   return <div className={className}>Styled content</div>;
 * }
 * ```
 */
declare function useStyles(styles: UseStylesOptions): UseStylesResult;
//#endregion
export { UseStylesOptions, UseStylesResult, useStyles };
//# sourceMappingURL=useStyles.d.ts.map