@alilc/lowcode-editor-skeleton
Version:
alibaba lowcode editor skeleton
52 lines (51 loc) • 2.11 kB
TypeScript
import { ReactElement, ComponentType } from 'react';
import { IPublicTypeTitleContent, IPublicTypeWidgetConfigArea, IPublicTypeWidgetBaseConfig, IPublicTypePanelDockProps, IPublicTypePanelConfigProps, IPublicTypePanelConfig } from '@alilc/lowcode-types';
import { IWidget } from './widget/widget';
export interface WidgetConfig extends IPublicTypeWidgetBaseConfig {
type: 'Widget';
props?: {
align?: 'left' | 'right' | 'bottom' | 'center' | 'top';
onInit?: (widget: IWidget) => void;
title?: IPublicTypeTitleContent | null;
};
content?: string | ReactElement | ComponentType<any>;
}
export declare function isWidgetConfig(obj: any): obj is WidgetConfig;
export interface DockProps extends IPublicTypePanelDockProps {
}
export interface DividerConfig extends IPublicTypeWidgetBaseConfig {
type: 'Divider';
props?: {
align?: 'left' | 'right' | 'center';
};
}
export declare function isDividerConfig(obj: any): obj is DividerConfig;
export interface IDockBaseConfig extends IPublicTypeWidgetBaseConfig {
props?: DockProps & {
align?: 'left' | 'right' | 'bottom' | 'center' | 'top';
onInit?: (widget: IWidget) => void;
};
}
export interface DockConfig extends IDockBaseConfig {
type: 'Dock';
content?: string | ReactElement | ComponentType<any>;
}
export declare function isDockConfig(obj: any): obj is DockConfig;
export interface DialogDockConfig extends IDockBaseConfig {
type: 'DialogDock';
dialogProps?: {
[key: string]: any;
title?: IPublicTypeTitleContent;
};
}
export declare function isDialogDockConfig(obj: any): obj is DialogDockConfig;
export declare function isPanelConfig(obj: any): obj is IPublicTypePanelConfig;
export interface PanelDockConfig extends IDockBaseConfig {
type: 'PanelDock';
panelName?: string;
panelProps?: IPublicTypePanelConfigProps & {
area?: IPublicTypeWidgetConfigArea;
};
content?: string | ReactElement | ComponentType<any> | IPublicTypePanelConfig[];
}
export declare function isPanelDockConfig(obj: any): obj is PanelDockConfig;