/**
 * External Issue Adapter Module
 *
 * Shared contract for normalizing external issues (Linear, Jira, Asana) into
 * a canonical IssueEnvelope format with deterministic spawn context mapping.
 */
export { type IssueSource, type IssueEnvelope, type IssueSpawnContext, type IssueValidationError, type IssueValidationErrorCode, type IssueValidationResult, type ExternalIssueAdapter, type ExternalIssueErrorCode, type ExternalIssueAdapterErrorCode, type NormalizedIssueEnvelope, type IssueSourceMetadata, type ExternalMappingProvider, type ExternalExecutionMapping, type UpsertExternalExecutionMappingInput, ISSUE_SOURCES, ExternalIssueError, ExternalIssueAdapterError, toNormalizedEnvelope, } from './types.js';
export { validateIssueEnvelope, validateOrThrow, } from './validation.js';
export { mapToSpawnContext, } from './mapper.js';
export { LinearIssueAdapter, JiraIssueAdapter, AsanaIssueAdapter, ShortcutIssueAdapter, } from './adapters.js';
export { ExternalExecutionMappingStore } from './mapping-store.js';
export { normalizeJiraIssue, normalizeJiraIssueToEnvelope, buildJiraTicketDescription, buildJiraMetadata, buildJiraSpawnContextMessage, getJiraIssueByKey, isJiraConfigured, getJiraProjectKey, importJiraIssueToPmo, } from './jira.js';
export { normalizeLinearIssue, normalizeLinearIssueToEnvelope, buildLinearTicketDescription, buildLinearMetadata, buildLinearSpawnContextMessage, buildLinearIssueChoiceCommand, getLinearIssueByIdentifier, listLinearIssues, type LinearAdapterConfig, } from './linear.js';
export { normalizeAsanaTask, normalizeAsanaTaskToEnvelope, buildAsanaTicketDescription, buildAsanaMetadata, buildAsanaSpawnContextMessage, buildAsanaTaskChoiceCommand, getAsanaTaskByGid, listAsanaTasks, importAsanaTaskToPmo, type AsanaAdapterConfig, } from './asana.js';
export { normalizeShortcutStory, normalizeShortcutStoryToEnvelope, buildShortcutTicketDescription, buildShortcutMetadata, buildShortcutSpawnContextMessage, buildShortcutStoryChoiceCommand, getShortcutStoryByKey, listShortcutStories, importShortcutStoryToPmo, type ShortcutAdapterConfig, } from './shortcut.js';
export { resolveMirrorToPmo, type MirrorResolution, type MirrorResolutionInput, } from './work-start.js';
export { OutboundSyncHandler, initOutboundSync, stopOutboundSync, type OutboundSyncResult, } from './outbound-sync.js';
