finpro
Version:
64 lines • 1.66 kB
TypeScript
import { CSSResultGroup, TemplateResult } from 'lit';
import '../fp-button/fp-button';
import { ButtonSize, ButtonVariant, ButtonKind } from '../fp-button/fp-button';
import FpDropdownItem from './fp-item/fp-dropdown-item';
import FinproElement from '../../internals/finpro-element';
export declare type CleanUpFunction = () => void;
export declare const fpDropdownTag = "fp-dropdown";
/**
* @tag fp-dropdown
* @summary Finpro Dropdown component
*/
export default class FpDropdown extends FinproElement {
static get styles(): CSSResultGroup;
private _dropdownButton;
private _popover;
private _cleanUpPopover;
private _isPopoverOpen;
/**
* Sets the dropdown button label
*/
label: string;
/**
* Sets the dropdown button variant
*/
variant: ButtonVariant;
/**
* Sets the dropdown button kind
*/
kind: ButtonKind;
/**
* Sets the dropdown button size
*/
size: ButtonSize;
/**
* Sets button as disabled
*/
disabled: boolean;
/**
* Fires when dropdown opened
*/
private onOpen;
/**
* Fires when dropdown closed
*/
private onClose;
connectedCallback(): void;
disconnectedCallback(): void;
get opened(): boolean;
private _handleClick;
private _handleClickOutside;
private _setupPopover;
private focusedOptionIndex;
private handleKeyDown;
get options(): FpDropdownItem[];
open(): void;
close(): void;
render(): TemplateResult;
}
declare global {
interface HTMLElementTagNameMap {
[fpDropdownTag]: FpDropdown;
}
}
//# sourceMappingURL=fp-dropdown.d.ts.map