@adaptabletools/adaptable
Version:
Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements
44 lines (43 loc) • 1.61 kB
TypeScript
import * as React from 'react';
import { FlexProps } from 'rebass';
import type { AdaptableColumnPredicate, AdaptableModule, AdaptablePredicateDef, ColumnScope } from '../../../types';
import type { XOR } from '../../../Utilities/Extensions/TypeExtensions';
import { AdaptableQuery } from '../../../AdaptableState/Common/AdaptableQuery';
export type RuleType = XOR<{
Predicates: AdaptableColumnPredicate[];
}, AdaptableQuery>;
export type EntityRulesEditorProps<T> = {
data: T;
module: AdaptableModule;
showNoRule?: boolean;
showPredicate?: boolean;
showObservable?: boolean;
showAggregation?: boolean;
showBoolean?: boolean;
onChange: (data: T) => void;
defaultPredicateId: string;
predicateDefs: AdaptablePredicateDef[];
getPredicateDefsForColId?: (colId: string) => AdaptablePredicateDef[];
enablePredicateColumnId?: boolean;
children?: React.ReactNode;
descriptions: {
selectPredicate: React.ReactNode;
useBooleanQuery: React.ReactNode;
useObservableQuery: React.ReactNode;
useAggregationQuery: React.ReactNode;
};
flexProps?: FlexProps;
showQueryBuilder?: boolean;
};
export declare const EntityRulesSummary: <T extends {
Rule?: RuleType;
Scope: ColumnScope;
}>(props: {
data: T;
renderPredicate: (content: string) => React.ReactNode;
renderQueryExpression: (content: string) => React.ReactNode;
}) => React.JSX.Element;
export declare const EntityRulesEditor: <T extends {
Rule: RuleType;
Scope: ColumnScope;
}>(props: EntityRulesEditorProps<T>) => React.JSX.Element;