export type {
  PermissionAction,
  PermissionRule,
  BashPermissionConfig,
  PermissionContext,
  PermissionCheckResult,
  PermissionDecision,
  FileOperation,
  FilePermissionContext,
  FilePermissionConfig,
  WebPermissionContext,
  WebPermissionConfig,
  GitOperation,
  GitPermissionContext,
  GitPermissionConfig,
} from './types.js';

export { matchPattern, matchRules, parseCommand, generateAskPattern } from './wildcard.js';

export { PermissionManager, getPermissionManager, resetPermissionManager } from './manager.js';

// Checker pattern exports
export type { PermissionChecker, BasePermissionConfig } from './checkers/base.js';
export { BashPermissionChecker } from './checkers/bash.js';
export { FilePermissionChecker } from './checkers/file.js';
