import { IRawModel } from 'datx-utils'; import { IIdentifier } from './interfaces/IIdentifier'; import { IType } from './interfaces/IType'; import { PureCollection } from './PureCollection'; export declare class PureModel { /** * Model type used for serialization * * @static * @type {IType} * @memberof Model */ static type: IType; /** * Current autoincrement value used for automatic id generation * * @static * @type {IIdentifier} * @memberof Model */ static autoIdValue: IIdentifier; static enableAutoId: boolean; /** * Function used to preprocess the model input data. Called during the model initialization * * @static * @param {object} data Input data * @param {PureCollection} [collection] The collection the new model will belong to * @returns Target model data * @memberof Model */ static preprocess(data: object, _collection?: PureCollection): object; /** * Method used for generating of automatic model ids * * @static * @returns {IIdentifier} A new model id * @memberof Model */ static getAutoId(): IIdentifier; static toJSON(): IType; protected static __datxInitProps?: () => void; constructor(rawData?: IRawModel, collection?: PureCollection); }