import { PropertyValueMap } from 'lit';
import { OmniFormElement } from '../core/OmniFormElement.js';
import '../icons/EyeHidden.icon.js';
import '../icons/EyeVisible.icon.js';
/**
* Input control to enter a masked numeric value.
*
* @import
* ```js
* import '@capitec/omni-components/pin-field';
* ```
*
* @example
* ```html
*
*
* ```
*
* @element omni-pin-field
*
* @slot hide - Replaces the icon for the pin value hidden state.
* @slot show - Replaces the icon for the checked value visible state.
*
* @cssprop --omni-pin-field-control-padding-right - Pin field control padding right.
* @cssprop --omni-pin-field-control-padding-left - Pin field control padding left.
* @cssprop --omni-pin-field-control-padding-top - Pin field control padding top.
* @cssprop --omni-pin-field-control-padding-bottom - Pin field control padding bottom.
*
* @cssprop --omni-pin-field-icon-color - Pin field slot icon color.
* @cssprop --omni-pin-field-icon-width - Pin field slot width.
* @cssprop --omni-pin-field-icon-height - Pin field slot height.
*
* @cssprop --omni-pin-field-text-align - Pin field text align.
* @cssprop --omni-pin-field-font-color - Pin field font color.
* @cssprop --omni-pin-field-font-family - Pin field font family.
* @cssprop --omni-pin-field-font-size - Pin field font size.
* @cssprop --omni-pin-field-font-weight - Pin field font weight.
* @cssprop --omni-pin-field-padding - Pin field padding.
* @cssprop --omni-pin-field-height - Pin field height.
* @cssprop --omni-pin-field-width - Pin field width.
*
* @cssprop --omni-pin-field-disabled-font-color - Pin field disabled font color.
* @cssprop --omni-pin-field-error-font-color - Pin field error font color.
*
* @cssprop --omni-pin-field-autofill-hover-transition - Pin field suggestions input hover color.
*/
export declare class PinField extends OmniFormElement {
/**
* @ignore
*/
protected type: 'password' | 'text';
/**
* Disables native on screen keyboards for the component.
* @attr [no-native-keyboard]
*/
noNativeKeyboard?: boolean;
/**
* Override for the value property inherited from the OmniFormElement component with reflect set to false.
*/
value?: string;
/**
* Maximum character input length.
* @attr [max-length]
*/
maxLength?: number;
private _inputElement?;
private container?;
private showPin?;
private isWebkit?;
connectedCallback(): void;
protected firstUpdated(): Promise;
protected updated(_changedProperties: PropertyValueMap | Map): void;
focus(options?: FocusOptions | undefined): void;
_sanitiseValue(): void;
_blurOnEnter(e: KeyboardEvent): void;
_isNumber(number: string): boolean;
_beforeInput(e: InputEvent): void;
_onInput(): void;
_iconClicked(e: MouseEvent): void;
static get styles(): import("lit").CSSResultGroup[];
protected renderControl(): import("lit-html").TemplateResult<1>;
protected renderContent(): import("lit-html").TemplateResult<1>;
}
declare global {
interface HTMLElementTagNameMap {
'omni-pin-field': PinField;
}
}
//# sourceMappingURL=PinField.d.ts.map