/** NOTE **
 * Due to circular dependencies between insert.js and schema.js, specifically around createNewAttribute, there
 * is duplicate insertData code in fsCreateAttribute. If you change something here related to insertData, you should
 * do the same in fsCreateAttribute.js
 */
/**
 * Inserts data specified in the insertObject parameter.
 * @param insertObject
 */
declare function insertData(insertObject: any): Promise<{
    message: string;
    new_attributes: any;
    txn_time: any;
}>;
/**
 * Updates the data in the updateObject parameter.
 * @param updateObject - The data that will be updated in the database
 */
declare function updateData(updateObject: any): Promise<{
    message: string;
    new_attributes: any;
    txn_time: any;
}>;
/**
 * Upsert the data in the upsertObject parameter.
 * @param upsertObject - Represents the data that will be upserted in the database
 */
declare function upsertData(upsertObject: any): Promise<{
    message: string;
    new_attributes: any;
    txn_time: any;
}>;
/**
 *  Takes an insert/update object and validates attributes, also looks for dups and get a list of all attributes from the record set
 * @param {Object} writeObject
 * @returns {Promise<{tableSchema, hashes: any[], attributes: string[]}>}
 */
export function validation(writeObject: any): Promise<{
    tableSchema: any;
    hashes: any[];
    attributes: string[];
}>;
export function flush(object: any): any;
export { insertData as insert, updateData as update, upsertData as upsert };
