import { defineConfigSchema, getAsyncLifecycle, getSyncLifecycle } from '@openmrs/esm-framework';
import { configSchema } from './config-schema';

// Import TypeScript declarations
import './scss-modules.d.ts';

const moduleName = '@birthsenseai/esm-patient-ai-analysis-app';

const options = {
  featureName: 'patient-ai-analysis',
  moduleName,
};

export const importTranslation = require.context('../translations', false, /.json$/, 'lazy');

export function startupApp() {
  defineConfigSchema(moduleName, configSchema);
}

export const aiAnalysisActionButton = getAsyncLifecycle(
  () => import('./ai-analysis-action-button.component'),
  options,
);

export const aiAnalysisWorkspace = getAsyncLifecycle(
  () => import('./ai-analysis-workspace.component'),
  options,
);

export const aiAnalysisModal = getAsyncLifecycle(
  () => import('./ai-analysis-modal.component'),
  options,
); 