import{nothing,type PropertyValues,type TemplateResult}from'lit';import{LyraElement}from'../../../internal/lyra-element.js';import type{LyraHighlightTone,HighlightActivateDetail}from'../document-viewer/anchors.js';export interface HighlightLayerItem{readonly id:string; /** Finite percent-of-box coordinates (the `region` anchor convention). One item may span * multiple rects (a quote wrapping lines); invalid coordinates and negative sizes are omitted. */ readonly rects:readonly Readonly<{x:number;y:number;width:number;height:number;}>[];readonly label?:string;readonly tone?:LyraHighlightTone;}export interface LyraHighlightLayerEventMap{'lr-highlight-activate':CustomEvent;} /** * `` — a presentational overlay that paints highlight rectangles * (percent-of-box coordinates) over positioned content and owns their activation, active/flash * styling, and keyboard access. `items` order is the caller's own reading order; the layer does not * re-sort geometrically. Fills its nearest positioned ancestor. With `interactive=false`, the * overlay remains pure paint (`aria-hidden`, no group owner or controls). If no item has a valid * rectangle, the component renders no subtree at all. * * @customElement lr-highlight-layer * @event lr-highlight-activate - A rect was activated (click, or Enter/Space while focused). * `detail: { highlightId }`. * @csspart base - The absolutely-positioned overlay (inset 0). * @csspart rect - One highlight rectangle (`data-tone`/`data-active`/`data-flash` state attributes). * @csspart rect-target - Transparent activation geometry around a rectangle, with a minimum * pointer/focus area independent of the caller-supplied visual coordinates. * @csspart highlight-actions - Non-overlapping actions used when more than one logical highlight * would otherwise create ambiguous minimum hit areas. * @csspart highlight-action - One action in the non-overlapping highlight action list. * @cssprop --lr-highlight-layer-accent-background - Accent highlight background. * @cssprop --lr-highlight-layer-accent-outline - Accent highlight outline. * @cssprop --lr-highlight-layer-success-background - Success highlight background. * @cssprop --lr-highlight-layer-success-outline - Success highlight outline. * @cssprop --lr-highlight-layer-warning-background - Warning highlight background. * @cssprop --lr-highlight-layer-warning-outline - Warning highlight outline. * @cssprop --lr-highlight-layer-danger-background - Danger highlight background. * @cssprop --lr-highlight-layer-danger-outline - Danger highlight outline. * @cssprop --lr-highlight-layer-neutral-background - Neutral highlight background. * @cssprop --lr-highlight-layer-neutral-outline - Neutral highlight outline. * @cssprop --lr-highlight-layer-flash-background - Flash-state background. * @status stable * @since 4.0.0 */ export declare class LyraHighlightLayer extends LyraElement{protected static readonly ownedCollectionProperties:readonly string[];static styles:import("lit").CSSResultGroup[];private _items; /** Highlight records in caller reading order. IDs are trimmed and must be nonempty; the first * record for an ID is retained and blank or later duplicate records are ignored. */ get items():readonly HighlightLayerItem[];set items(value:readonly HighlightLayerItem[]); /** Domain identity of the currently active highlight. */ activeHighlightId:string|null; /** `false` = pure paint: `pointer-events: none`, no tab stop, no role. Default-true, matching * markdown's `sanitize` stance. */ interactive:boolean;private focusedItem;private flashingItem;private flashTimer?;private flashTimerWindow?;private flashGeneration;private pendingFocusItem;protected willUpdate(changed:PropertyValues):void;protected updated(changed:PropertyValues):void;disconnectedCallback():void;adoptedCallback():void; /** Applies a one-shot emphasis flash to the first item matching `id`. Its lifetime follows the * rendered animation duration, including theme and reduced-motion overrides. */ flash(id:string):void;private clearFlash;private safeRects;private itemIndexesWithRects;private tabStopIndex;private onRectClick;private onRectFocus;private primaryTarget;private primaryVisualRect;private focusRect;private onRectKeyDown;private rectLabel;render():TemplateResult|typeof nothing;}declare global{interface HTMLElementTagNameMap{'lr-highlight-layer':LyraHighlightLayer;}}