/**
 * KTUI - PIN / OTP multi-field input
 * Copyright 2025 by Keenthemes Inc
 */
import KTComponent from '../component';
import { KTPinInputConfigInterface, KTPinInputInterface } from './types';
declare global {
    interface Window {
        KTPinInput: typeof KTPinInput;
    }
}
export declare class KTPinInput extends KTComponent implements KTPinInputInterface {
    protected _name: string;
    protected _defaultConfig: KTPinInputConfigInterface;
    protected _config: KTPinInputConfigInterface;
    private _cells;
    private _hiddenInput;
    private _charRegex;
    private _wasComplete;
    private _onKeydownBound;
    private _onBeforeInputBound;
    private _onInputBound;
    private _onPasteBound;
    constructor(element: HTMLElement, config?: KTPinInputConfigInterface | null);
    private static collectItems;
    private _compileRegex;
    private _isValidChar;
    private _enabledCells;
    private _prepareCells;
    private _activeCell;
    private _cellIndex;
    private _focusNextEnabled;
    private _fillCellAndAdvance;
    private _routeCharFromCell;
    private _ensureHiddenInput;
    private _focusCell;
    private _focusRelative;
    private _filterString;
    private _buildPayload;
    private _emit;
    private _syncHidden;
    private _syncFromDom;
    private _onKeydown;
    private _onBeforeInput;
    private _onInput;
    private _onPaste;
    private _distributeFromIndex;
    getValue(): string;
    setValue(value: string): void;
    dispose(): void;
    static getInstance(element: HTMLElement): KTPinInput | null;
    static getOrCreateInstance(element: HTMLElement, config?: KTPinInputConfigInterface): KTPinInput | null;
    static createInstances(): void;
    static init(): void;
}
//# sourceMappingURL=pin-input.d.ts.map