export {
  ProjectEntitlementService,
  type ProjectCapability,
  type ProjectEntitlementPayload,
  type ProjectEntitlementState,
  type AiReviewQuotaStatus,
  type AiReviewServerCapabilities,
  type AiReviewQuotaReservation,
  type AiReviewRefundReason,
  verifyProjectEntitlement,
} from './project-entitlement-service';
export {
  ProjectAiService,
  type ProjectAiChatMessage,
  type ProjectAiLatexSnippet,
  type ProjectAiSource,
  type ProjectAiProposal,
  type ProjectAiProposalOperation,
  type ProjectAiCompileToolExecutor,
  type ProjectAiSandboxToolExecutor,
  type ProjectAiSettings,
  type ProjectLocalAiState,
  type ProjectAiWorkspaceState,
} from './project-ai-service';
export { CommandDispatchService } from './command-dispatch-service';
export type { CommandHandlerConfig } from './command-registry-service';
export { CommandRegistryService } from './command-registry-service';
export { waitForSaveQueueToDrain } from './editor-save-status';
export { EditorService } from './editor-service';
export type {
  ExternalFileChangeEvent,
  FileContentUpdateEvent,
  FileCreateEvent,
} from './file-system-service';
export { FileSystemService } from './file-system-service';
export {
  LatexSourceService,
  type LatexSourceDocumentSnapshot,
  type LatexSourceMutationEvent,
  type LatexSourceMutationOptions,
  type LatexSourceRevealRequest,
} from './latex-source-service';
export { NavigationService } from './navigation-service';
export {
  computeSnapshotEvictions,
  NOTE_SNAPSHOT_MAX_PER_WORKSPACE,
  NOTE_SNAPSHOT_MIN_CAPTURE_INTERVAL_MS,
} from './note-snapshot-policy';
export type {
  NoteSnapshotMetadata,
  NoteSnapshotRecord,
} from './note-snapshot-service';
export {
  NoteSnapshotService,
  type PreserveOutcome,
} from './note-snapshot-service';
export type { ShortcutServiceConfig } from './shortcut-service';
export { ShortcutService } from './shortcut-service';
export { UserActivityService } from './user-activity-service';
export { WorkbenchStateService } from './workbench-state-service';
export type {
  AssetDestinationInput,
  AssetStorageFileSystem,
  StoredMarkdownAsset,
  StoredWorkspaceAsset,
  StoreWorkspaceAssetFilesInput,
} from './workspace-asset-storage';
export {
  createAssetFileName,
  displayNameForAsset,
  getAssetDestination,
  isImageFile,
  storeWorkspaceAssetFiles,
  writeAssetFile,
} from './workspace-asset-storage';
export { WorkspaceOpsService } from './workspace-ops-service';
export type { BacklinkIndexState } from './workspace-state-service';
export { WorkspaceStateService } from './workspace-state-service';
export { ProjectToolsService } from './project-tools-service';
export type {
  CitationAuditDoiCandidate,
  CitationAuditIssue,
  CitationAuditIssueKind,
  CitationAuditReport,
  ProjectResearchReviewFinding,
  ProjectResearchReviewFindingKind,
  ProjectResearchReviewReport,
  ProjectTextReplacePreview,
  ProjectTextSearchMatch,
  ProjectTextSearchOptions,
  ProjectTextSearchScope,
} from './project-tools-service';
export {
  ProjectDatasetService,
  inspectDelimitedDatasetBytes,
  datasetBytesToLatexTable,
  type DatasetColumnSummary,
  type DatasetColumnType,
  type DatasetFormat,
  type DatasetInspection,
  type DatasetInspectionOptions,
  type DatasetLatexTable,
  type DatasetLatexTableOptions,
  type DatasetNumericStatistics,
  type DatasetTopValue,
} from './project-dataset-service';

export { ProjectStorageService, type ProjectStorageProviderFactory, type ProjectStorageMutationEvent } from './project-storage-service';

export { ProjectAssetService } from './project-asset-service';

export { ProjectGitService } from './project-git-service';
export {
  ProjectHttpService,
  type ProjectHttpMethod,
  type ProjectHttpRequest,
  type ProjectHttpResponse,
} from './project-http-service';

export {
  ProjectPdfService,
  type PdfSourceLocation,
  type PdfSyncPreferences,
  type ProjectPdfViewState,
  type ProjectPdfWorkspaceState,
} from './project-pdf-service';

export {
  DEFAULT_LEARNITIVE_GIT_CORS_PROXY,
  LEARNITIVE_GIT_AUTHOR_EMAIL_STORAGE_KEY,
  LEARNITIVE_GIT_AUTHOR_NAME_STORAGE_KEY,
  LEARNITIVE_GIT_CORS_PROXY_STORAGE_KEY,
  isDefaultPublicGitCorsProxy,
  readBrowserGitSettings,
  writeBrowserGitCorsProxySetting,
} from '@learnitive/project-git';
export type {
  BrowserGitSettings,
  ProjectGitCommit,
  ProjectGitDiff,
  ProjectGitRemote,
  ProjectGitStatus,
} from '@learnitive/project-git';
export {
  ProjectCompileService,
  type ProjectCompileState,
  type ProjectCompileStatus,
} from './project-compile-service';

export {
  ProjectCompileOrchestratorService,
  type UniversalCompilePhase,
  type UniversalCompileRequest,
  type UniversalCompileResultKind,
  type UniversalCompileState,
} from './project-compile-orchestrator-service';
export { ProjectExecutionError, ProjectExecutionService, runtimeErrorMessage } from './project-execution-service';

