export = Table; /** * @template T */ declare class Table { /** * Check if file name could be name of a table file * @param {string} name - table name */ static isTableFileName(name: string): boolean; /** * Extract table name from file name * @param {string} fileName - table file name * @returns {string} */ static getTableNameFromFileName(fileName: string): string; /** * @constructor * @param {string} path - path to table file */ constructor(path: string); path: string; /** * @async */ init(): Promise; /** * Get item by id * @param {number} id - item id * @returns {Promise} */ get(id: number): Promise; /** * Return items matching filter function * @param {(item: T) => boolean} filterFc - filter function * @returns {Promise} */ filter(filterFc: (item: T) => boolean): Promise; /** * Update item with data * @param {number} id - id of the item to update * @param {T} data - data to update * @returns {Promise} */ update(id: number, data: T): Promise; /** * Set data fo the item * @param {number} id - id fo the item to set * @param {T} data - data to set * @returns {Promise} */ set(id: number, data: T): Promise; /** * Delete item by id * @param {number} id - id of the item * @returns {Promise} */ delete(id: number): Promise; /** * Insert data into table and returns id of the new item * @param {T} data - data * @returns {Promise} */ insert(data: T): Promise; /** * Return path to table file * @returns {string} */ getTablePath(): string; /** * Delete table * @returns {Promise} */ drop(): Promise; }