import { ISerializationInfoArray, ModelSerializer } from '@devexpress/analytics-core/analytics-utils'; import * as ko from 'knockout'; import { DataFieldType } from '../enums'; import { SerializableModel } from '../serializable-model'; export type DataNodeType = 'Unknown' | 'DataSource' | 'DataTable' | 'DataMember' | 'DataField' | 'CalculatedFields' | 'CalculatedDataField' | 'ExpressionFields' | 'OlapDataSource' | 'OlapMeasureFolder' | 'OlapMeasure' | 'OlapDimensionFolder' | 'OlapDimension' | 'OlapKpiFolder' | 'OlapKpi' | 'OlapFolder' | 'OlapHierarchy'; export interface IDataField { dataMember: ko.Observable; name: ko.Observable; displayName: ko.Observable; fieldType?: ko.Observable; isConvertible?: ko.Observable; isDataFieldNode: ko.Observable; hasCalculatedFields?: boolean; groupIndex?: ko.Observable; nodeType?: ko.Observable; isAggregate?: ko.Observable; isList?: ko.Observable; isCorruptedCalcField?: ko.Observable; isDataSourceNode?: ko.Observable; isDataTableNode?: ko.Observable; isExpressionsNode?: ko.Observable; } export declare let IsNumeric: (dataType: DataFieldType) => boolean; export declare let IsTextual: (dataType: DataFieldType) => boolean; export declare let IsDate: (dataType: DataFieldType) => boolean; export declare let IsDateTime: (dataType: DataFieldType) => boolean; export declare let IsOlapHierarchyField: (dataField: any) => boolean; export declare class DataField extends SerializableModel implements IDataField { static isNumeric(dataField: IDataField): boolean; static isDateTime(dataField: IDataField): boolean; static olapMarker(): string; static isOlap(dataMember: string): boolean; static isMeasure(dataField: IDataField): boolean; static isOrContainMeasures(dataMember: string): boolean; static ifOlapThenOnlyMeasure(dataField: IDataField): boolean; static ifOlapThenOnlyDimension(dataField: IDataField): boolean; static isContinous(dataField: IDataField): boolean; static isOlapHierarchy(dataField: IDataField): boolean; defaultNumericFormat: any; dataMember: ko.Observable; name: ko.Observable; childNodes: ko.ObservableArray; groupIndex: ko.Observable; groupDataItems: Array; displayName: ko.Observable; fieldType: ko.Observable; nodeType: ko.Observable; isDataFieldNode: ko.Observable; isDataMemberNode: ko.Observable; expanded: boolean; isConvertible: ko.Observable; isComparable: ko.Observable; hasCalculatedFields: boolean; isAggregate: ko.Observable; isList: ko.Observable; isCorruptedCalcField: ko.Observable; isDataSourceNode: ko.Observable; isDataTableNode: ko.Observable; isExpressionsNode: ko.Observable; constructor(dataFieldJSON?: any, serializer?: ModelSerializer); getInfo(): ISerializationInfoArray; }