/** * AST Guard Presets - Pre-configured security levels * * Security levels (high → low): * - STRICT: Maximum security (bank-grade) * - SECURE: High security with flexibility * - STANDARD: Balanced security * - PERMISSIVE: Minimal restrictions * * @packageDocumentation */ export { PresetOptions, PresetLevel } from './types'; export { createStrictPreset } from './strict.preset'; export { createSecurePreset } from './secure.preset'; export { createStandardPreset } from './standard.preset'; export { createPermissivePreset } from './permissive.preset'; export { createAgentScriptPreset, type AgentScriptOptions, AGENTSCRIPT_STRICT_GLOBALS, AGENTSCRIPT_SECURE_GLOBALS, AGENTSCRIPT_STANDARD_GLOBALS, AGENTSCRIPT_PERMISSIVE_GLOBALS, AGENTSCRIPT_BASE_GLOBALS, // Legacy alias for STRICT getAgentScriptGlobals, type SecurityLevel, } from './agentscript.preset'; import { ValidationRule } from '../interfaces'; import { PresetLevel, PresetOptions } from './types'; import { createStrictPreset } from './strict.preset'; import { createSecurePreset } from './secure.preset'; import { createStandardPreset } from './standard.preset'; import { createPermissivePreset } from './permissive.preset'; /** * Creates a preset based on the specified level * * @param level - The preset level to create * @param options - Optional customization for the preset * @returns Array of configured validation rules * * @example * ```typescript * import { createPreset, PresetLevel } from 'ast-guard'; * * // Create a strict preset (bank-grade) * const rules = createPreset(PresetLevel.STRICT); * * // Create a standard preset with custom options * const rules = createPreset(PresetLevel.STANDARD, { * requiredFunctions: ['callTool'], * additionalDisallowedIdentifiers: ['window', 'document'] * }); * ``` */ export declare function createPreset(level: PresetLevel, options?: PresetOptions): ValidationRule[]; /** * Convenience object with all preset factory functions * * Security levels (high → low): * - strict: Maximum security (bank-grade) * - secure: High security with flexibility * - standard: Balanced security * - permissive: Minimal restrictions * * @example * ```typescript * import { Presets } from 'ast-guard'; * * // Create presets using the Presets object * const strictRules = Presets.strict(); * const secureRules = Presets.secure({ requiredFunctions: ['callTool'] }); * const standardRules = Presets.standard(); * ``` */ export declare const Presets: { /** Creates a strict preset (maximum security, bank-grade) */ readonly strict: typeof createStrictPreset; /** Creates a secure preset (high security) */ readonly secure: typeof createSecurePreset; /** Creates a standard preset (balanced security) */ readonly standard: typeof createStandardPreset; /** Creates a permissive preset (minimal restrictions) */ readonly permissive: typeof createPermissivePreset; /** Creates a preset by level */ readonly create: typeof createPreset; };