UNPKG

@restorecommerce/chassis-srv

Version:
82 lines (81 loc) 3.36 kB
/** * Ensure that the collection exists and process the query * @param {Object} db arangodb connection * @param {string} collectionName collection name * @param {string} query query string * @param {Object} args list of arguments, optional * @return {Promise} arangojs query result */ export declare const query: (db: any, collectionName: string, query: string | any, args?: object) => Promise<any>; /** * Convert id to arangodb friendly key. * @param {string} id document identification * @return {any} arangodb friendly key */ export declare const idToKey: (id: string) => any; /** * Remove arangodb specific fields. * @param {Object} document A document returned from arangodb. * @return {Object} A clone of the document without arangodb specific fields. */ export declare const sanitizeOutputFields: (document: object) => object; export declare const sanitizeInputFields: (document: any) => any; /** * Auto-casting reference value by using native function of arangoDB * * @param {string} key * @param {object} value - raw value optional * @return {object} interpreted value */ export declare const autoCastKey: (key: any, value?: any) => any; /** * Auto-casting raw data * * @param {object} value - raw value * @returns {any} interpreted value */ export declare const autoCastValue: (value: any) => any; /** * Links children of filter together via a comparision operator. * @param {any} filter * @param {string} op comparision operator * @param {number} index to keep track of bind variables * @param {any} bindVarsMap mapping of keys to values for bind variables * @return {any} query template string and bind variables */ export declare const buildComparison: (filter: any, op: string, index: number, bindVarsMap: any) => any; /** * Creates a filter key, value. * When the value is a string, boolean, number or date a equal comparision is created. * Otherwise if the key corresponds to a known operator, the operator is constructed. * @param {string} key * @param {string|boolean|number|date|object} value * @param {number} index to keep track of bind variables * @param {any} bindVarsMap mapping of keys to values for bind variables * @return {String} query template string */ export declare const buildField: (key: any, value: any, index: number, bindVarsMap: any) => string; /** * Build ArangoDB query based on filter. * @param {Object} filter key, value tree object. * @param {number} index to keep track of bind variables * @param {any} bindVarsMap mapping of keys to values for bind variables * @return {any} query template string and bind variables */ export declare const buildFilter: (filter: any, index?: number, bindVarsMap?: any) => any; /** * Build count and offset filters. * @param {Object} options query options * @return {String} template query string */ export declare const buildLimiter: (options: any) => string; /** * Build sort filter. * @param {Object} options query options * @param {number} index to keep track of bind variables * @param {any} bindVarsMap Object containing bind key to values * @return {any} template query string and bind variables Object */ export declare const buildSorter: (options: any, index?: number, bindVarsMap?: any) => any; export declare const buildReturn: (options: any) => any; export declare const encodeMessage: (object: object) => Buffer;