UNPKG

3.13 kBTypeScriptView Raw
1/**
2 * @license
3 * Copyright 2018 Google Inc.
4 *
5 * Permission is hereby granted, free of charge, to any person obtaining a copy
6 * of this software and associated documentation files (the "Software"), to deal
7 * in the Software without restriction, including without limitation the rights
8 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 * copies of the Software, and to permit persons to whom the Software is
10 * furnished to do so, subject to the following conditions:
11 *
12 * The above copyright notice and this permission notice shall be included in
13 * all copies or substantial portions of the Software.
14 *
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 * THE SOFTWARE.
22 */
23import { MDCComponent } from '@material/base/component';
24import { MDCChipActionFactory } from '../action/component';
25import { MDCChipActionFocusBehavior, MDCChipActionType } from '../action/constants';
26import { MDCChipAnimation } from './constants';
27import { MDCChipFoundation } from './foundation';
28/**
29 * MDCChipFactory is used by the parent MDCChipSet component to initialize
30 * chips.
31 */
32export declare type MDCChipFactory = (el: Element, foundation?: MDCChipFoundation) => MDCChip;
33/**
34 * MDCChip provides component encapsulation of the foundation implementation.
35 */
36export declare class MDCChip extends MDCComponent<MDCChipFoundation> {
37 static attachTo(root: Element): MDCChip;
38 private readonly rootHTML;
39 private handleActionInteraction;
40 private handleActionNavigation;
41 private actions;
42 initialize(actionFactory?: MDCChipActionFactory): void;
43 initialSyncWithDOM(): void;
44 destroy(): void;
45 getDefaultFoundation(): MDCChipFoundation;
46 /** Exposed to be called by the parent chip set. */
47 remove(): void;
48 /** Returns the MDCChipActionTypes for the encapsulated actions. */
49 getActions(): MDCChipActionType[];
50 /** Returns the ID of the root element. */
51 getElementID(): string;
52 isDisabled(): boolean;
53 setDisabled(isDisabled: boolean): void;
54 /** Returns the focusability of the action. */
55 isActionFocusable(action: MDCChipActionType): boolean;
56 /** Returns the selectability of the action. */
57 isActionSelectable(action: MDCChipActionType): boolean;
58 /** Returns the selected state of the action. */
59 isActionSelected(action: MDCChipActionType): boolean;
60 /** Sets the focus behavior of the action. */
61 setActionFocus(action: MDCChipActionType, focus: MDCChipActionFocusBehavior): void;
62 /** Sets the selected state of the action. */
63 setActionSelected(action: MDCChipActionType, isSelected: boolean): void;
64 /** Starts the animation on the chip. */
65 startAnimation(animation: MDCChipAnimation): void;
66}