import { LitElement } from "lit";
export declare namespace ListV2 {
    type Gap = "none" | "sm" | "md" | "lg";
    type Orientation = "vertical" | "horizontal";
    class ELEMENT extends LitElement {
        /**
         * The gap between list items.
         */
        gap: Gap;
        orientation: Orientation;
        assignedNodes: NodeList;
        connectedCallback(): void;
        render(): import("lit-html").TemplateResult<1>;
        private get listItems();
        private handleMouseClick;
        /**
         * Calculates a new index based on the pressed keyboard key.
         * Supports navigation keys for moving focus within a list.
         * @param key - The key that was pressed.
         * @param currentIndex - The current index of the focused list item.
         * @param wrappedDivsCount - The total number of list items.
         * @returns The new index to focus on, or undefined if the key is not supported.
         */
        private getNewIndexBasedOnKey;
        /**
         * Handles the keydown event on the list element.
         * If the key is 'ArrowUp' or 'ArrowDown', it focuses to the previous or next list item
         * and sets the active tabindex of the list item.
         * Prevents the default event behavior.
         * @param event - The keyboard event.
         */
        private handleKeyDown;
        /**
         * Returns the index of the given target in the listItems array.
         * If the target is not a list item, but a child element of a list item,
         * it returns the index of the parent list item.
         * @param target - The target element to find the index of.
         * @returns The index of the target element in the listItems array.
         */
        private getCurrentIndex;
        /**
         * Resets all list items tabindex to -1 and sets the tabindex of the
         * element at the given index to 0, effectively setting the active
         * element. This is used when navigating the list via keyboard.
         *
         * @param newIndex - The index of the new active element in the list.
         */
        private resetTabIndexAndSetActiveTabIndex;
        static get styles(): import("lit").CSSResult;
    }
}
declare global {
    interface HTMLElementTagNameMap {
        "md-list-v2": ListV2.ELEMENT;
    }
}
