import type { Input as TextboxInput, TextboxEvent } from "../ebay-textbox/component-browser";
import type { WithNormalizedProps } from "../../global";
import { validSizes } from "./constants";
interface FilterInputInput extends Omit<TextboxInput, `on${string}`> {
    size?: (typeof validSizes)[number];
    "a11y-clear-button"?: string;
    "a11y-controls-id"?: string;
    "on-clear"?: (event: TextboxEvent) => void;
    "on-keydown"?: (event: TextboxEvent) => void;
    "on-keypress"?: (event: TextboxEvent) => void;
    "on-keyup"?: (event: TextboxEvent) => void;
    "on-change"?: (event: TextboxEvent) => void;
    "on-input-change"?: (event: TextboxEvent) => void;
    "on-focus"?: (event: TextboxEvent) => void;
    "on-blur"?: (event: TextboxEvent) => void;
}
export interface Input extends WithNormalizedProps<FilterInputInput> {
}
declare class FilterInput extends Marko.Component<Input> {
    textbox: HTMLInputElement;
    onMount(): void;
    handleClear(event: {
        originalEvent: MouseEvent;
    }): void;
}
export default FilterInput;
