import{type PropertyValues,type TemplateResult}from'lit';import{LyraElement}from'../../../internal/lyra-element.js';import{type LyraSearchChangeDetail,type LyraTextViewerTargetEventMap}from'../../../internal/text-viewer-target.js';import type{AnchorResultDetail,TextSelectDetail}from'../document-viewer/anchors.js';import type{LyraViewerDiagnosticEventDetail}from'../viewer-diagnostics.js';import type{LyraPageViewerSnapshot,LyraPageViewerStateChangeDetail,PageThumbnailRenderHandle}from'../page-rail/page-rail.class.js';export type{LyraViewerDiagnostic,LyraViewerDiagnosticCode,LyraViewerDiagnosticEventDetail,LyraViewerDiagnosticSeverity,}from'../viewer-diagnostics.js';export interface LyraPptxViewerEventMap extends LyraTextViewerTargetEventMap{'lr-load':CustomEvent<{slideCount:number;}>;'lr-slide-change':CustomEvent<{index:number;count:number;}>;'lr-render-error':CustomEvent<{error:unknown;}>;'lr-search-change':CustomEvent;'lr-anchor-result':CustomEvent;'lr-text-select':CustomEvent;'lr-viewer-diagnostic':CustomEvent;'lr-page-viewer-state-change':CustomEvent;}declare class LyraPptxViewerBase extends LyraElement{}declare const LyraPptxViewer_base:Omit &(new(...args:ConstructorParameters)=>InstanceType &import("../../../lyra.js").LyraTextViewerTarget&{renderAnchorLiveRegion():unknown;}); /** * Best-effort client-side PPTX viewer backed by `@aiden0z/pptx-renderer`. * The fidelity notice is intentionally always visible because animations, * equations, embedded OLE objects, notes, and several advanced effects are * not represented by the renderer. * Remote bytes and measured ZIP expansion are bounded before renderer-owned parsing begins; a * peer that does not expose a complete, safely bounded ZIP-limits capability fails closed. * Lyra assigns no fragment ids to slides. A fragment anchor can resolve only an exact DOM `id` * exposed in the optional renderer's currently mounted output; renderer-owned ids are not a * stable Lyra navigation contract. Use `page`/`goToSlide()` or a text-quote anchor instead. * * @customElement lr-pptx-viewer * @event lr-load - Fired after a presentation opens. `detail: { slideCount }`. * @event lr-slide-change - Fired when the active slide changes. * @event lr-render-error - Fired for terminal fetch/open/render failures and rejected public slide * navigation. Navigation rejection enters the localized error state. Recoverable post-load * slide/node/search events use `lr-viewer-diagnostic` without also posing as terminal errors. * @event {CustomEvent} lr-search-change - Fired whenever search state * changes, including source-reset and effective-locale re-evaluation. Search accepts at most * 4,096 query code units, validates at most 4,000,000 result code * units, and retains at most 10,000 valid matches; `matchCountExact=false` identifies a * ceiling-truncated lower bound. Bubbling, composed, and non-cancelable. * @event {CustomEvent} lr-anchor-result - Fired after an `anchor` assignment or * `scrollToAnchor()` call is applied. `detail: { found: boolean }`. Bubbling, composed, and * non-cancelable. * @event {CustomEvent} lr-text-select - Fired after a selection ends inside the * rendered presentation. `detail: { text: string; anchor: LyraAnchor | null; rects: DOMRect[] }`. * Bubbling, composed, and non-cancelable. * @event lr-viewer-diagnostic - Structured renderer diagnostics for slide/node/search failures. * `detail.diagnostic` includes a stable code, source, cause, `fatal`, and page/node when known. * @event lr-page-viewer-state-change - Correlated page lifecycle state for `lr-page-rail` and * other page-addressed integrations. `detail.snapshot` equals `pageViewerSnapshot`. * @csspart base - The named viewer region with explicit `aria-busy`; its ordinary visually-hidden * loading label is announced on later transitions through the shared document-level polite sink. * @csspart header - The optional presentation-name row. * @csspart name - The presentation name. * @csspart notice - The persistent fidelity notice. * @csspart error - Visible ordinary error text; transitions announce through the shared * document-level assertive region. * @csspart nav - Slide navigation controls. * @csspart previous-button - Previous-slide button. * @csspart previous-icon - Previous-slide icon; mirrors with effective RTL direction. * @csspart slide-count - Current slide indicator. * @csspart next-button - Next-slide button. * @csspart next-icon - Next-slide icon; mirrors with effective RTL direction. * @csspart container - The renderer-owned output container. * @cssprop [--lr-pptx-viewer-max-height=none] - Maximum block size of the scrollable renderer * output container before it scrolls internally. Also settable via the `max-height` property. * @status stable * @since 4.0.0 */ export declare class LyraPptxViewer extends LyraPptxViewer_base{static styles:import("lit").CSSResultGroup[]; /** URL of the PPTX file. */ src:string; /** Optional presentation name. */ name:string; /** Accessible-name override for the viewer region. Omitting it falls back to `name`, then a * localized default; an explicit empty string clears it. */ label?:string; /** One-based current slide for page-addressed integrations; assignments navigate when ready. */ page:number; /** A CSS `max-height` that caps the scrollable renderer output container; invalid values are ignored. */ maxHeight:string; /** * Searches the renderer's complete presentation model, including slides that windowed rendering * has not mounted. Queries are capped at 4,096 code units, peer output validation at 4,000,000 * code units, and retained results at 10,000. Navigation uses renderer-owned node overlays; * `lr-search-change.detail.matchCountExact=false` identifies a ceiling-truncated lower bound. */ search(query:string):Promise;searchNext():Promise;searchPrevious():Promise;clearSearch():void;private phase;private errorMessage;private slideCount;private currentSlideIndex;private containerEl?;private viewer?;private viewerUnsubscribe?;private generation;private readonly announcements;private pptxSearchQuery;private lastSearchLocale;private pptxSearchMatches;private pendingSearchResetEvent;private pptxSearchMatchCountExact;private pptxSearchActiveIndex;private pptxSearchGeneration;private searchHighlight?;private pageViewerIdentity;private pageViewerSnapshotValue; /** Atomic readonly page/count/lifecycle state; `identity` changes for every load transaction. */ get pageViewerSnapshot():LyraPageViewerSnapshot;protected textContentRoot():Element|null;private readonly onViewerEvent;protected updated(changed:PropertyValues):void;protected willUpdate(changed:PropertyValues):void;connectedCallback():void;disconnectedCallback():void;adoptedCallback():void; /** Navigates to a zero-based slide index. A current renderer rejection is contained, enters the * localized error state, and emits `lr-render-error`; invalid or stale navigation is a no-op. */ goToSlide(index:number):Promise; /** Renders a one-based slide preview into `container`. The caller owns the returned handle. */ renderPageThumbnailToContainer(page:number,container:HTMLElement,options?:{width?:number;}):Promise;private isValidSlideIndex;private commitSlide;private publishPageViewerSnapshot;private teardown;private hasPptxSearchState;private resetPptxSearchState;private normalizeSearchResults;private focusPptxSearchMatch;private disposeSearchHighlight;private emitPptxSearchChange;private reportPeerDiagnostic;private mount;private renderBody;render():TemplateResult;}declare global{interface HTMLElementTagNameMap{'lr-pptx-viewer':LyraPptxViewer;}}