/**
 * Application Constants
 */

export const APP_NAME = 'Job Info';
export const APP_VERSION = '2.0.0';

/** HTTP Status codes */
export const HTTP_STATUS = {
  OK: 200,
  CREATED: 201,
  NO_CONTENT: 204,
  BAD_REQUEST: 400,
  UNAUTHORIZED: 401,
  FORBIDDEN: 403,
  NOT_FOUND: 404,
  INTERNAL_SERVER_ERROR: 500,
  SERVICE_UNAVAILABLE: 503,
} as const;

/** Error messages */
export const ERROR_MESSAGES = {
  UNAUTHORIZED: 'Authentication required',
  TOKEN_EXPIRED: 'Token has expired',
  TOKEN_INVALID: 'Invalid token',
  TOKEN_REFRESH_FAILED: 'Failed to refresh token',
  USER_NOT_FOUND: 'User not found',
  JOB_NOT_FOUND: 'Job not found',
  CACHE_ERROR: 'Cache operation failed',
  POCKETBASE_ERROR: 'PocketBase operation failed',
  GRAPH_API_ERROR: 'Microsoft Graph API error',
  INTERNAL_ERROR: 'Internal server error',
} as const;

/** Success messages */
export const SUCCESS_MESSAGES = {
  LOGIN_SUCCESS: 'Login successful',
  LOGOUT_SUCCESS: 'Logout successful',
  TOKEN_REFRESHED: 'Token refreshed successfully',
} as const;
