/**
 * Issue Management Feature
 *
 * Complete issue tracking and management for Syndarix projects.
 *
 * @module features/issues
 */

// Components
export {
  StatusBadge,
  PriorityBadge,
  SyncStatusIndicator,
  IssueFilters,
  IssueTable,
  BulkActions,
  StatusWorkflow,
  ActivityTimeline,
  IssueDetailPanel,
} from './components';

// Hooks
export {
  useIssues,
  useIssue,
  useUpdateIssue,
  useUpdateIssueStatus,
  useBulkIssueAction,
  useSyncIssue,
  issueKeys,
} from './hooks';

// Types - use explicit names to avoid collision with component IssueFilters
export type {
  IssueStatus,
  IssuePriority,
  SyncStatus,
  ActorType,
  IssueAssignee,
  IssueLabel,
  IssueActivity,
  IssueSummary,
  IssueDetail,
  IssueFilters as IssueFiltersType,
  IssueSortField,
  IssueSortDirection,
  IssueSort,
  IssueBulkAction,
  IssueBulkActionRequest,
  IssueUpdateRequest,
  IssueSyncRequest,
  StatusTransition,
  StatusConfig,
  PriorityConfig,
  PaginatedIssuesResponse,
} from './types';

// Constants
export {
  STATUS_CONFIG,
  PRIORITY_CONFIG,
  STATUS_TRANSITIONS,
  getAvailableTransitions,
  getPrimaryTransition,
  STATUS_ORDER,
  PRIORITY_ORDER,
  SYNC_STATUS_CONFIG,
  DEFAULT_PAGE_SIZE,
  MAX_BULK_SELECTION,
} from './constants';
