import { LitElement, PropertyValues } from 'lit';
import '../typography/typography';
import '../icon/icon';
/**
 * Icon lockup
 *
 * @slot icon - Slot for a custom icon. If provided, this slot content replaces the `icon` property.
 */
export declare class CovalentIconLockup extends LitElement {
    static styles: import("lit").CSSResult[];
    /**
     * Whether the icon is a covalent icon.
     */
    covalentIcon: boolean;
    /**
     * Whether the icon is filled.
     */
    filledIcon: boolean;
    /**
     * The icon to display.
     */
    icon: string;
    /**
     * Scale of the component, controlling font-size and icon size.
     * Default is "1", but it can be set to other values to scale the component.
     */
    scale: string;
    /**
     * State of the component, used to apply different styles based on status.
     * Example values might include "success", "error", etc.
     */
    state: string;
    /**
     * If true, the icon is displayed after the text (trailing).
     * If false, the icon is displayed before the text.
     */
    trailingIcon: boolean;
    /**
     * Icon size per scale. Scales not listed fall back to the
     * corresponding typography line-height CSS variable.
     */
    private readonly ICON_SIZE_MAP;
    private get iconSize();
    /**
     * Tracks if the icon slot has content.
     */
    private _hasIconSlot;
    /**
     * Checks if there is content in the icon slot and updates `hasIconSlot`.
     */
    private checkIconSlot;
    /**
     * Template method for rendering the icon. If content is provided in the
     * `icon` slot, it is displayed instead of the `icon` property.
     */
    private iconTemplate;
    /**
     * Renders the component with icon and text. If `trailingIcon` is true,
     * the icon is displayed after the text. Otherwise, it is displayed before.
     */
    render(): import("lit-html").TemplateResult<1>;
    protected updated(_changedProperties: PropertyValues): void;
}
declare global {
    interface HTMLElementTagNameMap {
        'cv-icon-lockup': CovalentIconLockup;
    }
}
export default CovalentIconLockup;
