import { DropdownOption } from 'naive-ui'; import { CSSProperties } from 'vue'; import { ThemeComponentOptionEnum } from '../../../composables/useCanvasTheme'; import { ComponentNode, ComponentTypes } from '../../../types/canvas'; import { ResizeHandlePosition } from './ResizeHandles.vue'; type __VLS_Props = { id: ComponentNode['id']; discard?: boolean; duplicate?: boolean; edit?: boolean; remove?: boolean; settings?: boolean; stylable?: boolean; collapsible?: boolean; showOnlyTopToolbar?: boolean; showOnlyBottomToolbar?: boolean; immovable?: boolean; excludeStylables?: ThemeComponentOptionEnum[]; add?: boolean; active?: boolean; selected?: boolean; inlineEdit?: boolean; hideOutline?: boolean; addIcon?: string; editIcon?: string; discardIcon?: string; duplicateIcon?: string; parentType?: ComponentTypes; settingsIcon?: string; removeIcon?: string; resizable?: boolean; resizeHandles?: ResizeHandlePosition[]; resizeMaintainAspectRatio?: boolean; expiredContent?: boolean; restrictedContent?: boolean; variants?: { title: string; options: DropdownOption[]; selected?: DropdownOption['key']; }; }; declare function __VLS_template(): { attrs: Partial<{}>; slots: { 'toolbar-slot'?(_: {}): any; default?(_: {}): any; }; refs: {}; rootEl: HTMLDivElement; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { add: () => any; remove: () => any; select: () => any; settings: () => any; style: (v: CSSProperties) => any; drop: (args_0: { draggedId: string; position: "top" | "bottom" | "left" | "right"; }) => any; edit: () => any; discard: () => any; duplicate: () => any; "content-change": (args_0: { fileId: string; pageIndex?: number; pageId?: string; thumbnailUrl?: string; }) => any; "asset-change": (args_0: { assetId: string; }) => any; "variant-change": (variant: import('naive-ui/es/menu/src/interface').Key | undefined) => any; "resize-start": () => any; "resize-end": () => any; }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{ onAdd?: (() => any) | undefined; onRemove?: (() => any) | undefined; onSelect?: (() => any) | undefined; onSettings?: (() => any) | undefined; onStyle?: ((v: CSSProperties) => any) | undefined; onDrop?: ((args_0: { draggedId: string; position: "top" | "bottom" | "left" | "right"; }) => any) | undefined; onEdit?: (() => any) | undefined; onDiscard?: (() => any) | undefined; onDuplicate?: (() => any) | undefined; "onContent-change"?: ((args_0: { fileId: string; pageIndex?: number; pageId?: string; thumbnailUrl?: string; }) => any) | undefined; "onAsset-change"?: ((args_0: { assetId: string; }) => any) | undefined; "onVariant-change"?: ((variant: import('naive-ui/es/menu/src/interface').Key | undefined) => any) | undefined; "onResize-start"?: (() => any) | undefined; "onResize-end"?: (() => any) | undefined; }>, { collapsible: boolean; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };