import type { HeadingAlign, HeadingColor, HeadingSize, HeadingTag, HeadingWeight } from './types';
import type { Theme } from '../../utils/styles';
/**
* @component diwa-heading
*
* A responsive heading renderer that maps a visual size scale onto the
* correct semantic HTML heading element. Font sizes use fluid type tokens
* that scale between viewport sizes.
*
* Usage:
* Page title
* Hero headline
* Visual h3, semantic h2
*
* @slot default — Heading text content. Inline elements are allowed; block elements are not.
*/
export declare class DiwaHeading {
private host;
/** Per-component theme override. */
theme: Theme;
/**
* Visual size and inferred semantic heading level.
* Determines the rendered HTML tag when no explicit `tag` prop is given.
*/
size: HeadingSize;
/**
* Override the rendered HTML tag.
* Use when the visual size must differ from the semantic level —
* e.g. a visually-large `h3` inside a section that already has an `h2`.
* If omitted, the tag is inferred from `size`.
*/
tag?: HeadingTag;
/** Font weight. */
weight: HeadingWeight;
/** Horizontal alignment. `start` and `end` are RTL-aware. */
align: HeadingAlign;
/**
* Colour alias. Use `inherit` to pass through the surrounding colour unchanged —
* useful inside cards, hero sections, or other styled containers.
*/
color: HeadingColor;
/**
* Clip overflow to a single line with a trailing ellipsis.
* The host element must have a defined width for this to take effect.
*/
ellipsis: boolean;
render(): any;
}
//# sourceMappingURL=diwa-heading.d.ts.map