import { Backdrop } from '@scandit/web-datacapture-core/build/js/private/ui/atoms/Backdrop.js'; import { ScanditHTMLElement } from '@scandit/web-datacapture-core/build/js/private/utils/index.js'; import { Button } from '../atoms/Button.js'; import { TextInputEventMap, TextInput } from '../atoms/TextInput.js'; import '@scandit/web-datacapture-core/build/js/private/GestureRecognizer/GestureRecognizer.js'; import '@scandit/web-datacapture-core/build/js/commons/Color.js'; /** * Custom events emitted by LabelCaptureValidationFlowLayout */ declare const LabelCaptureValidationFlowLayoutEvents: { readonly ClearAllButtonClicked: "scandit-clear-all-button-clicked"; readonly PauseButtonClicked: "scandit-pause-button-clicked"; readonly ClickedOutsideList: "scandit-clicked-outside-list"; readonly ValidationFlowLayoutChange: "scandit-validation-flow-layout-change"; }; interface LabelCaptureValidationFlowLayoutEventMap extends TextInputEventMap { [LabelCaptureValidationFlowLayoutEvents.ClearAllButtonClicked]: CustomEvent<{ inputs: TextInput[]; }>; [LabelCaptureValidationFlowLayoutEvents.PauseButtonClicked]: CustomEvent; [LabelCaptureValidationFlowLayoutEvents.ClickedOutsideList]: CustomEvent; [LabelCaptureValidationFlowLayoutEvents.ValidationFlowLayoutChange]: CustomEvent<{ buttonContainerHeight: number; safeAreaInsetBottom: number; safeAreaInsetTop: number; safeAreaInsetLeft: number; safeAreaInsetRight: number; }>; } declare global { interface HTMLElementEventMap extends LabelCaptureValidationFlowLayoutEventMap { } } declare class LabelCaptureValidationFlowLayout extends ScanditHTMLElement { static tag: "scandit-label-capture-validation-flow-layout"; private static injectedStyleElements; private dataCaptureViewContainer_; private dataCaptureViewWrapper_; private backdrop_; private adaptiveRecognitionOverlay_; private clearButton_; private submitButton_; private pauseButton_; private gridLayoutContainer_; private buttonsContainer_; private orientationObserver_; private onOrientationChangeHandler; private viewportMeta; private originalViewportContent; private onClearButtonClickHandler; private onPauseButtonClickHandler; private onDataCaptureViewWrapperClickHandler; private collapseAnimations; private focusedInput; private focusedInputOffset; private currentAnimationPromise; private lastOrientationEvent_; private static createStyleElements; static create(): LabelCaptureValidationFlowLayout; static register(): void; get dataCaptureViewContainer(): HTMLDivElement | null; get backdrop(): Backdrop | null; get clearButton(): Button | null; get submitButton(): Button | null; get pauseButton(): Button | null; getInputs(): TextInput[]; getInputByName(name: string): TextInput | undefined; private static injectStyles; connectedCallback(): void; disconnectedCallback(): void; private onClearButtonClick; private onPauseButtonClick; private onDataCaptureViewWrapperClick; private addButtonIcons; private setupOrientationObserver; private onOrientationChange; private disableViewportZoom; private restoreViewportZoom; private showButton; private hideButton; showValidationButtons(): void; showScanningButtons(): void; hideAllButtons(): void; private get buttonsContainerHeight(); get finishButtonText(): string; set finishButtonText(text: string); get restartButtonText(): string; set restartButtonText(text: string); get pauseButtonText(): string; set pauseButtonText(text: string); appendInputs(...inputs: TextInput[]): void; waitForAnimations(): Promise; /** * Cancel all collapse animations and reset every input to a clean state * (no inline pointer-events, no running animations). Use after restore or before a new move. */ private resetInputsState; moveInputToTop(focusedInput: TextInput): Promise; restoreInputsPositions(): Promise; showAdaptiveRecognitionOverlay(): void; hideAdaptiveRecognitionOverlay(): void; } declare global { interface HTMLElementTagNameMap { [LabelCaptureValidationFlowLayout.tag]: LabelCaptureValidationFlowLayout; } } export { LabelCaptureValidationFlowLayout, type LabelCaptureValidationFlowLayoutEventMap, LabelCaptureValidationFlowLayoutEvents };