import { ReactiveElement } from 'lit';
type Constructor<T = Record<string, unknown>> = {
    new (...args: any[]): T;
    prototype: T;
};
type DisableableElement = HTMLElement & {
    disabled?: boolean;
};
export interface FocusableElementInterface {
    disabled: boolean;
    autofocus: boolean;
    focusElement: DisableableElement;
    focus(options?: FocusOptions): void;
    blur(): void;
    click(): void;
}
export declare function FocusableMixin<T extends Constructor<ReactiveElement>>(constructor: T): T & Constructor<FocusableElementInterface>;
export {};
