@loadsmart/miranda-wc
Version:
Miranda Web Components component library
97 lines (96 loc) • 2.5 kB
TypeScript
import type { PropertyValues } from 'lit';
import { Component } from '../component';
export declare const TAG_VARIANTS: readonly ["default", "neutral", "accent", "info", "danger", "subtle", "success", "warning"];
export type TagVariant = (typeof TAG_VARIANTS)[number];
export declare const TAG_SIZES: readonly ["small", "default", "large"];
export type TagSize = (typeof TAG_SIZES)[number];
export interface TagProps {
disabled?: boolean;
interactive?: boolean;
isSkeleton?: boolean;
selectable?: boolean;
selected?: boolean;
size?: TagSize;
variant?: TagVariant;
onchange?: GlobalEventHandlers['onchange'];
}
export declare class Tag extends Component implements TagProps {
#private;
static styles: import("lit").CSSResult[][];
static get properties(): {
disabled: {
type: BooleanConstructor;
reflect: boolean;
};
interactive: {
type: BooleanConstructor;
reflect: boolean;
};
isSkeleton: {
type: BooleanConstructor;
attribute: string;
reflect: boolean;
};
selectable: {
type: BooleanConstructor;
reflect: boolean;
};
selected: {
type: BooleanConstructor;
reflect: boolean;
};
size: {
type: StringConstructor;
reflect: boolean;
};
variant: {
type: StringConstructor;
reflect: boolean;
};
};
/**
* Tag variant.
*/
variant: TagVariant;
/**
* Tag size.
*/
size: TagSize;
/**
* Tag skeleton loader.
*/
isSkeleton: boolean;
/**
* Tag is disabled.
*/
disabled: boolean;
/**
* Tag is interactive, i.e., it will respond to
* focus/hover interactions.
*/
interactive: boolean;
/**
* Tag is selectable (toggled on/off).
*/
selectable: boolean;
/**
* Tag is selected.
*/
selected: boolean;
static define(): void;
constructor();
connectedCallback(): void;
disconnectedCallback(): void;
update(changedProperties: PropertyValues): void;
updated(changedProperties: PropertyValues): void;
/**
* Which HTML tag should be used to render this element.
*/
private get tag();
render(): import("lit-html").TemplateResult;
}
declare global {
interface HTMLElementTagNameMap {
'm-tag': Tag;
}
}