import * as plugins from './smartguard.plugins'; import { Guard } from './smartguard.classes.guard'; import { GuardSet } from './smartguard.classes.guardset'; export * from './smartguard.classes.guard'; export const passGuards = async (dataArg: T, guards: Array>) => { const done = plugins.smartpromise.defer(); const guardSet = new GuardSet(guards); const results = await guardSet.executeGuardsWithData(dataArg); for (const result of results) { if(!result) { return; } } done.resolve(); await done.promise; return; };