@hashicorp/design-system-components
Version:
Helios Design System Components
38 lines (37 loc) • 1.51 kB
TypeScript
/**
* Copyright IBM Corp. 2021, 2025
* SPDX-License-Identifier: MPL-2.0
*/
import Component from '@glimmer/component';
import type { ModifierLike } from '@glint/template';
import type Owner from '@ember/owner';
import { HdsDropdownToggleIconSizeValues } from './types.ts';
import type { HdsIconSignature } from '../../icon/index';
import type { HdsDropdownToggleIconSizes } from './types.ts';
import type { SetupPrimitiveToggleModifier } from '../../popover-primitive/index';
export declare const DEFAULT_SIZE = HdsDropdownToggleIconSizeValues.Medium;
export declare const SIZES: HdsDropdownToggleIconSizes[];
export declare const ALLOWED_ICON_LIST: HdsIconSignature['Args']['name'][];
export interface HdsDropdownToggleIconSignature {
Args: {
hasChevron?: boolean;
icon?: HdsIconSignature['Args']['name'];
imageSrc?: string;
isOpen?: boolean;
size?: HdsDropdownToggleIconSizes;
text: string;
setupPrimitiveToggle?: ModifierLike<SetupPrimitiveToggleModifier>;
};
Element: HTMLButtonElement;
}
export default class HdsDropdownToggleIcon extends Component<HdsDropdownToggleIconSignature> {
private _hasImage;
constructor(owner: Owner, args: HdsDropdownToggleIconSignature['Args']);
onDidUpdateImageSrc(): void;
onImageLoadError(): void;
get text(): string;
get size(): HdsDropdownToggleIconSizes;
get iconSize(): HdsIconSignature['Args']['size'];
get hasChevron(): boolean;
get classNames(): string;
}