// Base handler classes
export { BaseHandler, ScheduledHandler } from './base/BaseHandler';
export type { JobScheduleOptions } from './base/BaseHandler';

// Handler registry
export { handlerRegistry } from './registry/handler-registry';

// Utilities
export { createJobHandler } from './utils/create-job-handler';

// Types
export type {
  ExecutionContext,
  IHandler,
  JobHandler,
  ScheduledJob,
  HandlerConfig,
  HandlerConfigWithSchedule,
  TypedJobHandler,
  HandlerMetadata,
  OperationMetadata,
} from './types/types';

// Re-export IServiceContainer from types package
export type { IServiceContainer } from '@stock-bot/types';

// Decorators
export {
  Handler,
  Operation,
  QueueSchedule,
  ScheduledOperation,
  Disabled,
} from './decorators/decorators';

// Auto-registration utilities
export { autoRegisterHandlers, createAutoHandlerRegistry } from './registry/auto-register';

// Future exports - commented for now
// export { EventListener, EventPublisher } from './decorators/decorators';
