/** * A model is a representation of a dataset * @returns an object with methods to manipulate the model */ export function model(): { get: () => any[]; clone: (other: any) => /*elided*/ any; /** * Renames the reference names using a renamer * @param {Function} rename - the renamer function */ renameUsing: (rename: Function) => /*elided*/ any; /** * Analyzes the input data and derives a model from it * * @param {Array|Object} value - the data to derive the model from * @param {boolean} sparseData - indicates that rows may have missing attributes * @returns {Object} this */ from: (value: any[] | Object, sparseData: boolean) => Object; /** * Merges the model with another model * * @param {Array} other - the model to merge with * @param {Boolean} override - whether to override the type of the first model * @returns {Object} this */ merge: (other: any[], override?: boolean) => Object; };