jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
33 lines (32 loc) • 1.24 kB
TypeScript
import React from 'react';
import type { ConditionBuilderProps, ConditionGroupValue } from '../types';
interface ConditionBuilderState {
tmpValue: ConditionGroupValue;
}
export declare class QueryBuilder extends React.Component<ConditionBuilderProps, ConditionBuilderState> {
config: {
valueTypes?: Array<"value" | "field" | "func" | "formula">;
fields?: import("./types/_common").ConditionBuilderFields;
funcs?: import("./types/_common").ConditionBuilderFuncs;
maxLevel?: number;
types: {
[propName: string]: import("./types/_common").ConditionBuilderType;
};
};
dragTarget?: HTMLElement;
ghost?: HTMLElement;
host: HTMLElement;
lastX: number;
lastY: number;
lastMoveAt: number;
handleDragStart(e: React.DragEvent): void;
handleDragOver(e: DragEvent): void;
handleDragDrop(): void;
handleDragEnd(e: Event): void;
handleClear(): void;
highlightValue(value: ConditionGroupValue): JSX.Element;
renderBody(onChange: (value: ConditionGroupValue) => void, value?: ConditionGroupValue, popOverContainer?: any): JSX.Element;
render(): JSX.Element;
}
declare const _default: typeof QueryBuilder;
export default _default;