/*! * Copyright 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0 */ import { ExtendedHTMLElement } from '../helper/dom'; import '../styles/components/_icon.scss'; import { Status } from '../static'; export declare enum MynahIcons { Q = "q", AT = "at", MENU = "menu", MINUS = "minus", MINUS_CIRCLE = "minus-circled", SEARCH = "search", PLUS = "plus", PAPER_CLIP = "paper-clip", PIN = "pin", LIST_ADD = "list-add", TABS = "tabs", CHAT = "chat", LINK = "link", FOLDER = "folder", FILE = "file", FLASH = "flash", DOC = "doc", DOT = "dot", EXTERNAL = "external", CANCEL = "cancel", CANCEL_CIRCLE = "cancel-circle", CALENDAR = "calendar", COMMENT = "comment", MEGAPHONE = "megaphone", MAGIC = "magic", NOTIFICATION = "notification", EYE = "eye", ELLIPSIS = "ellipsis", ELLIPSIS_H = "ellipsis-h", OK = "ok", UP_OPEN = "up-open", DOWN_OPEN = "down-open", RIGHT_OPEN = "right-open", LEFT_OPEN = "left-open", RESIZE_FULL = "resize-full", RESIZE_SMALL = "resize-small", BLOCK = "block", OK_CIRCLED = "ok-circled", INFO = "info", WARNING = "warning", ERROR = "error", THUMBS_UP = "thumbs-up", THUMBS_DOWN = "thumbs-down", STAR = "star", STACK = "stack", LIGHT_BULB = "light-bulb", ENVELOPE_SEND = "envelope-send", ENTER = "enter", REFRESH = "refresh", PROGRESS = "progress", SCROLL_DOWN = "scroll-down", USER = "user", PLAY = "play", PAUSE = "pause", STOP = "stop", PENCIL = "pencil", CODE_BLOCK = "code-block", COPY = "copy", CURSOR_INSERT = "cursor-insert", TEXT_SELECT = "text-select", TOOLS = "tools", REVERT = "revert", UNDO = "undo", ROCKET = "rocket", ASTERISK = "asterisk", BUG = "bug", CHECK_LIST = "check-list", DEPLOY = "deploy", SHELL = "shell", HELP = "help", MESSAGE = "message", MCP = "mcp", TRASH = "trash", TRANSFORM = "transform", HISTORY = "history", IMAGE = "image", DESKTOP = "desktop", GLOBE = "globe" } export interface CustomIcon { name: string; base64Svg: string; } export type MynahIconsType = `${MynahIcons}`; export interface IconProps { icon: MynahIcons | MynahIconsType | CustomIcon; subtract?: boolean; classNames?: string[]; status?: Status; } export declare class Icon { render: ExtendedHTMLElement; props: IconProps; constructor(props: IconProps); private readonly getIconName; private isCustomIcon; update: (icon: MynahIcons | MynahIconsType | CustomIcon) => void; }