import React from 'react'; import { GlobalVariableItem } from 'amis-core'; import { PanelProps, EditorManager } from 'amis-editor-core'; type PanelComponentProps = { value: GlobalVariableItem; onChange: (value: GlobalVariableItem) => void; }; export interface GlobalVarItemInEditor extends Omit { id: string | number; } /** * 全局变量管理面板 */ export interface globalVarPanel { /** * 变量类型,不通的变量类型配置面板不一样 */ type: string | 'builtin'; /** * 变量类型标题 */ title: string; /** * 变量类型描述 */ description?: string; renderBrief?: (value: GlobalVariableItem) => React.ReactNode; /** * 验证数据合法性 * @param value * @returns */ validate?: (value: GlobalVariableItem) => string | void | Promise; /** * 变量保存前支持数据格式化 * @param value * @returns */ pipeOut?: (value: GlobalVariableItem) => GlobalVariableItem; /** * 配置面板 */ component?: React.ComponentType; getComponent?: (manger: EditorManager) => Promise>; } export declare function GlobalVarSubPanel(props: any): React.JSX.Element; export declare function registerGlobalVarPanel(type: string, panel: Omit): void; export declare function unregisterGlobalVarPanel(type: string): void; export interface GlobalVarMangerProps extends PanelProps { } export declare const GlobalVarManger: (props: GlobalVarMangerProps) => React.JSX.Element; export declare function GlobalVarManagerPanel(props: any): React.JSX.Element; export {};