@cyvest/cyvest-js 4.1.0 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -37,9 +37,7 @@ type CheckLinks = string[];
37
37
  */
38
38
  type PropagationMode = "LOCAL_ONLY" | "GLOBAL";
39
39
  type ObservableLinks = ObservableLink[];
40
- type Taxonomies = {
41
- [k: string]: unknown;
42
- }[];
40
+ type Taxonomies = Taxonomy[];
43
41
  type Checks1 = string[];
44
42
  /**
45
43
  * Root observable type used during data extraction.
@@ -82,7 +80,6 @@ interface CyvestInvestigation {
82
80
  event_log?: EventLog;
83
81
  observables: Observables;
84
82
  checks: Checks;
85
- checks_by_level: ChecksByLevel;
86
83
  threat_intels: ThreatIntels1;
87
84
  enrichments: Enrichments;
88
85
  containers: Containers;
@@ -196,12 +193,6 @@ interface ObservableLink {
196
193
  observable_key: string;
197
194
  propagation_mode?: PropagationMode;
198
195
  }
199
- /**
200
- * Check keys organized by level name.
201
- */
202
- interface ChecksByLevel {
203
- [k: string]: string[];
204
- }
205
196
  /**
206
197
  * Threat intelligence entries keyed by their unique key.
207
198
  */