export {
  ProjectLiveDraftService,
  type ProjectLiveDraftState,
  type ProjectLiveDraftStatus,
  type ProjectLivePdfState,
  type ProjectLivePdfStatus,
  type ProjectLivePdfInstantPatch,
  type ProjectLivePdfInstantStatus,
} from './project-live-draft-service';



export {
  ProjectPaperMemoryService,
  type AddPaperMemoryInput,
  type AddPaperMemoryResult,
  type PaperMemoryChatMessage,
  type ProjectPaperMemoryRagStatus,
  type ProjectPaperMemoryWorkspaceState,
  type ProjectPaperMemoryManuscriptAction,
  type ProjectPaperMemoryManuscriptSelection,
  type ProjectPaperMemoryManuscriptActionResult,
  type PaperMemoryCitationMetadata,
  type PaperMemoryCitationCandidate,
  type PaperMemoryCitationPreparation,
  type PaperMemoryCitationSelection,
  type PaperMemoryCitationApplyResult,
  type PaperRelatedCandidate,
  type ProjectPaperMemoryCitationLocation,
  type ProjectPaperMemoryCitationContext,
  type ProjectPaperMemoryCitationVerificationStatus,
  type ProjectPaperMemoryCitationVerification,
} from './project-paper-memory-service';
export type {
  PaperChunk,
  PaperIndexGeneration,
  PaperMemoryIndexProgress,
  PaperMemoryManifest,
  PaperRecord,
} from '@learnitive/paper-memory';

export {
  ProjectSemanticService,
  type ProjectMeaningIndexProgress,
  type ProjectMeaningStatus,
} from './project-semantic-service';
export type {
  EmbeddingModelState,
  ProjectMeaningSearchResult,
} from '@learnitive/project-meaning';


export {
  ProjectReviewService,
  type CreateReviewCommentInput,
  type ReviewActivity,
  type ReviewActivityFilter,
  type ReviewActivityKind,
  type ReviewAuthor,
  type ReviewReply,
  type ReviewThread,
  type ReviewThreadFilter,
  type ReviewChange,
  type ReviewChangeFilter,
  type ReviewChangePresentation,
  type ReviewChangeMetadata,
  type ProposeReviewChangeInput,
  type ReviewChangeStatus,
  type ReviewChangeType,
  type ReviewEditorDecoration,
  type ReviewProjection,
  type ReviewProjectionSegment,
  buildReviewProjection,
} from './project-review-service';


export {
  LOCAL_REVIEW_BACKEND,
  COLLABORATIVE_REVIEW_BACKEND,
  type ProjectReviewBackendAdapter,
  type ProjectReviewBackendKind,
} from './project-review-backend';

export {
  ProjectCollaborationService,
  type ProjectCollaborationState,
} from './project-collaboration-service';

export type { ProjectRagEvidence, ProjectRagRetrieval } from '@learnitive/project-rag';


export {
  ProjectResearchWorkflowService,
  type ResearchArtifactChange,
  type ResearchArtifactFreshness,
  type ResearchArtifactRerunPlan,
  type ResearchDependencyReference,
  type ResearchDependencyTrace,
  type ResearchResultsReview,
  type ResearchWorkflowEdge,
  type ResearchWorkflowEdgeKind,
  type ResearchWorkflowGraph,
  type ResearchWorkflowNode,
  type ResearchWorkflowNodeKind,
} from './project-research-workflow-service';

export {
  ProjectTerminalAiService,
  type TerminalAiCommandKind,
  type TerminalAiResponse,
  type TerminalAgentPlan,
  type TerminalAgentStep,
  type TerminalAgentStepResult,
  type TerminalScientificProposal,
  type TerminalWorkflowResultsProposal,
} from './project-terminal-ai-service';

export {
  ProjectScientificRuntimeService,
  RuntimeArtifactCollector,
  RuntimeWorkspaceBridge,
  DEFAULT_RUNTIME_WORKSPACE_LIMITS,
  type RuntimeArtifactSyncResult,
  type RuntimeWorkspaceLimits,
  type RuntimeWorkspaceSkippedFile,
  type RuntimeWorkspaceSnapshot,
  type ScientificExecutionOptions,
  type ScientificExecutionResult,
} from './project-scientific-runtime-service';
export type {
  RuntimeExecutionRequest,
  RuntimeExecutionResult,
  RuntimePackageDefinition,
  RuntimePackageState,
  RuntimePlot,
  RuntimeWorkspaceFile,
  RuntimeWorkspacePort,
  ScientificRuntimeCapabilities,
  ScientificRuntimeFactory,
  ScientificRuntimeId,
  ScientificRuntimeInstanceState,
  ScientificRuntimeSession,
  ScientificRuntimeStatus,
} from '@learnitive/scientific-runtime';

export {
  ProjectTerminalService,
  type TerminalExecutionOptions,
  type TerminalExecutionRecord,
  type TerminalExecutionResult,
} from './project-terminal-service';
export type { GeneratedResearchArtifact } from './research-artifact-files';

export { ProjectAiWritingService } from './project-ai-writing-service';
export type {
  AiEditorActivity,
  AiSourceSuggestion,
  AiSuggestionAction,
  AiSuggestionCategory,
  AiWritingSettings,
  AutomaticAiSuggestionMode,
  PaperReviewClaim,
  PaperReviewDocument,
  PaperReviewEngineMode,
  PaperReviewEvidence,
  PaperReviewExperimentSignal,
  PaperReviewFinding,
  PaperReviewLiteratureRecord,
  PaperReviewMetaReview,
  PaperReviewMode,
  PaperReviewRole,
  PaperReviewRun,
  PaperReviewScores,
  PaperReviewSeverity,
  PaperReviewSourceLocation,
  PaperReviewStatus,
  PaperReviewVerificationStatus,
  StartPaperReviewOptions,
} from './project-ai-writing-service';
