import { CustomTraitComponent, CustomTraitRenderFn } from '../components/TraitManager/TraitCustomField'; import { AssetManagerProps } from './assets'; import type { CanvasSpotLayoutComponent, CanvasSpotOverlayContentProps, CanvasSpotOverlayLayerProps } from './canvas'; import type { ComponentAppendFallbackFn, DropTargetsFn } from './components'; export type * from 'grapesjs'; declare module 'grapesjs' { interface HTMLParserOptions { codeSanitizer?: 'xml-sanitizer' | ((input: string) => string); } interface BlockCategoryProperties { icon?: string; } interface DeviceProperties { icon?: string; } interface BlockProperties { full?: boolean; } interface PropertyCompositeProps { corners?: boolean; generic?: boolean; } interface HTMLGeneratorBuildOptions { exporter?: any; } interface AddCollectionOptions { at?: number; } interface TraitProperties { addItem?: (index: number) => Record; labelItem?: (item: Record) => string; properties?: TraitProperties[]; component?: CustomTraitComponent; render?: CustomTraitRenderFn; typeProps?: Record; } interface AssetOpenOptions extends Omit { modalTitle?: string; } interface ComponentProperties { dropTargets?: DropTargetsFn; appendFallback?: ComponentAppendFallbackFn; } interface CanvasSpotProps { /** * Custom Studio layout component rendered on top of the spot. */ layoutComponent?: CanvasSpotLayoutComponent; /** * Overlay layer rendered by the built-in `overlayContent` canvas spot. */ overlay?: CanvasSpotOverlayLayerProps; /** * Content rendered by the built-in `overlayContent` canvas spot. */ content?: CanvasSpotOverlayContentProps; } }