import { ReactiveController, ReactiveElement } from 'lit';
export declare type AriaPopup = ReactiveElement & {
    trigger?: HTMLElement;
};
/**
 * Provides all nessesary aria-* attributes to create a vaild aria popup.
 * Used in combination of the `@ariaPopupTrigger` controller.
 */
export declare function ariaPopup<T extends AriaPopup>(): ClassDecorator;
export declare class AriaPopupController<T extends AriaPopup> implements ReactiveController {
    private host;
    private observer;
    private trigger;
    constructor(host: T);
    hostConnected(): Promise<void>;
    hostUpdate(): Promise<void>;
    hostDisconnected(): void;
    private updateTrigger;
}
