import { DataContainer, Reference, AggregatedReference, DerivedReference, GroupedRefeference, ResolvedReference, ListItem, ModelDefinition, Property, PropertyAggregate, ValueMappingConfig, ModelMetadata, IndicesController, ChangeDetector, ModelQualityConfig, AttributeQualityConfig, ValidatorErrorType, QueryReference } from '@dcupl/common'; import { ModelParser } from '../'; export declare const EntryMetadataValues: { REF_VALUE: string; }; export type ValidatorReturnValue = { isValid: boolean; type: ValidatorErrorType; }; export declare class DcuplModel { private modelParser; properties: Map; references: Map; attributeQualityConfigs: Map; key: string; initialDefinition: ModelDefinition; private data; supportsAutoCreation: boolean; autoGenerateKey: boolean; autoGenerateProperties: boolean; keyProperty: string; valueMappings: ValueMappingConfig[]; meta?: ModelMetadata | undefined; qualityConfig: ModelQualityConfig; indicesController: IndicesController; cdRef: ChangeDetector; constructor(modelParser: ModelParser); init(modelDefinition: ModelDefinition): void; applyPropertiesAndReferences(modelDefinition: ModelDefinition): void; private setAttributeQualityConfig; getModelDefinition(): ModelDefinition; generatePropertiesFromContainer(container: DataContainer): void; private getReferenceKeys; private setError; private processBasicProperty; private handleValidators; private getWrongDataTypeError; private processStringProperty; private processIntProperty; private processFloatProperty; private processJSONProperty; private processBooleanProperty; private processDateProperty; private processSingleValuedReference; private processMultiValuedReference; getViewKeys(): string[]; addBasicPropertiesAndReferences(container: DataContainer): void; addQueryReferences(container: DataContainer): void; private isValidValueMapping; private mapRawValueUsingValueMapping; private handleAutoCreationAndReturnKey; private addContainer; addResolvedReferences(container: DataContainer): void; addDerivedReferencesGroupedReferencesDerivedPropertiesAndExpressionProperties(container: DataContainer): void; private handleDerivedProperties; reRunDerivedPropertiesBasedOnResolves(container: DataContainer): void; private handleSingleValuedDerivedProperties; private handleMultiValuedDerivedProperties; private handleDerivedReferences; private asStringArray; private handleGroupedReferences; resetData(): void; resetIndexMap(): void; deleteDataEntries(data: DataContainer): void; getAttributes(): (Reference | Property)[]; getAttribute(key: string): Reference | Property | undefined; getReferencesRelevantForDependencyGraph(): Reference[]; getBasicReferences(): Reference[]; getQueryReferences(): QueryReference[]; getResolvedReferences(): ResolvedReference[]; getGroupedReferences(): GroupedRefeference[]; getDerivedReferences(): DerivedReference[]; getAggregatedReferences(): AggregatedReference[]; getBasicProperties(): Property[]; getDerivedProperties(): Property[]; getDerivedPropertiesForBasicAndDerivedReferences(): Property[]; getDerivedPropertiesForResolvedReferences(): Property[]; getDerivedReferencesForResolvedReferences(): DerivedReference[]; getExpressionProperties(): Property[]; getAggregatedProperties(): PropertyAggregate[]; hasBasicReferences(): boolean; hasQueryReferences(): boolean; hasResolvedReferences(): boolean; hasGroupedReferences(): boolean; hasDerivedReferences(): boolean; hasBasicProperties(): boolean; hasDerivedProperties(): boolean; hasDerivedPropertiesForBasicReferences(): boolean; hasDerivedPropertiesBasedOnResolvedReferences(): boolean; hasDerivedReferencesBasedOnResolvedReferences(): boolean; hasExpressionProperties(): boolean; hasAggregatedProperties(): boolean; getData(options?: { itemKeys: string[]; }): Map; getDataAsArray(): ListType[]; getEntry(key: string): ListType | undefined; private setRefValue; }