import { CSSResultGroup, LitElement, PropertyValues } from "lit"; import { HeadingLevel } from "./HeadingLevel"; import { HeadingSize } from "./HeadingSize"; import { HeadingVariant } from "./HeadingVariant"; /** * A heading to a page or section. * * @description * The `m3e-heading` component provides expressive, accessible headings for pages and sections, supporting display, * headline, title, and label variants in multiple sizes. It applies Material 3 typographic tokens for font size, * weight, line height, and letter spacing, ensuring visual hierarchy and clarity. * * @example * The following example illustrates use of the `m3e-heading` to present each variant and size. * ```html * Display Large * Display Medium * Display Small * Headline Large * Headline Medium * Headline Small * Title Large * Title Medium * Title Small * Label Large * Label Medium * Label Small * ``` * * @example * The next example illustrates use of the `level` attribute to designate the accessibility level of a heading. * When specified, ARIA `role="heading"` is applied and the `level` is propagated to `aria-level`. * ```html * Page title * ``` * * @tag m3e-heading * * @slot - Renders the content of the heading. * * @attr emphasized - Whether the heading uses an emphasized typescale. * @attr level - The accessibility level of the heading. * @attr size - The size of the heading. * @attr variant - The appearance variant of the heading. * * @cssprop --md-sys-typescale-display-large-font-size - Font size for Display Large text, ideal for hero headlines * @cssprop --md-sys-typescale-display-large-font-weight - Font weight for Display Large text * @cssprop --md-sys-typescale-display-large-tracking - Letter spacing for Display Large text * @cssprop --md-sys-typescale-display-large-line-height - Line height for Display Large text * @cssprop --md-sys-typescale-display-medium-font-size - Font size for Display Medium text * @cssprop --md-sys-typescale-display-medium-font-weight - Font weight for Display Medium text * @cssprop --md-sys-typescale-display-medium-tracking - Letter spacing for Display Medium text * @cssprop --md-sys-typescale-display-medium-line-height - Line height for Display Medium text * @cssprop --md-sys-typescale-display-small-font-size - Font size for Display Small text * @cssprop --md-sys-typescale-display-small-font-weight - Font weight for Display Small text * @cssprop --md-sys-typescale-display-small-tracking - Letter spacing for Display Small text * @cssprop --md-sys-typescale-display-small-line-height - Line height for Display Small text * @cssprop --md-sys-typescale-headline-large-font-size - Font size for Headline Large text * @cssprop --md-sys-typescale-headline-large-font-weight - Font weight for Headline Large text * @cssprop --md-sys-typescale-headline-large-tracking - Letter spacing for Headline Large text * @cssprop --md-sys-typescale-headline-large-line-height - Line height for Headline Large text * @cssprop --md-sys-typescale-headline-medium-font-size - Font size for Headline Medium text * @cssprop --md-sys-typescale-headline-medium-font-weight - Font weight for Headline Medium text * @cssprop --md-sys-typescale-headline-medium-tracking - Letter spacing for Headline Medium text * @cssprop --md-sys-typescale-headline-medium-line-height - Line height for Headline Medium text * @cssprop --md-sys-typescale-headline-small-font-size - Font size for Headline Small text * @cssprop --md-sys-typescale-headline-small-font-weight - Font weight for Headline Small text * @cssprop --md-sys-typescale-headline-small-tracking - Letter spacing for Headline Small text * @cssprop --md-sys-typescale-headline-small-line-height - Line height for Headline Small text * @cssprop --md-sys-typescale-title-large-font-size - Font size for Title Large text * @cssprop --md-sys-typescale-title-large-font-weight - Font weight for Title Large text * @cssprop --md-sys-typescale-title-large-tracking - Letter spacing for Title Large text * @cssprop --md-sys-typescale-title-large-line-height - Line height for Title Large text * @cssprop --md-sys-typescale-title-medium-font-size - Font size for Title Medium text * @cssprop --md-sys-typescale-title-medium-font-weight - Font weight for Title Medium text * @cssprop --md-sys-typescale-title-medium-tracking - Letter spacing for Title Medium text * @cssprop --md-sys-typescale-title-medium-line-height - Line height for Title Medium text * @cssprop --md-sys-typescale-title-small-font-size - Font size for Title Small text * @cssprop --md-sys-typescale-title-small-font-weight - Font weight for Title Small text * @cssprop --md-sys-typescale-title-small-tracking - Letter spacing for Title Small text * @cssprop --md-sys-typescale-title-small-line-height - Line height for Title Small text * @cssprop --md-sys-typescale-label-large-font-size - Font size for Label Large text * @cssprop --md-sys-typescale-label-large-font-weight - Font weight for Label Large text * @cssprop --md-sys-typescale-label-large-tracking - Letter spacing for Label Large text * @cssprop --md-sys-typescale-label-large-line-height - Line height for Label Large text * @cssprop --md-sys-typescale-label-medium-font-size - Font size for Label Medium text * @cssprop --md-sys-typescale-label-medium-font-weight - Font weight for Label Medium text * @cssprop --md-sys-typescale-label-medium-tracking - Letter spacing for Label Medium text * @cssprop --md-sys-typescale-label-medium-line-height - Line height for Label Medium text * @cssprop --md-sys-typescale-label-small-font-size - Font size for Label Small text * @cssprop --md-sys-typescale-label-small-font-weight - Font weight for Label Small text * @cssprop --md-sys-typescale-label-small-tracking - Letter spacing for Label Small text * @cssprop --md-sys-typescale-label-small-line-height - Line height for Label Small text * @cssprop --md-sys-typescale-emphasized-display-large-font-size - Font size for emphasized Display Large text * @cssprop --md-sys-typescale-emphasized-display-large-font-weight - Font weight for emphasized Display Large text * @cssprop --md-sys-typescale-emphasized-display-large-tracking - Letter spacing for emphasized Display Large text * @cssprop --md-sys-typescale-emphasized-display-large-line-height - Line height for emphasized Display Large text * @cssprop --md-sys-typescale-emphasized-display-medium-font-size - Font size for emphasized Display Medium text * @cssprop --md-sys-typescale-emphasized-display-medium-font-weight - Font weight for emphasized Display Medium text * @cssprop --md-sys-typescale-emphasized-display-medium-tracking - Letter spacing for emphasized Display Medium text * @cssprop --md-sys-typescale-emphasized-display-medium-line-height - Line height for emphasized Display Medium text * @cssprop --md-sys-typescale-emphasized-display-small-font-size - Font size for emphasized Display Small text * @cssprop --md-sys-typescale-emphasized-display-small-font-weight - Font weight for emphasized Display Small text * @cssprop --md-sys-typescale-emphasized-display-small-tracking - Letter spacing for emphasized Display Small text * @cssprop --md-sys-typescale-emphasized-display-small-line-height - Line height for emphasized Display Small text * @cssprop --md-sys-typescale-emphasized-headline-large-font-size - Font size for emphasized Headline Large text * @cssprop --md-sys-typescale-emphasized-headline-large-font-weight - Font weight for emphasized Headline Large text * @cssprop --md-sys-typescale-emphasized-headline-large-tracking - Letter spacing for emphasized Headline Large text * @cssprop --md-sys-typescale-emphasized-headline-large-line-height - Line height for emphasized Headline Large text * @cssprop --md-sys-typescale-emphasized-headline-medium-font-size - Font size for emphasized Headline Medium text * @cssprop --md-sys-typescale-emphasized-headline-medium-font-weight - Font weight for emphasized Headline Medium text * @cssprop --md-sys-typescale-emphasized-headline-medium-tracking - Letter spacing for emphasized Headline Medium text * @cssprop --md-sys-typescale-emphasized-headline-medium-line-height - Line height for emphasized Headline Medium text * @cssprop --md-sys-typescale-emphasized-headline-small-font-size - Font size for emphasized Headline Small text * @cssprop --md-sys-typescale-emphasized-headline-small-font-weight - Font weight for emphasized Headline Small text * @cssprop --md-sys-typescale-emphasized-headline-small-tracking - Letter spacing for emphasized Headline Small text * @cssprop --md-sys-typescale-emphasized-headline-small-line-height - Line height for emphasized Headline Small text * @cssprop --md-sys-typescale-emphasized-title-large-font-size - Font size for emphasized Title Large text * @cssprop --md-sys-typescale-emphasized-title-large-font-weight - Font weight for emphasized Title Large text * @cssprop --md-sys-typescale-emphasized-title-large-tracking - Letter spacing for emphasized Title Large text * @cssprop --md-sys-typescale-emphasized-title-large-line-height - Line height for emphasized Title Large text * @cssprop --md-sys-typescale-emphasized-title-medium-font-size - Font size for emphasized Title Medium text * @cssprop --md-sys-typescale-emphasized-title-medium-font-weight - Font weight for emphasized Title Medium text * @cssprop --md-sys-typescale-emphasized-title-medium-tracking - Letter spacing for emphasized Title Medium text * @cssprop --md-sys-typescale-emphasized-title-medium-line-height - Line height for emphasized Title Medium text * @cssprop --md-sys-typescale-emphasized-title-small-font-size - Font size for emphasized Title Small text * @cssprop --md-sys-typescale-emphasized-title-small-font-weight - Font weight for emphasized Title Small text * @cssprop --md-sys-typescale-emphasized-title-small-tracking - Letter spacing for emphasized Title Small text * @cssprop --md-sys-typescale-emphasized-title-small-line-height - Line height for emphasized Title Small text * @cssprop --md-sys-typescale-emphasized-label-large-font-size - Font size for emphasized Label Large text * @cssprop --md-sys-typescale-emphasized-label-large-font-weight - Font weight for emphasized Label Large text * @cssprop --md-sys-typescale-emphasized-label-large-tracking - Letter spacing for emphasized Label Large text * @cssprop --md-sys-typescale-emphasized-label-large-line-height - Line height for emphasized Label Large text * @cssprop --md-sys-typescale-emphasized-label-medium-font-size - Font size for emphasized Label Medium text * @cssprop --md-sys-typescale-emphasized-label-medium-font-weight - Font weight for emphasized Label Medium text * @cssprop --md-sys-typescale-emphasized-label-medium-tracking - Letter spacing for emphasized Label Medium text * @cssprop --md-sys-typescale-emphasized-label-medium-line-height - Line height for emphasized Label Medium text * @cssprop --md-sys-typescale-emphasized-label-small-font-size - Font size for emphasized Label Small text * @cssprop --md-sys-typescale-emphasized-label-small-font-weight - Font weight for emphasized Label Small text * @cssprop --md-sys-typescale-emphasized-label-small-tracking - Letter spacing for emphasized Label Small text * @cssprop --md-sys-typescale-emphasized-label-small-line-height - Line height for emphasized Label Small text */ export declare class M3eHeadingElement extends LitElement { /** The styles of the element. */ static styles: CSSResultGroup; /** * Whether the heading uses an emphasized typescale. * @default false */ emphasized: boolean; /** * The appearance variant of the heading. * @default "display" */ variant: HeadingVariant; /** * The size of the heading. * @default "medium" */ size: HeadingSize; /** * The accessibility level of the heading. * @default undefined */ level?: HeadingLevel; /** @inheritdoc */ protected update(changedProperties: PropertyValues): void; /** @inheritdoc */ protected render(): unknown; } declare global { interface HTMLElementTagNameMap { "m3e-heading": M3eHeadingElement; } } //# sourceMappingURL=HeadingElement.d.ts.map