import type { UmbPropertyAction } from './property-action.interface.js'; import type { UmbControllerHostElement } from '../../../libs/controller-api/index.js'; import type { ManifestElementAndApi, ManifestWithDynamicConditions } from '../../../libs/extension-api/index.js'; export interface ManifestPropertyAction extends ManifestElementAndApi>, ManifestWithDynamicConditions { type: 'propertyAction'; forPropertyEditorUis: string[]; meta: MetaType; } export interface MetaPropertyAction { } export interface ManifestPropertyActionDefaultKind extends ManifestPropertyAction { type: 'propertyAction'; kind: 'default'; } export interface MetaPropertyActionDefaultKind extends MetaPropertyAction { /** * An icon to represent the action to be performed * @examples ["icon-box", "icon-grid"] */ icon: string; /** * The friendly name of the action to perform * @examples ["Create", "Create Content Template"] */ label: string; } export type UmbPropertyActionExtensions = ManifestPropertyAction | ManifestPropertyActionDefaultKind; declare global { interface UmbExtensionManifestMap { UmbPropertyActionExtensions: UmbPropertyActionExtensions; } }