51 lines
1.4 KiB
TypeScript
51 lines
1.4 KiB
TypeScript
import type { CanonicalFieldRole } from './canonical-model';
|
|
import type {
|
|
ImportDiagnostic,
|
|
ImportProcessingState,
|
|
ImportProcessorReference,
|
|
SourceLocator
|
|
} from './import-intermediate';
|
|
import type {
|
|
FieldRoleAlternative,
|
|
RecognitionConfidence,
|
|
RecognitionDecisionSource,
|
|
RecognitionEvidence
|
|
} from './import-recognition';
|
|
import type { SourceFieldCandidate } from './source-extraction';
|
|
|
|
export interface CandidateFieldMappingDecision {
|
|
id: string;
|
|
fieldKey: string;
|
|
sourceLabel: string;
|
|
sourceScope: Pick<SourceLocator, 'tableIndex'>;
|
|
proposedRole: CanonicalFieldRole | null;
|
|
appliedRole: CanonicalFieldRole;
|
|
alternatives: FieldRoleAlternative[];
|
|
confidence: RecognitionConfidence;
|
|
evidence: RecognitionEvidence[];
|
|
decisionSource: RecognitionDecisionSource;
|
|
requiresConfirmation: boolean;
|
|
}
|
|
|
|
export interface MappedCandidateField extends SourceFieldCandidate {
|
|
mappingDecisionId: string;
|
|
role: CanonicalFieldRole;
|
|
}
|
|
|
|
export interface MappedFindingCandidate {
|
|
version: 1;
|
|
id: string;
|
|
source: SourceLocator;
|
|
fields: MappedCandidateField[];
|
|
}
|
|
|
|
export interface CandidateMappingResult {
|
|
version: 1;
|
|
extractor: ImportProcessorReference;
|
|
mappingProfile: ImportProcessorReference;
|
|
fieldDecisions: CandidateFieldMappingDecision[];
|
|
candidates: MappedFindingCandidate[];
|
|
diagnostics: ImportDiagnostic[];
|
|
processing: ImportProcessingState;
|
|
}
|