import type { FrontierSourceLanguage, SourceSpan } from '@shapeshift-labs/frontier-lang-kernel'; import type { ParserTriviaOwnershipRelation, ParserTriviaOwnershipStatus } from './source-preservation.js'; export interface NativeProjectSourceOwnershipAnchor { readonly schema?: 'frontier.lang.sourceOwnershipAnchor.v1' | string; readonly version?: 1; readonly mode?: string; readonly key?: string; readonly identityKey?: string; readonly identityAnchor?: string; readonly identityOccurrence?: number; readonly anchorKind?: string; readonly sourcePath?: string; readonly sourceHash?: string; readonly role?: string; readonly kind?: string; readonly textHash?: string; readonly textLength?: number; readonly start?: number; readonly end?: number; readonly startLine?: number; readonly startColumn?: number; readonly endLine?: number; readonly endColumn?: number; readonly spanHash?: string; readonly boundaryBefore?: NativeProjectSourceOwnershipBoundary; readonly boundaryAfter?: NativeProjectSourceOwnershipBoundary; readonly insertionAnchor?: NativeProjectSourceInsertionAnchor; readonly parserEvidence?: string; readonly losslessCst?: boolean; readonly parserTriviaExactnessStatus?: string; readonly exactParserTrivia?: boolean; readonly parserTriviaEvidenceId?: string; readonly parserTriviaAdapterId?: string; readonly parserTriviaExactnessReasonCodes?: readonly string[]; readonly parserTriviaExactnessBlockReasonCodes?: readonly string[]; readonly parserTriviaOwnershipStatus?: ParserTriviaOwnershipStatus; readonly parserTriviaOwnershipRelation?: ParserTriviaOwnershipRelation; readonly parserTriviaOwnershipReasonCodes?: readonly string[]; readonly parserTriviaOwnershipBlockReasonCodes?: readonly string[]; } export interface NativeProjectSourceOwnershipBoundary { readonly key?: string; readonly role?: string; readonly kind?: string; readonly textHash?: string; readonly startLine?: number; readonly startColumn?: number; readonly endLine?: number; readonly endColumn?: number; } export interface NativeProjectSourceInsertionAnchor { readonly mode?: string; readonly anchorKind?: string; readonly before?: NativeProjectSourceOwnershipBoundary; readonly after?: NativeProjectSourceOwnershipBoundary; readonly reasonCodes?: readonly string[]; } export interface NativeProjectSymbolGraphSourceFileRecord { readonly id: string; readonly sourcePath?: string; readonly language?: FrontierSourceLanguage | string; readonly sourceHash?: string; readonly preservationId?: string; readonly sourceBytes?: number; readonly lineCount?: number; readonly newline?: string; readonly encoding?: string; readonly exactSourceAvailable?: boolean; readonly tokenCount?: number; readonly triviaCount?: number; readonly directiveCount?: number; readonly commentCount?: number; readonly whitespaceCount?: number; readonly sourceMapCommentCount?: number; readonly protectedRegionCount?: number; readonly importExportSpanCount?: number; readonly braceCount?: number; readonly truncated?: boolean; readonly sourceTextHash?: string; readonly roundtripHash?: string; readonly parserEvidence?: string; readonly losslessCst?: boolean; readonly parserTriviaExactnessStatus?: string; readonly exactParserTrivia?: boolean; readonly parserTriviaEvidenceId?: string; readonly parserTriviaAdapterId?: string; readonly parserTriviaExactnessReasonCodes?: readonly string[]; readonly parserTriviaExactnessBlockReasonCodes?: readonly string[]; readonly sourceLedgerAvailable?: boolean; readonly triviaOwnershipStatus?: string; readonly triviaOwnershipReasonCodes?: readonly string[]; readonly triviaOwnershipBlockReasonCodes?: readonly string[]; readonly ownershipAnchorMode?: string; readonly generatedSourceBoundaryEvidence?: string; readonly shapeHash?: string; } export interface NativeProjectSymbolGraphSourceSpanRecord { readonly id: string; readonly stableId?: string; readonly identityKey?: string; readonly sourcePath?: string; readonly sourceHash?: string; readonly preservationId?: string; readonly sourceSpan?: SourceSpan; readonly start?: number; readonly end?: number; readonly role?: string; readonly kind?: string; readonly ordinal?: number; readonly identityOccurrence?: number; readonly textHash?: string; readonly textLength?: number; readonly trivia?: boolean; readonly directive?: boolean; readonly protected?: boolean; readonly ownershipAnchor?: NativeProjectSourceOwnershipAnchor; readonly ownershipAnchorKey?: string; readonly ownershipAnchorHash?: string; readonly ownershipAnchorStatus?: string; readonly ownershipBlockReasonCodes?: readonly string[]; readonly parserEvidence?: string; readonly losslessCst?: boolean; readonly parserTriviaExactnessStatus?: string; readonly exactParserTrivia?: boolean; readonly parserTriviaEvidenceId?: string; readonly parserTriviaAdapterId?: string; readonly parserTriviaExactnessReasonCodes?: readonly string[]; readonly parserTriviaExactnessBlockReasonCodes?: readonly string[]; readonly parserTriviaOwnershipStatus?: ParserTriviaOwnershipStatus; readonly parserTriviaOwnershipRelation?: ParserTriviaOwnershipRelation; readonly parserTriviaOwnershipReasonCodes?: readonly string[]; readonly parserTriviaOwnershipBlockReasonCodes?: readonly string[]; readonly roundtripHash?: string; readonly stableHash?: string; readonly signatureHash?: string; }