@@ -229,6 +220,14 @@ interface ThreatIntel {
229
220
  interface Extra2 {
230
221
  [k: string]: unknown;
231
222
  }
223
+ /**
224
+ * Represents a structured taxonomy entry for threat intelligence.
225
+ */
226
+ interface Taxonomy {
227
+ level: Level;
228
+ name: string;
229
+ value: string;
230
+ }
232
231
  /**
233
232
  * Enrichment entries keyed by their unique key.
234
233
  */
@@ -291,7 +290,7 @@ interface StatisticsSchema {
291
290
  total_checks: number;
292
291
  applied_checks: number;
293
292
  checks_by_scope?: ChecksByScope;
294
- checks_by_level?: ChecksByLevel1;
293
+ checks_by_level?: ChecksByLevel;
295
294
  total_threat_intel: number;
296
295
  threat_intel_by_source?: ThreatIntelBySource;
297
296
  threat_intel_by_level?: ThreatIntelByLevel;
@@ -309,10 +308,10 @@ interface ObservablesByTypeAndLevel {
309
308
  };
310
309
  }
311
310
  interface ChecksByScope {
312
- [k: string]: number;
311
+ [k: string]: string[];
313
312
  }
314
- interface ChecksByLevel1 {
315
- [k: string]: number;
313
+ interface ChecksByLevel {
314
+ [k: string]: string[];
316
315
  }
317
316
  interface ThreatIntelBySource {
318
317
  [k: string]: number;
@@ -1356,4 +1355,4 @@ declare function getRelationshipsForObservable(inv: CyvestInvestigation, observa
1356
1355
  }>;
1357
1356
  };
1358
1357
 
1359
- export { type Actor, type AuditEvent, type Check, type CheckLinks, type Checks, type Checks1, type ChecksByLevel, type ChecksByLevel1, type ChecksByScope, type Container, type Containers, type CyvestInvestigation, type Data, type DataExtractionSchema, type Details, type Enrichment, type Enrichments, type EventLog, type Extra, type Extra1, type Extra2, type GraphEdge, type GraphNode, type InvestigationCounts, type InvestigationGraph, type InvestigationName, type InvestigationWhitelist, type Justification, type KeyType, LEVEL_COLORS, LEVEL_ORDER, LEVEL_VALUES, type Level, type ObjectKey, type ObjectType, type Observable, type ObservableLink, type ObservableLinks, type Observables, type ObservablesByLevel, type ObservablesByType, type ObservablesByTypeAndLevel, type PropagationMode, type Reason, type Relationship, type RelationshipDirection, type Relationships, type RootType, type ScoreMode, type StatisticsSchema, type SubContainers, type Taxonomies, type ThreatIntel, type ThreatIntelByLevel, type ThreatIntelBySource, type ThreatIntels, type ThreatIntels1, type Tool, type Whitelists, areConnected, compareLevels, countRelationshipsByType, findChecksAtLeast, findChecksByCheckId, findChecksByLevel, findChecksByScope, findContainersAtLeast, findContainersByLevel, findExternalObservables, findInternalObservables, findLeafObservables, findObservablesAtLeast, findObservablesByLevel, findObservablesByType, findObservablesByValue, findObservablesContaining, findObservablesMatching, findObservablesWithThreatIntel, findOrphanObservables, findPath, findRootObservables, findThreatIntelAtLeast, findThreatIntelByLevel, findThreatIntelBySource, findWhitelistedObservables, generateCheckKey, generateContainerKey, generateEnrichmentKey, generateObservableKey, generateThreatIntelKey, getAllChecks, getAllContainers, getAllEnrichments, getAllObservableTypes, getAllObservables, getAllRelationshipTypes, getAllScopes, getAllThreatIntelSources, getAllThreatIntels, getCheck, getCheckByIdScope, getChecksForContainer, getChecksForObservable, getColorForLevel, getColorForScore, getContainer, getContainerByPath, getCounts, getDataExtraction, getEnrichment, getEnrichmentByName, getEntityLevel, getHighestScoringChecks, getHighestScoringObservables, getLevelFromScore, getMaliciousChecks, getMaliciousObservables, getObservable, getObservableByTypeValue, getObservableChildren, getObservableGraph, getObservableParents, getObservablesForCheck, getReachableObservables, getRelatedObservables, getRelatedObservablesByDirection, getRelatedObservablesByType, getRelationshipsForObservable, getStats, getSuspiciousChecks, getSuspiciousObservables, getThreatIntel, getThreatIntelBySourceObservable, getThreatIntelsForObservable, getWhitelists, hasLevel, isCyvest, isLevelAtLeast, isLevelHigherThan, isLevelLowerThan, isValidLevel, maxLevel, minLevel, normalizeLevel, parseCheckKey, parseCyvest, parseKeyType, parseObservableKey, parseThreatIntelKey, sortChecksByLevel, sortChecksByScore, sortObservablesByLevel, sortObservablesByScore, validateKey };
1358
+ export { type Actor, type AuditEvent, type Check, type CheckLinks, type Checks, type Checks1, type ChecksByLevel, type ChecksByScope, type Container, type Containers, type CyvestInvestigation, type Data, type DataExtractionSchema, type Details, type Enrichment, type Enrichments, type EventLog, type Extra, type Extra1, type Extra2, type GraphEdge, type GraphNode, type InvestigationCounts, type InvestigationGraph, type InvestigationName, type InvestigationWhitelist, type Justification, type KeyType, LEVEL_COLORS, LEVEL_ORDER, LEVEL_VALUES, type Level, type ObjectKey, type ObjectType, type Observable, type ObservableLink, type ObservableLinks, type Observables, type ObservablesByLevel, type ObservablesByType, type ObservablesByTypeAndLevel, type PropagationMode, type Reason, type Relationship, type RelationshipDirection, type Relationships, type RootType, type ScoreMode, type StatisticsSchema, type SubContainers, type Taxonomies, type Taxonomy, type ThreatIntel, type ThreatIntelByLevel, type ThreatIntelBySource, type ThreatIntels, type ThreatIntels1, type Tool, type Whitelists, areConnected, compareLevels, countRelationshipsByType, findChecksAtLeast, findChecksByCheckId, findChecksByLevel, findChecksByScope, findContainersAtLeast, findContainersByLevel, findExternalObservables, findInternalObservables, findLeafObservables, findObservablesAtLeast, findObservablesByLevel, findObservablesByType, findObservablesByValue, findObservablesContaining, findObservablesMatching, findObservablesWithThreatIntel, findOrphanObservables, findPath, findRootObservables, findThreatIntelAtLeast, findThreatIntelByLevel, findThreatIntelBySource, findWhitelistedObservables, generateCheckKey, generateContainerKey, generateEnrichmentKey, generateObservableKey, generateThreatIntelKey, getAllChecks, getAllContainers, getAllEnrichments, getAllObservableTypes, getAllObservables, getAllRelationshipTypes, getAllScopes, getAllThreatIntelSources, getAllThreatIntels, getCheck, getCheckByIdScope, getChecksForContainer, getChecksForObservable, getColorForLevel, getColorForScore, getContainer, getContainerByPath, getCounts, getDataExtraction, getEnrichment, getEnrichmentByName, getEntityLevel, getHighestScoringChecks, getHighestScoringObservables, getLevelFromScore, getMaliciousChecks, getMaliciousObservables, getObservable, getObservableByTypeValue, getObservableChildren, getObservableGraph, getObservableParents, getObservablesForCheck, getReachableObservables, getRelatedObservables, getRelatedObservablesByDirection, getRelatedObservablesByType, getRelationshipsForObservable, getStats, getSuspiciousChecks, getSuspiciousObservables, getThreatIntel, getThreatIntelBySourceObservable, getThreatIntelsForObservable, getWhitelists, hasLevel, isCyvest, isLevelAtLeast, isLevelHigherThan, isLevelLowerThan, isValidLevel, maxLevel, minLevel, normalizeLevel, parseCheckKey, parseCyvest, parseKeyType, parseObservableKey, parseThreatIntelKey, sortChecksByLevel, sortChecksByScore, sortObservablesByLevel, sortObservablesByScore, validateKey };
package/dist/index.d.ts CHANGED
@@ -37,9 +37,7 @@ type CheckLinks = string[];
37
37
  */
38
38
  type PropagationMode = "LOCAL_ONLY" | "GLOBAL";
39
39
  type ObservableLinks = ObservableLink[];
40
- type Taxonomies = {
41
- [k: string]: unknown;
42
- }[];
40
+ type Taxonomies = Taxonomy[];
43
41
  type Checks1 = string[];
44
42
  /**
45
43
  * Root observable type used during data extraction.
@@ -82,7 +80,6 @@ interface CyvestInvestigation {
82
80
  event_log?: EventLog;
83
81
  observables: Observables;
84
82
  checks: Checks;
85
- checks_by_level: ChecksByLevel;
86
83
  threat_intels: ThreatIntels1;
87
84
  enrichments: Enrichments;
88
85
  containers: Containers;
@@ -196,12 +193,6 @@ interface ObservableLink {
196
193
  observable_key: string;
197
194
  propagation_mode?: PropagationMode;
198
195
  }
199
- /**
200
- * Check keys organized by level name.
201
- */
202
- interface ChecksByLevel {
203
- [k: string]: string[];
204
- }
205
196
  /**
206
197
  * Threat intelligence entries keyed by their unique key.
207
198
  */
@@ -229,6 +220,14 @@ interface ThreatIntel {
229
220
  interface Extra2 {
230
221
  [k: string]: unknown;
231
222
  }
223
+ /**
224
+ * Represents a structured taxonomy entry for threat intelligence.
225
+ */
226
+ interface Taxonomy {
227
+ level: Level;
228
+ name: string;
229
+ value: string;
230
+ }
232
231
  /**
233
232
  * Enrichment entries keyed by their unique key.
234
233
  */
@@ -291,7 +290,7 @@ interface StatisticsSchema {
291
290
  total_checks: number;
292
291
  applied_checks: number;
293
292
  checks_by_scope?: ChecksByScope;
294
- checks_by_level?: ChecksByLevel1;
293
+ checks_by_level?: ChecksByLevel;
295
294
  total_threat_intel: number;
296
295
  threat_intel_by_source?: ThreatIntelBySource;
297
296
  threat_intel_by_level?: ThreatIntelByLevel;
@@ -309,10 +308,10 @@ interface ObservablesByTypeAndLevel {
309
308
  };
310
309
  }
311
310
  interface ChecksByScope {
312
- [k: string]: number;
311
+ [k: string]: string[];
313
312
  }
314
- interface ChecksByLevel1 {
315
- [k: string]: number;
313
+ interface ChecksByLevel {
314
+ [k: string]: string[];
316
315
  }
317
316
  interface ThreatIntelBySource {
318
317
  [k: string]: number;
@@ -1356,4 +1355,4 @@ declare function getRelationshipsForObservable(inv: CyvestInvestigation, observa
1356
1355
  }>;
1357
1356
  };
1358
1357
 
1359
- export { type Actor, type AuditEvent, type Check, type CheckLinks, type Checks, type Checks1, type ChecksByLevel, type ChecksByLevel1, type ChecksByScope, type Container, type Containers, type CyvestInvestigation, type Data, type DataExtractionSchema, type Details, type Enrichment, type Enrichments, type EventLog, type Extra, type Extra1, type Extra2, type GraphEdge, type GraphNode, type InvestigationCounts, type InvestigationGraph, type InvestigationName, type InvestigationWhitelist, type Justification, type KeyType, LEVEL_COLORS, LEVEL_ORDER, LEVEL_VALUES, type Level, type ObjectKey, type ObjectType, type Observable, type ObservableLink, type ObservableLinks, type Observables, type ObservablesByLevel, type ObservablesByType, type ObservablesByTypeAndLevel, type PropagationMode, type Reason, type Relationship, type RelationshipDirection, type Relationships, type RootType, type ScoreMode, type StatisticsSchema, type SubContainers, type Taxonomies, type ThreatIntel, type ThreatIntelByLevel, type ThreatIntelBySource, type ThreatIntels, type ThreatIntels1, type Tool, type Whitelists, areConnected, compareLevels, countRelationshipsByType, findChecksAtLeast, findChecksByCheckId, findChecksByLevel, findChecksByScope, findContainersAtLeast, findContainersByLevel, findExternalObservables, findInternalObservables, findLeafObservables, findObservablesAtLeast, findObservablesByLevel, findObservablesByType, findObservablesByValue, findObservablesContaining, findObservablesMatching, findObservablesWithThreatIntel, findOrphanObservables, findPath, findRootObservables, findThreatIntelAtLeast, findThreatIntelByLevel, findThreatIntelBySource, findWhitelistedObservables, generateCheckKey, generateContainerKey, generateEnrichmentKey, generateObservableKey, generateThreatIntelKey, getAllChecks, getAllContainers, getAllEnrichments, getAllObservableTypes, getAllObservables, getAllRelationshipTypes, getAllScopes, getAllThreatIntelSources, getAllThreatIntels, getCheck, getCheckByIdScope, getChecksForContainer, getChecksForObservable, getColorForLevel, getColorForScore, getContainer, getContainerByPath, getCounts, getDataExtraction, getEnrichment, getEnrichmentByName, getEntityLevel, getHighestScoringChecks, getHighestScoringObservables, getLevelFromScore, getMaliciousChecks, getMaliciousObservables, getObservable, getObservableByTypeValue, getObservableChildren, getObservableGraph, getObservableParents, getObservablesForCheck, getReachableObservables, getRelatedObservables, getRelatedObservablesByDirection, getRelatedObservablesByType, getRelationshipsForObservable, getStats, getSuspiciousChecks, getSuspiciousObservables, getThreatIntel, getThreatIntelBySourceObservable, getThreatIntelsForObservable, getWhitelists, hasLevel, isCyvest, isLevelAtLeast, isLevelHigherThan, isLevelLowerThan, isValidLevel, maxLevel, minLevel, normalizeLevel, parseCheckKey, parseCyvest, parseKeyType, parseObservableKey, parseThreatIntelKey, sortChecksByLevel, sortChecksByScore, sortObservablesByLevel, sortObservablesByScore, validateKey };
1358
+ export { type Actor, type AuditEvent, type Check, type CheckLinks, type Checks, type Checks1, type ChecksByLevel, type ChecksByScope, type Container, type Containers, type CyvestInvestigation, type Data, type DataExtractionSchema, type Details, type Enrichment, type Enrichments, type EventLog, type Extra, type Extra1, type Extra2, type GraphEdge, type GraphNode, type InvestigationCounts, type InvestigationGraph, type InvestigationName, type InvestigationWhitelist, type Justification, type KeyType, LEVEL_COLORS, LEVEL_ORDER, LEVEL_VALUES, type Level, type ObjectKey, type ObjectType, type Observable, type ObservableLink, type ObservableLinks, type Observables, type ObservablesByLevel, type ObservablesByType, type ObservablesByTypeAndLevel, type PropagationMode, type Reason, type Relationship, type RelationshipDirection, type Relationships, type RootType, type ScoreMode, type StatisticsSchema, type SubContainers, type Taxonomies, type Taxonomy, type ThreatIntel, type ThreatIntelByLevel, type ThreatIntelBySource, type ThreatIntels, type ThreatIntels1, type Tool, type Whitelists, areConnected, compareLevels, countRelationshipsByType, findChecksAtLeast, findChecksByCheckId, findChecksByLevel, findChecksByScope, findContainersAtLeast, findContainersByLevel, findExternalObservables, findInternalObservables, findLeafObservables, findObservablesAtLeast, findObservablesByLevel, findObservablesByType, findObservablesByValue, findObservablesContaining, findObservablesMatching, findObservablesWithThreatIntel, findOrphanObservables, findPath, findRootObservables, findThreatIntelAtLeast, findThreatIntelByLevel, findThreatIntelBySource, findWhitelistedObservables, generateCheckKey, generateContainerKey, generateEnrichmentKey, generateObservableKey, generateThreatIntelKey, getAllChecks, getAllContainers, getAllEnrichments, getAllObservableTypes, getAllObservables, getAllRelationshipTypes, getAllScopes, getAllThreatIntelSources, getAllThreatIntels, getCheck, getCheckByIdScope, getChecksForContainer, getChecksForObservable, getColorForLevel, getColorForScore, getContainer, getContainerByPath, getCounts, getDataExtraction, getEnrichment, getEnrichmentByName, getEntityLevel, getHighestScoringChecks, getHighestScoringObservables, getLevelFromScore, getMaliciousChecks, getMaliciousObservables, getObservable, getObservableByTypeValue, getObservableChildren, getObservableGraph, getObservableParents, getObservablesForCheck, getReachableObservables, getRelatedObservables, getRelatedObservablesByDirection, getRelatedObservablesByType, getRelationshipsForObservable, getStats, getSuspiciousChecks, getSuspiciousObservables, getThreatIntel, getThreatIntelBySourceObservable, getThreatIntelsForObservable, getWhitelists, hasLevel, isCyvest, isLevelAtLeast, isLevelHigherThan, isLevelLowerThan, isValidLevel, maxLevel, minLevel, normalizeLevel, parseCheckKey, parseCyvest, parseKeyType, parseObservableKey, parseThreatIntelKey, sortChecksByLevel, sortChecksByScore, sortObservablesByLevel, sortObservablesByScore, validateKey };
package/dist/index.js CHANGED
@@ -676,16 +676,20 @@ var cyvest_schema_default = {
676
676
  },
677
677
  checks_by_scope: {
678
678
  additionalProperties: {
679
- minimum: 0,
680
- type: "integer"
679
+ items: {
680
+ type: "string"
681
+ },
682
+ type: "array"
681
683
  },
682
684
  title: "Checks By Scope",
683
685
  type: "object"
684
686
  },
685
687
  checks_by_level: {
686
688
  additionalProperties: {
687
- minimum: 0,
688
- type: "integer"
689
+ items: {
690
+ type: "string"
691
+ },
692
+ type: "array"
689
693
  },
690
694
  title: "Checks By Level",
691
695
  type: "object"
@@ -730,6 +734,30 @@ var cyvest_schema_default = {
730
734
  title: "StatisticsSchema",
731
735
  type: "object"
732
736
  },
737
+ Taxonomy: {
738
+ additionalProperties: false,
739
+ description: "Represents a structured taxonomy entry for threat intelligence.",
740
+ properties: {
741
+ level: {
742
+ $ref: "#/$defs/Level"
743
+ },
744
+ name: {
745
+ title: "Name",
746
+ type: "string"
747
+ },
748
+ value: {
749
+ title: "Value",
750
+ type: "string"
751
+ }
752
+ },
753
+ required: [
754
+ "level",
755
+ "name",
756
+ "value"
757
+ ],
758
+ title: "Taxonomy",
759
+ type: "object"
760
+ },
733
761
  ThreatIntel: {
734
762
  description: "Represents threat intelligence from an external source.\n\nThreat intelligence provides verdicts about observables from sources\nlike VirusTotal, URLScan.io, etc.",
735
763
  properties: {
@@ -759,8 +787,7 @@ var cyvest_schema_default = {
759
787
  },
760
788
  taxonomies: {
761
789
  items: {
762
- additionalProperties: true,
763
- type: "object"
790
+ $ref: "#/$defs/Taxonomy"
764
791
  },
765
792
  title: "Taxonomies",
766
793
  type: "array"
@@ -868,17 +895,6 @@ var cyvest_schema_default = {
868
895
  title: "Checks",
869
896
  type: "object"
870
897
  },
871
- checks_by_level: {
872
- additionalProperties: {
873
- items: {
874
- type: "string"
875
- },
876
- type: "array"
877
- },
878
- description: "Check keys organized by level name.",
879
- title: "Checks By Level",
880
- type: "object"
881
- },
882
898
  threat_intels: {
883
899
  additionalProperties: {
884
900
  $ref: "#/$defs/ThreatIntel"
@@ -927,7 +943,6 @@ var cyvest_schema_default = {
927
943
  "whitelists",
928
944
  "observables",
929
945
  "checks",
930
- "checks_by_level",
931
946
  "threat_intels",
932
947
  "enrichments",
933
948
  "containers",
package/dist/index.mjs CHANGED
@@ -543,16 +543,20 @@ var cyvest_schema_default = {
543
543
  },
544
544
  checks_by_scope: {
545
545
  additionalProperties: {
546
- minimum: 0,
547
- type: "integer"
546
+ items: {
547
+ type: "string"
548
+ },
549
+ type: "array"
548
550
  },
549
551
  title: "Checks By Scope",
550
552
  type: "object"
551
553
  },
552
554
  checks_by_level: {
553
555
  additionalProperties: {
554
- minimum: 0,
555
- type: "integer"
556
+ items: {
557
+ type: "string"
558
+ },
559
+ type: "array"
556
560
  },
557
561
  title: "Checks By Level",
558
562
  type: "object"
@@ -597,6 +601,30 @@ var cyvest_schema_default = {
597
601
  title: "StatisticsSchema",
598
602
  type: "object"
599
603
  },
604
+ Taxonomy: {
605
+ additionalProperties: false,
606
+ description: "Represents a structured taxonomy entry for threat intelligence.",
607
+ properties: {
608
+ level: {
609
+ $ref: "#/$defs/Level"
610
+ },
611
+ name: {
612
+ title: "Name",
613
+ type: "string"
614
+ },
615
+ value: {
616
+ title: "Value",
617
+ type: "string"
618
+ }
619
+ },
620
+ required: [
621
+ "level",
622
+ "name",
623
+ "value"
624
+ ],
625
+ title: "Taxonomy",
626
+ type: "object"
627
+ },
600
628
  ThreatIntel: {
601
629
  description: "Represents threat intelligence from an external source.\n\nThreat intelligence provides verdicts about observables from sources\nlike VirusTotal, URLScan.io, etc.",
602
630
  properties: {
@@ -626,8 +654,7 @@ var cyvest_schema_default = {
626
654
  },
627
655
  taxonomies: {
628
656
  items: {
629
- additionalProperties: true,
630
- type: "object"
657
+ $ref: "#/$defs/Taxonomy"
631
658
  },
632
659
  title: "Taxonomies",
633
660
  type: "array"
@@ -735,17 +762,6 @@ var cyvest_schema_default = {
735
762
  title: "Checks",
736
763
  type: "object"
737
764
  },
738
- checks_by_level: {
739
- additionalProperties: {
740
- items: {
741
- type: "string"
742
- },
743
- type: "array"
744
- },
745
- description: "Check keys organized by level name.",
746
- title: "Checks By Level",
747
- type: "object"
748
- },
749
765
  threat_intels: {
750
766
  additionalProperties: {
751
767
  $ref: "#/$defs/ThreatIntel"
@@ -794,7 +810,6 @@ var cyvest_schema_default = {
794
810
  "whitelists",
795
811
  "observables",
796
812
  "checks",
797
- "checks_by_level",
798
813
  "threat_intels",
799
814
  "enrichments",
800
815
  "containers",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyvest/cyvest-js",
3
- "version": "4.1.0",
3
+ "version": "4.3.0",
4
4
  "main": "dist/index.cjs",
5
5
  "module": "dist/index.mjs",
6
6
  "types": "dist/index.d.ts",
@@ -39,9 +39,7 @@ export type CheckLinks = string[];
39
39
  */
40
40
  export type PropagationMode = "LOCAL_ONLY" | "GLOBAL";
41
41
  export type ObservableLinks = ObservableLink[];
42
- export type Taxonomies = {
43
- [k: string]: unknown;
44
- }[];
42
+ export type Taxonomies = Taxonomy[];
45
43
  export type Checks1 = string[];
46
44
  /**
47
45
  * Root observable type used during data extraction.
@@ -85,7 +83,6 @@ export interface CyvestInvestigation {
85
83
  event_log?: EventLog;
86
84
  observables: Observables;
87
85
  checks: Checks;
88
- checks_by_level: ChecksByLevel;
89
86
  threat_intels: ThreatIntels1;
90
87
  enrichments: Enrichments;
91
88
  containers: Containers;
@@ -199,12 +196,6 @@ export interface ObservableLink {
199
196
  observable_key: string;
200
197
  propagation_mode?: PropagationMode;
201
198
  }
202
- /**
203
- * Check keys organized by level name.
204
- */
205
- export interface ChecksByLevel {
206
- [k: string]: string[];
207
- }
208
199
  /**
209
200
  * Threat intelligence entries keyed by their unique key.
210
201
  */
@@ -232,6 +223,14 @@ export interface ThreatIntel {
232
223
  export interface Extra2 {
233
224
  [k: string]: unknown;
234
225
  }
226
+ /**
227
+ * Represents a structured taxonomy entry for threat intelligence.
228
+ */
229
+ export interface Taxonomy {
230
+ level: Level;
231
+ name: string;
232
+ value: string;
233
+ }
235
234
  /**
236
235
  * Enrichment entries keyed by their unique key.
237
236
  */
@@ -294,7 +293,7 @@ export interface StatisticsSchema {
294
293
  total_checks: number;
295
294
  applied_checks: number;
296
295
  checks_by_scope?: ChecksByScope;
297
- checks_by_level?: ChecksByLevel1;
296
+ checks_by_level?: ChecksByLevel;
298
297
  total_threat_intel: number;
299
298
  threat_intel_by_source?: ThreatIntelBySource;
300
299
  threat_intel_by_level?: ThreatIntelByLevel;
@@ -312,10 +311,10 @@ export interface ObservablesByTypeAndLevel {
312
311
  };
313
312
  }
314
313
  export interface ChecksByScope {
315
- [k: string]: number;
314
+ [k: string]: string[];
316
315
  }
317
- export interface ChecksByLevel1 {
318
- [k: string]: number;
316
+ export interface ChecksByLevel {
317
+ [k: string]: string[];
319
318
  }
320
319
  export interface ThreatIntelBySource {
321
320
  [k: string]: number;
@@ -176,10 +176,6 @@ function createTestInvestigation(): CyvestInvestigation {
176
176
  },
177
177
  ],
178
178
  },
179
- checks_by_level: {
180
- INFO: ["chk:ip_check:network", "chk:dns_lookup:dns"],
181
- MALICIOUS: ["chk:domain_check:dns"],
182
- },
183
179
  threat_intels: {
184
180
  "ti:virustotal:obs:domain-name:example.com": {
185
181
  key: "ti:virustotal:obs:domain-name:example.com",
@@ -190,7 +186,7 @@ function createTestInvestigation(): CyvestInvestigation {
190
186
  score: 5,
191
187
  score_display: "5.00",
192
188
  level: "MALICIOUS",
193
- taxonomies: [{ verdict: "malicious" }],
189
+ taxonomies: [{ level: "MALICIOUS", name: "verdict", value: "malicious" }],
194
190
  },
195
191
  },
196
192
  enrichments: {
@@ -232,8 +228,8 @@ function createTestInvestigation(): CyvestInvestigation {
232
228
  observables_by_type_and_level: {},
233
229
  total_checks: 3,
234
230
  applied_checks: 2,
235
- checks_by_scope: { network: 1, dns: 2 },
236
- checks_by_level: { INFO: 2, MALICIOUS: 1 },
231
+ checks_by_scope: { network: ["chk:ip_check:network"], dns: ["chk:domain_check:dns", "chk:dns_lookup:dns"] },
232
+ checks_by_level: { INFO: ["chk:ip_check:network", "chk:dns_lookup:dns"], MALICIOUS: ["chk:domain_check:dns"] },
237
233
  total_threat_intel: 1,
238
234
  threat_intel_by_source: { virustotal: 1 },
239
235
  threat_intel_by_level: { MALICIOUS: 1 },
@@ -123,7 +123,6 @@ function createGraphTestInvestigation(): CyvestInvestigation {
123
123
  },
124
124
  },
125
125
  checks: {},
126
- checks_by_level: {},
127
126
  threat_intels: {},
128
127
  enrichments: {},
129
128
  containers: {},