@hashicorp/design-system-components
Version:
Helios Design System Components
45 lines (44 loc) • 1.55 kB
TypeScript
/**
* Copyright IBM Corp. 2021, 2025
* SPDX-License-Identifier: MPL-2.0
*/
import Component from '@glimmer/component';
import { HdsAccordionSizeValues, HdsAccordionTypeValues } from '../types.ts';
import type { HdsAccordionForceStates, HdsAccordionSizes, HdsAccordionTypes, HdsAccordionItemTitleTags } from '../types.ts';
export declare const SIZES: HdsAccordionSizes[];
export declare const DEFAULT_SIZE = HdsAccordionSizeValues.Medium;
export declare const TYPES: HdsAccordionTypes[];
export declare const DEFAULT_TYPE = HdsAccordionTypeValues.Card;
export interface HdsAccordionItemSignature {
Args: {
ariaLabel?: string;
containsInteractive?: boolean;
forceState?: HdsAccordionForceStates;
isOpen?: boolean;
isStatic?: boolean;
onClickToggle?: (event: MouseEvent, ...args: any[]) => void;
size?: HdsAccordionSizes;
titleTag?: HdsAccordionItemTitleTags;
type?: HdsAccordionTypes;
};
Blocks: {
toggle?: [];
content: [
{
close: (...args: any[]) => void;
}
];
};
Element: HTMLElement;
}
export default class HdsAccordionItem extends Component<HdsAccordionItemSignature> {
private _titleId;
get ariaLabelledBy(): string | undefined;
get containsInteractive(): boolean;
get toggleTextSize(): number;
get size(): HdsAccordionSizes;
get isOpen(): boolean;
get type(): HdsAccordionTypes;
get titleTag(): HdsAccordionItemTitleTags;
get classNames(): string;
}