/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { ICustomElementFoundation } from '@tylertech/forge-core';
import { IListItemAdapter } from './list-item-adapter';
export interface IListItemFoundation extends ICustomElementFoundation {
    static: boolean;
    twoLine: boolean;
    threeLine: boolean;
    active: boolean;
    selected: boolean;
    value: any;
    href: string;
    target: string;
    ripple: boolean;
    disabled: boolean;
    dense: boolean;
    wrap: boolean;
    setFocus(): void;
    deactivateRipple(): void;
}
/**
 * The foundation class behind the `<forge-list-item>` component.
 */
export declare class ListItemFoundation implements IListItemFoundation {
    private _adapter;
    private _ripple;
    private _rippleInstance;
    private _static;
    private _twoLine;
    private _threeLine;
    private _active;
    private _selected;
    private _value;
    private _href;
    private _target;
    private _disabled;
    private _dense;
    private _propagateClick;
    private _indented;
    private _wrap;
    private _clickListener;
    private _keydownListener;
    private _destroyUserInteractionListener;
    constructor(_adapter: IListItemAdapter);
    initialize(): void;
    disconnect(): void;
    deactivateRipple(): void;
    private _onKeydown;
    /**
     * Handles clicking a list item.
     * @param evt
     */
    private _onClick;
    private _select;
    /** Gets/sets whether the list item has a ripple or not. */
    get ripple(): boolean;
    set ripple(value: boolean);
    /** Gets/sets whether the static state of this list item. */
    get static(): boolean;
    set static(value: boolean);
    /** Gets/sets whether the list item displays two lines of text. */
    get twoLine(): boolean;
    set twoLine(value: boolean);
    /** Gets/sets whether the list item displays two lines of text. */
    get threeLine(): boolean;
    set threeLine(value: boolean);
    /** Gets/sets whether the list item is active or not. */
    get active(): boolean;
    set active(value: boolean);
    /** Gets/sets whether the list item is selected or not. */
    get selected(): boolean;
    set selected(value: boolean);
    /** Gets/sets the unique value for this list item. */
    get value(): any;
    set value(value: any);
    /** Gets/sets the href link that this list item will send the browser to when clicked. */
    get href(): string;
    set href(value: string);
    /** Gets/sets the href link target. */
    get target(): string;
    set target(value: string);
    /** Gets/sets the disabled state. */
    get disabled(): boolean;
    set disabled(value: boolean);
    /** Gets/sets the dense state. */
    get dense(): boolean;
    set dense(value: boolean);
    /** Gets/sets the dense state. */
    get propagateClick(): boolean;
    set propagateClick(value: boolean);
    get indented(): boolean;
    set indented(value: boolean);
    get wrap(): boolean;
    set wrap(value: boolean);
    private _setRipple;
    /**
     * Sets focus to this list item.
     */
    setFocus(): void;
}
