refactor: reorganize OSINT types — genéricos a core, específicos en cybersecurity

Mueve tipos genéricos (Person, Organization, Location, Email, Phone, Document,
Domain, Event, SocialMedia) de cybersecurity a core. Mantiene en cybersecurity
solo los específicos de seguridad (CryptoWallet, IPAddress, Malware, Vulnerability).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-06 23:47:01 +02:00
parent 97a3c84625
commit 817ec9fc36
32 changed files with 171 additions and 171 deletions
+10
View File
@@ -0,0 +1,10 @@
package core
// Document represents a document or file of interest.
type Document struct {
Title string `json:"title"`
Format string `json:"format"`
Classification string `json:"classification"`
HashSHA256 string `json:"hash_sha256"`
Source string `json:"source"`
}
+10
View File
@@ -0,0 +1,10 @@
package core
// Domain represents an internet domain.
type Domain struct {
FQDN string `json:"fqdn"`
Registrar string `json:"registrar"`
CreatedDate string `json:"created_date"`
ExpiresDate string `json:"expires_date"`
NameServers []string `json:"name_servers"`
}
+9
View File
@@ -0,0 +1,9 @@
package core
// Email represents an email address of interest.
type Email struct {
Address string `json:"address"`
Provider string `json:"provider"`
Verified bool `json:"verified"`
Breached bool `json:"breached"`
}
+10
View File
@@ -0,0 +1,10 @@
package core
// Event represents a notable event or incident.
type Event struct {
EventType string `json:"event_type"`
Date string `json:"date"`
Location string `json:"location"`
Description string `json:"description"`
Severity string `json:"severity"`
}
+10
View File
@@ -0,0 +1,10 @@
package core
// Location represents a geographic location of interest.
type Location struct {
Lat float64 `json:"lat"`
Lon float64 `json:"lon"`
Address string `json:"address"`
Country string `json:"country"`
City string `json:"city"`
}
+10
View File
@@ -0,0 +1,10 @@
package core
// Organization represents a company or group of interest.
type Organization struct {
LegalName string `json:"legal_name"`
Country string `json:"country"`
Sector string `json:"sector"`
Founded string `json:"founded"`
RiskScore float64 `json:"risk_score"`
}
+11
View File
@@ -0,0 +1,11 @@
package core
// Person represents an individual of interest.
type Person struct {
FullName string `json:"full_name"`
Alias []string `json:"alias"`
Nationality string `json:"nationality"`
DOB string `json:"dob"`
Gender string `json:"gender"`
RiskScore float64 `json:"risk_score"`
}
+9
View File
@@ -0,0 +1,9 @@
package core
// Phone represents a phone number of interest.
type Phone struct {
Number string `json:"number"`
CountryCode string `json:"country_code"`
Carrier string `json:"carrier"`
PhoneType string `json:"phone_type"`
}
+10
View File
@@ -0,0 +1,10 @@
package core
// SocialMedia represents a social media account of interest.
type SocialMedia struct {
Platform string `json:"platform"`
Username string `json:"username"`
URL string `json:"url"`
Followers int `json:"followers"`
Verified bool `json:"verified"`
}