import { TemplateResult } from "lit-element"; import { ButtonBehavior } from "../behavior/button/button-behavior"; import { Ripple } from "../ripple/ripple"; import { AriaRole } from "../util/aria"; import { IRowing } from "../util/rowing"; /** * Properties of the list item. */ export interface IListItemProperties { role: AriaRole; noRipple: boolean; clickable: boolean; } /** * Display an item in a list. * @slot before - Left content. * @slot - Default content. * @slot after - Right content. * @cssprop --list-item-border-radius - Border radius * @cssprop --list-item-transition - Transition * @cssprop --list-item-padding - Padding * @cssprop --list-item-before-align-self - Alignment of the before slot * @cssprop --list-item-before-margin - Margin of the before slot * @cssprop --list-item-after-align-self - Alignment of the after slot * @cssprop --list-item-after-margin - Margin of the after slot * @cssprop --list-item-color - Default color * @cssprop --list-item-bg - Default background * @cssprop --list-item-color-active - Color when active * @cssprop --list-item-bg-active - Background when active * @cssprop --list-item-color-hover - Color when hover * @cssprop --list-item-bg-hover - Background when hover * @cssprop --list-item-color-active-hover - Color when active and hover * @cssprop --list-item-bg-active-hover - Background when active and hover * @cssprop --list-item-color-disabled - Color when disabled * @cssprop --list-item-bg-disabled - Background when disabled * @cssprop --list-item-opacity-disabled - Opacity when disabled */ export declare class ListItem extends ButtonBehavior implements IListItemProperties, IRowing { static styles: import("lit-element").CSSResult[]; /** * Disables the element. * @attr */ disabled: boolean; /** * Makes the element clickable. * @attr */ clickable: boolean; /** * Deactivates the ripple. * @attr */ noRipple: boolean; /** * Role of the list item. * @attr */ role: AriaRole; /** * Ripple element. */ protected $ripple: Ripple; /** * Query the group. */ queryGroup(): ListItem[]; /** * Focuses a grouped element. * @param elem */ rowToElement(elem: ListItem): void; /** * Handles the key up event. * Adds support for rowing tabindex. * @param e */ protected onKeyDown(e: KeyboardEvent): void; /** * Returns the template of the element. */ protected render(): TemplateResult; } declare global { interface HTMLElementTagNameMap { "wl-list-item": ListItem; } }