import React from 'react'; import { EditorManager } from '../manager'; import { EditorStoreType } from '../store/editor'; import { RenderOptions } from 'amis-core'; import { BuildPanelEventContext, PluginEvent, RendererInfoResolveEventContext } from '../plugin'; export interface SubEditorProps { store: EditorStoreType; manager: EditorManager; theme?: string; amisEnv?: RenderOptions; readonly?: boolean; } export declare class SubEditor extends React.Component { afterResolveEditorInfo(event: PluginEvent): void; handleBuildPanels(event: PluginEvent): void; buildSchema(): { size: string; title: string | undefined; onClose: () => void; onConfirm: ([valueRaw]: any) => void; body: { type: string; mode: string; wrapWithPanel: boolean; wrapperComponent: string; onValidate: (value: any) => Promise<{ schema: string; } | undefined>; onChange: () => void; body: (false | { name: string; asFormItem: boolean; children: ({ value, onChange }: { value: any; onChange: (value: any) => void; }) => React.JSX.Element; type?: undefined; label?: undefined; className?: undefined; onClick?: undefined; } | { type: string; label: string; className: string; onClick: () => void; name?: undefined; asFormItem?: undefined; children?: undefined; } | undefined)[]; tpl?: undefined; } | { type: string; tpl: string; mode?: undefined; wrapWithPanel?: undefined; wrapperComponent?: undefined; onValidate?: undefined; onChange?: undefined; body?: undefined; }; actions: ({ children: React.JSX.Element | null; type?: undefined; label?: undefined; level?: undefined; actionType?: undefined; } | { type: string; label: string; level: string; children?: undefined; actionType?: undefined; } | { type: string; label: string; actionType: string; children?: undefined; level?: undefined; })[][]; closeOnEsc: boolean; bodyClassName: string; }; render(): any; }