import { DeepObject, FieldsComponent, GlobalConfig, SelectiveEditor, SortableFieldComponent, TemplateResult, Types } from '@blinkk/selective-edit'; import { ListField, ListFieldComponent, ListFieldConfig, ListFieldItem, ListItemComponent } from '@blinkk/selective-edit/dist/selective/field/list'; import { HoverMenu } from '../ui/hoverMenu'; export interface MenuListFieldComponent extends ListFieldComponent { /** * Event handler for duplicating a list item. * * @param evt Click event from delete action. * @param index Item index the menu is showing for. */ handleDuplicateItem(evt: Event, index: number): void; /** * Event handler for inserting a list item. * * @param evt Click event from delete action. * @param index Item index the menu is showing for. * @param insertAbove Should the new item be inserted above the index. */ handleInsertItem(evt: Event, index: number, insertAbove: boolean): void; } export declare class MenuListField extends ListField implements MenuListFieldComponent { constructor(types: Types, config: ListFieldConfig, globalConfig: GlobalConfig, fieldType?: string); handleDuplicateItem(evt: Event, index: number): void; handleInsertItem(evt: Event, index: number, insertAbove: boolean): void; } export declare class MenuListFieldItem extends ListFieldItem implements ListItemComponent { listField: MenuListFieldComponent & SortableFieldComponent; hoverMenu: HoverMenu; constructor(listField: ListFieldComponent & SortableFieldComponent, fields: FieldsComponent); protected getIndexFromElement(target: HTMLElement): number; templateRemove(editor: SelectiveEditor, data: DeepObject, index: number): TemplateResult; }