import { ComponentFunction } from "./types"; type WidgetProps = { class?: string; className?: string; cssFlags?: any; }; type CssFunction = (styles: TemplateStringsArray, ...expressions: any[]) => ComponentFunction & { className: string; }; type RootWidget = { css: CssFunction; extend: (source: ComponentFunction) => Widget; } & { [K in keyof HTMLElementTagNameMap]: Widget; }; type Widget = { css: CssFunction; } & { [key: string]: Widget; }; /** * The `widget` object is a proxy-based utility for creating styled components with dynamic tags and class names. * * Usage: * * ```typescript * widget.[tagname].[extraClassnames*].css`styles` * ``` * * - `[tagname]`: Optional HTML tag name to be used for the component (defaults to `div`). * - `[extraClassnames*]`: Optional additional class names to be appended to the component. * - `css`: A tagged template function to define the component's styles. * * Example: * * ```typescript * const styledDiv = widget.div.myClass.anotherClass.css` * color: red; * background: blue; * `; * ``` * * This will create a `div` element with the classes `myClass` and `anotherClass`, and apply the specified styles. */ export declare const widget: RootWidget; export {};