/// import type { ISolutionItemHover, ISolutionItemSelected, ISolutionTypeHover, ITemplateInfo } from "../../utils/interfaces.js"; import type { PublicLitElement as LitElement } from "@arcgis/lumina"; import type { DependencyItem } from "../../utils/getRelatedInfos.js"; import type { T9nMeta } from "@arcgis/lumina/controllers"; export abstract class SolutionItemAccordion extends LitElement { /** * Contains the translations for this component. * All UI strings should be defined here. * * @internal */ protected _translations: { usedInOtherSolutionsDeleteWarning: string; noPrivilegeToManage: string; openDetails: string; solutionsTemplates: string; usedInAnotherSolution: string; itemUsedInOtherSolutions: string; } & T9nMeta<{ usedInOtherSolutionsDeleteWarning: string; noPrivilegeToManage: string; openDetails: string; solutionsTemplates: string; usedInAnotherSolution: string; itemUsedInOtherSolutions: string; }>; /** DependencyItem[]: List of items that have relationship dependencies outside of this solution */ accessor itemRelationshipDependencies: DependencyItem[]; /** * 'action' | 'item': Specifies the type of link that will be used for deployed items. * 'item' the items title will be underlined and clicking anywhere on the list item will open the items details page * 'action' a action will be added to the end of the list item that will open the items details page * * @default 'item' */ accessor linkType: "action" | "item"; /** * Specifies the selection mode of the item-type lists used in the component, where: * 'multiple' allows any number of selections, * 'single' allows only one selection, * 'single-persist' allows one selection and prevents de-selection, and * 'none' does not allow any selections (default) * * @default 'none' */ accessor listSelectionMode: "multiple" | "single" | "single-persist" | "none"; /** * string: The warning message to display when we have itemRelationshipDependencies * * @default '' */ accessor reuseWarning: string; /** ITemplateInfo[]: Collection of template infos */ accessor templateInfos: ITemplateInfo[]; /** string[]: Collection of the solutions typeKeywords */ accessor typeKeywords: string[]; /** @default 'content' */ accessor usageContext: "content" | "rename" | "delete"; /** Collapses all items in the accordion. */ collapseAll(): Promise; /** * Deselects all items in the accordion. * Only applies when selectionMode is 'single' or 'single-persist'. * * @param collapseAccordion - Whether to also collapse the accordion items after deselecting */ deselectAll(collapseAccordion?: boolean): Promise; /** Expands the first accordion item */ expandFirstItem(): Promise; /** * Expands the accordion item containing for the provided id * Only applies when selectionMode is 'single' or 'single-persist'. * * @param id - the id of the item to select */ expandItemById(id: string): Promise; /** * Expands items in the accordion. * Only applies when selectionMode is 'multiple'. * * @param ids - the id of the item to select */ expandItems(ids: string[]): Promise; /** Selects the first item in the accordion and expands the accordion item containing it. */ selectFirstItem(): Promise; /** * Selects an item in the accordion and expands the accordion item containing it. * Only applies when selectionMode is 'single' or 'single-persist'. * * @param id - the id of the item to select */ selectItem(id: string): Promise; /** * Selects items in the accordion and expands the accordion item containing it. * Only applies when selectionMode is 'multiple'. * * @param ids - the id of the item to select */ selectItems(ids: string[]): Promise; readonly solutionItemHover: import("@arcgis/lumina").TargetedEvent; readonly solutionItemSelect: import("@arcgis/lumina").TargetedEvent; readonly solutionTypeHover: import("@arcgis/lumina").TargetedEvent; readonly "@eventTypes": { solutionItemHover: SolutionItemAccordion["solutionItemHover"]["detail"]; solutionItemSelect: SolutionItemAccordion["solutionItemSelect"]["detail"]; solutionTypeHover: SolutionItemAccordion["solutionTypeHover"]["detail"]; }; }