import {Provider} from 'tramway-core-connection'; import {errors} from "tramway-core"; const {AbstractMethodError} = errors; /** * @abstract * @export * @class CLASS_NAME */ export default class CLASS_NAME extends Provider { /** * @param {number|string} id * @returns {Promise} * * @memberOf CLASS_NAME */ async getOne(id) { throw new AbstractMethodError(); } /** * @param {string[] | number[]} ids * * @memberOf CLASS_NAME */ async getMany(ids) { throw new AbstractMethodError(); } /** * @memberOf CLASS_NAME */ async get() { throw new AbstractMethodError(); } /** * @param {string | Object} conditions * * @memberOf CLASS_NAME */ async find(conditions) { throw new AbstractMethodError(); } /** * @param {number|string} id * @returns {Promise} * * @memberOf CLASS_NAME */ async has(id) { throw new AbstractMethodError(); } /** * @param { string[] | number[] } ids * * @memberOf CLASS_NAME */ async hasThese(ids) { throw new AbstractMethodError(); } /** * @param {string | Object} conditions * * @memberOf CLASS_NAME */ async count(conditions) { throw new AbstractMethodError(); } /** * @param {Object} item * * @memberOf CLASS_NAME */ async create(item) { throw new AbstractMethodError(); } /** * @param {number|string} id * @param {Object} item * * @memberOf CLASS_NAME */ async update(id, item) { throw new AbstractMethodError(); } /** * @param {number|string} id * * @memberOf CLASS_NAME */ async delete(id) { throw new AbstractMethodError(); } /** * @param { number[] | string[]} id * * @memberOf CLASS_NAME */ async deleteMany(id) { throw new AbstractMethodError(); } /** * Recommended to use other functions first. * @param {string} query * @param {[] | Object} values * * @memberOf CLASS_NAME */ async query(query, values) { throw new AbstractMethodError(); } }