export type ThreatCategory = 'COUNTER_TERRORISM' | 'FINANCIAL_FRAUD' | 'EVASION_NETWORK' | 'SYNTHETIC_IDENTITY'; export type ThreatLevel = 'CRITICAL' | 'HIGH' | 'ELEVATED' | 'GUARDED'; export type CaseStatus = 'UNDER_REVIEW' | 'FLAGGED_SAR' | 'TCO_DISPATCHED' | 'ASSETS_FROZEN' | 'RESOLVED'; export type GifctTier = 'TIER_1' | 'TIER_2' | 'TIER_3' | 'NONE'; export interface PopLatency { pop: string; city: string; country: string; lat: number; lng: number; measuredRttMs: number; expectedPhysicalMinRttMs: number; physicalDistanceKm: number; anomalous: boolean; } export interface NetworkTelemetry { claimedGeo: { ip: string; city: string; region: string; country: string; lat: number; lng: number; isp: string; asn: string; asnType: 'RESIDENTIAL' | 'DATACENTER' | 'COMMERCIAL_PROXY' | 'TOR_EXIT'; }; bgpAnycast: { egressNode: string; popLatencies: PopLatency[]; speedOfLightViolation: boolean; physicalOriginInference: string; formulaExplanation: string; propagationDeltaMs: number; }; tlsFingerprint: { ja3: string; ja3s: string; ja4: string; cipherSuites: string[]; supportedCurves: string[]; extensions: string[]; detectedClientEngine: string; isKnownEvasionStack: boolean; anomalyReason: string; }; tcpStack: { initialTtl: number; claimedOsTtl: number; windowSize: number; mss: number; osMismatchDetected: boolean; osMismatchDetails: string; }; clientProbes: { webrtcCandidateLeak: { localPrivateIp: string; unmaskedPublicIp: string; stunServerUsed: string; leakDetected: boolean; leakDetails: string; }; ambientRfTriangulation: { bssidMac: string; ssid: string; rssiDb: number; cellTowerCgi: string; triangulatedLocation: string; accuracyMeters: number; }; ntpClockSkew: { clientReportedTz: string; deviceClockIso: string; serverNtpTimestampIso: string; skewDeltaSeconds: number; verdict: string; }; linguisticTelemetry: { acceptLanguage: string; activeKeyboardLayout: string; typingCadenceMs: number; anomalyFlag: boolean; anomalyNote: string; }; }; } export interface FinancialHop { id: string; from: string; to: string; amountUsd: number; asset: string; timestamp: string; hopType: 'CRYPTO_MIXER' | 'SMURFING_DEPOSIT' | 'HAWALA_CORRIDOR' | 'LAYERED_WALLET' | 'MERCHANT_CASH_OUT'; riskTag: string; flaggedSanction: boolean; } export interface FinancialLedger { totalVolumeUsd: number; detectedStructuring: boolean; structuringSummary: string; sanctionsHits: string[]; hops: FinancialHop[]; } export interface StatutoryMatrix { statute18USC2331_International: boolean; statute18USC2331_Domestic: boolean; materialSupport18USC2339B: boolean; fbiOperational28CFR085: boolean; euDsaArticle34_35: boolean; euTcoReg2021_784: boolean; firstAmendmentBoundary: string; platformEditorialProtection: string; gifctTier: GifctTier; recommendedAction: string; } export interface EvidenceFile { id: string; name: string; fileType: string; fileSize: string; sha256Hash: string; gifctMatch: boolean; summary: string; } export interface TimelineEvent { timestamp: string; event: string; actor: string; severity: 'CRITICAL' | 'WARN' | 'INFO'; } export interface InvestigationCase { id: string; title: string; category: ThreatCategory; threatLevel: ThreatLevel; status: CaseStatus; compositeTrustScore: number; // 0 to 100 (lower means higher threat) assignedAnalyst: string; createdDate: string; updatedDate: string; entityTarget: { primaryAlias: string; legalName?: string; entityType: 'INDIVIDUAL' | 'CELL_NETWORK' | 'SHELL_CORP' | 'AUTOMATED_BOTNET'; walletAddress?: string; associatedEmails: string[]; associatedPhoneNumbers: string[]; }; executiveSummary: string; networkTelemetry: NetworkTelemetry; financialLedger: FinancialLedger; statutoryMatrix: StatutoryMatrix; evidenceFiles: EvidenceFile[]; timeline: TimelineEvent[]; analystNotes: string; dispositionLog: { timestamp: string; action: string; officer: string; referenceCode: string; }[]; } export interface TerminalLogEntry { id: string; text: string; type: 'system' | 'output' | 'error' | 'success' | 'command' | 'ai'; timestamp: string; }