const database = require("../modules/database") function grant(userId, productId, channel, permissionKey) { const query = ` INSERT INTO permissions ( userId, productId, channel, permissionKey ) VALUES ( ?, ?, ?, ? ) ` const statement = database.prepare(query) return statement.run(userId, productId, channel, permissionKey) } function revoke(userId, productId, channel, permissionKey) { const query = ` DELETE FROM permissions WHERE userId = ? AND productId = ? AND channel = ? AND permissionKey = ? ` const statement = database.prepare(query) return statement.run(userId, productId, channel, permissionKey) } function findByUserAndProduct(userId, productId) { const query = ` SELECT channel, permissionKey FROM permissions WHERE userId = ? AND productId = ? ` const statement = database.prepare(query) return statement.all(userId, productId) } function revokeAllOnProduct(userId, productId) { const query = ` DELETE FROM permissions WHERE userId = ? AND productId = ? ` const statement = database.prepare(query) return statement.run(userId, productId) } module.exports = { grant, revoke, findByUserAndProduct, revokeAllOnProduct };