UNPKG

@mitre-attack/attack-data-model

Version:

A TypeScript API for the MITRE ATT&CK data model

544 lines (541 loc) 20.7 kB
import { z } from 'zod'; declare const tlpMarkingObjectSchema: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; declare const baseMarkingDefinitionSchema: z.ZodObject<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, "strip", z.ZodTypeAny, { type: "marking-definition"; id: string; spec_version: "2.1"; created: string; name: string; definition_type: "tlp"; definition: { tlp: string; }; }, { type: "marking-definition"; id: string; spec_version: "2.1"; created: string; name: string; definition_type: "tlp"; definition: { tlp: string; }; }>; declare const tlpWhiteSchema: z.ZodObject<z.objectUtil.extendShape<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, { id: z.ZodLiteral<"marking-definition--613f2e26-407d-48c7-9eca-b8e91df99dc9">; name: z.ZodLiteral<"TLP:WHITE">; definition: z.ZodObject<{ tlp: z.ZodLiteral<"white">; }, "strip", z.ZodTypeAny, { tlp: "white"; }, { tlp: "white"; }>; }>, "strict", z.ZodTypeAny, { type: "marking-definition"; id: "marking-definition--613f2e26-407d-48c7-9eca-b8e91df99dc9"; spec_version: "2.1"; created: string; name: "TLP:WHITE"; definition_type: "tlp"; definition: { tlp: "white"; }; }, { type: "marking-definition"; id: "marking-definition--613f2e26-407d-48c7-9eca-b8e91df99dc9"; spec_version: "2.1"; created: string; name: "TLP:WHITE"; definition_type: "tlp"; definition: { tlp: "white"; }; }>; declare const tlpGreenSchema: z.ZodObject<z.objectUtil.extendShape<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, { id: z.ZodLiteral<"marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da">; name: z.ZodLiteral<"TLP:GREEN">; definition: z.ZodObject<{ tlp: z.ZodLiteral<"green">; }, "strip", z.ZodTypeAny, { tlp: "green"; }, { tlp: "green"; }>; }>, "strict", z.ZodTypeAny, { type: "marking-definition"; id: "marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da"; spec_version: "2.1"; created: string; name: "TLP:GREEN"; definition_type: "tlp"; definition: { tlp: "green"; }; }, { type: "marking-definition"; id: "marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da"; spec_version: "2.1"; created: string; name: "TLP:GREEN"; definition_type: "tlp"; definition: { tlp: "green"; }; }>; declare const tlpAmberSchema: z.ZodObject<z.objectUtil.extendShape<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, { id: z.ZodLiteral<"marking-definition--f88d31f6-486f-44da-b317-01333bde0b82">; name: z.ZodLiteral<"TLP:AMBER">; definition: z.ZodObject<{ tlp: z.ZodLiteral<"amber">; }, "strip", z.ZodTypeAny, { tlp: "amber"; }, { tlp: "amber"; }>; }>, "strict", z.ZodTypeAny, { type: "marking-definition"; id: "marking-definition--f88d31f6-486f-44da-b317-01333bde0b82"; spec_version: "2.1"; created: string; name: "TLP:AMBER"; definition_type: "tlp"; definition: { tlp: "amber"; }; }, { type: "marking-definition"; id: "marking-definition--f88d31f6-486f-44da-b317-01333bde0b82"; spec_version: "2.1"; created: string; name: "TLP:AMBER"; definition_type: "tlp"; definition: { tlp: "amber"; }; }>; declare const tlpRedSchema: z.ZodObject<z.objectUtil.extendShape<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, { id: z.ZodLiteral<"marking-definition--5e57c739-391a-4eb3-b6be-7d15ca92d5ed">; name: z.ZodLiteral<"TLP:RED">; definition: z.ZodObject<{ tlp: z.ZodLiteral<"red">; }, "strip", z.ZodTypeAny, { tlp: "red"; }, { tlp: "red"; }>; }>, "strict", z.ZodTypeAny, { type: "marking-definition"; id: "marking-definition--5e57c739-391a-4eb3-b6be-7d15ca92d5ed"; spec_version: "2.1"; created: string; name: "TLP:RED"; definition_type: "tlp"; definition: { tlp: "red"; }; }, { type: "marking-definition"; id: "marking-definition--5e57c739-391a-4eb3-b6be-7d15ca92d5ed"; spec_version: "2.1"; created: string; name: "TLP:RED"; definition_type: "tlp"; definition: { tlp: "red"; }; }>; declare const tlpMarkingDefinitionSchema: z.ZodUnion<[z.ZodObject<z.objectUtil.extendShape<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, { id: z.ZodLiteral<"marking-definition--613f2e26-407d-48c7-9eca-b8e91df99dc9">; name: z.ZodLiteral<"TLP:WHITE">; definition: z.ZodObject<{ tlp: z.ZodLiteral<"white">; }, "strip", z.ZodTypeAny, { tlp: "white"; }, { tlp: "white"; }>; }>, "strict", z.ZodTypeAny, { type: "marking-definition"; id: "marking-definition--613f2e26-407d-48c7-9eca-b8e91df99dc9"; spec_version: "2.1"; created: string; name: "TLP:WHITE"; definition_type: "tlp"; definition: { tlp: "white"; }; }, { type: "marking-definition"; id: "marking-definition--613f2e26-407d-48c7-9eca-b8e91df99dc9"; spec_version: "2.1"; created: string; name: "TLP:WHITE"; definition_type: "tlp"; definition: { tlp: "white"; }; }>, z.ZodObject<z.objectUtil.extendShape<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, { id: z.ZodLiteral<"marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da">; name: z.ZodLiteral<"TLP:GREEN">; definition: z.ZodObject<{ tlp: z.ZodLiteral<"green">; }, "strip", z.ZodTypeAny, { tlp: "green"; }, { tlp: "green"; }>; }>, "strict", z.ZodTypeAny, { type: "marking-definition"; id: "marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da"; spec_version: "2.1"; created: string; name: "TLP:GREEN"; definition_type: "tlp"; definition: { tlp: "green"; }; }, { type: "marking-definition"; id: "marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da"; spec_version: "2.1"; created: string; name: "TLP:GREEN"; definition_type: "tlp"; definition: { tlp: "green"; }; }>, z.ZodObject<z.objectUtil.extendShape<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, { id: z.ZodLiteral<"marking-definition--f88d31f6-486f-44da-b317-01333bde0b82">; name: z.ZodLiteral<"TLP:AMBER">; definition: z.ZodObject<{ tlp: z.ZodLiteral<"amber">; }, "strip", z.ZodTypeAny, { tlp: "amber"; }, { tlp: "amber"; }>; }>, "strict", z.ZodTypeAny, { type: "marking-definition"; id: "marking-definition--f88d31f6-486f-44da-b317-01333bde0b82"; spec_version: "2.1"; created: string; name: "TLP:AMBER"; definition_type: "tlp"; definition: { tlp: "amber"; }; }, { type: "marking-definition"; id: "marking-definition--f88d31f6-486f-44da-b317-01333bde0b82"; spec_version: "2.1"; created: string; name: "TLP:AMBER"; definition_type: "tlp"; definition: { tlp: "amber"; }; }>, z.ZodObject<z.objectUtil.extendShape<{ type: z.ZodLiteral<"marking-definition">; spec_version: z.ZodLiteral<"2.1">; id: z.ZodString; created: z.ZodString; definition_type: z.ZodLiteral<"tlp">; name: z.ZodString; definition: z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>; }, { id: z.ZodLiteral<"marking-definition--5e57c739-391a-4eb3-b6be-7d15ca92d5ed">; name: z.ZodLiteral<"TLP:RED">; definition: z.ZodObject<{ tlp: z.ZodLiteral<"red">; }, "strip", z.ZodTypeAny, { tlp: "red"; }, { tlp: "red"; }>; }>, "strict", z.ZodTypeAny, { type: "marking-definition"; id: "marking-definition--5e57c739-391a-4eb3-b6be-7d15ca92d5ed"; spec_version: "2.1"; created: string; name: "TLP:RED"; definition_type: "tlp"; definition: { tlp: "red"; }; }, { type: "marking-definition"; id: "marking-definition--5e57c739-391a-4eb3-b6be-7d15ca92d5ed"; spec_version: "2.1"; created: string; name: "TLP:RED"; definition_type: "tlp"; definition: { tlp: "red"; }; }>]>; type TlpMarkingDefinition = z.infer<typeof tlpMarkingDefinitionSchema>; type TlpMarkingObject = z.infer<typeof tlpMarkingObjectSchema>; declare const statementMarkingObjectSchema: z.ZodObject<{ statement: z.ZodString; }, "strict", z.ZodTypeAny, { statement: string; }, { statement: string; }>; declare const markingDefinitionSchema: z.ZodObject<{ type: z.ZodEffects<z.ZodString, string, string>; id: z.ZodEffects<z.ZodEffects<z.ZodString, `attack-pattern--${string}` | `bundle--${string}` | `campaign--${string}` | `course-of-action--${string}` | `identity--${string}` | `intrusion-set--${string}` | `malware--${string}` | `tool--${string}` | `marking-definition--${string}` | `x-mitre-data-component--${string}` | `x-mitre-data-source--${string}` | `x-mitre-tactic--${string}` | `x-mitre-asset--${string}` | `x-mitre-matrix--${string}` | `x-mitre-collection--${string}` | `relationship--${string}` | `file--${string}` | `artifact--${string}`, string>, `marking-definition--${string}`, string>; spec_version: z.ZodEnum<["2.0", "2.1"]>; created: z.ZodBranded<z.ZodType<`${number}-${number}-${number}T${number}:${number}:${number}Z` | `${number}-${number}-${number}T${number}:${number}:${number}.${number}Z`, z.ZodTypeDef, `${number}-${number}-${number}T${number}:${number}:${number}Z` | `${number}-${number}-${number}T${number}:${number}:${number}.${number}Z`>, "StixCreatedTimestamp">; created_by_ref: z.ZodEffects<z.ZodEffects<z.ZodString, `attack-pattern--${string}` | `bundle--${string}` | `campaign--${string}` | `course-of-action--${string}` | `identity--${string}` | `intrusion-set--${string}` | `malware--${string}` | `tool--${string}` | `marking-definition--${string}` | `x-mitre-data-component--${string}` | `x-mitre-data-source--${string}` | `x-mitre-tactic--${string}` | `x-mitre-asset--${string}` | `x-mitre-matrix--${string}` | `x-mitre-collection--${string}` | `relationship--${string}` | `file--${string}` | `artifact--${string}`, string>, `identity--${string}`, string>; labels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; revoked: z.ZodOptional<z.ZodBoolean>; confidence: z.ZodOptional<z.ZodEffects<z.ZodOptional<z.ZodNumber>, number | undefined, number | undefined>>; lang: z.ZodOptional<z.ZodString>; external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{ source_name: z.ZodString; description: z.ZodOptional<z.ZodString>; url: z.ZodOptional<z.ZodString>; external_id: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { source_name: string; description?: string | undefined; url?: string | undefined; external_id?: string | undefined; }, { source_name: string; description?: string | undefined; url?: string | undefined; external_id?: string | undefined; }>, "many">>; object_marking_refs: z.ZodOptional<z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodString, `attack-pattern--${string}` | `bundle--${string}` | `campaign--${string}` | `course-of-action--${string}` | `identity--${string}` | `intrusion-set--${string}` | `malware--${string}` | `tool--${string}` | `marking-definition--${string}` | `x-mitre-data-component--${string}` | `x-mitre-data-source--${string}` | `x-mitre-tactic--${string}` | `x-mitre-asset--${string}` | `x-mitre-matrix--${string}` | `x-mitre-collection--${string}` | `relationship--${string}` | `file--${string}` | `artifact--${string}`, string>, "many">, (`attack-pattern--${string}` | `bundle--${string}` | `campaign--${string}` | `course-of-action--${string}` | `identity--${string}` | `intrusion-set--${string}` | `malware--${string}` | `tool--${string}` | `marking-definition--${string}` | `x-mitre-data-component--${string}` | `x-mitre-data-source--${string}` | `x-mitre-tactic--${string}` | `x-mitre-asset--${string}` | `x-mitre-matrix--${string}` | `x-mitre-collection--${string}` | `relationship--${string}` | `file--${string}` | `artifact--${string}`)[], string[]>>; granular_markings: z.ZodOptional<z.ZodArray<z.ZodObject<{ marking_ref: z.ZodEffects<z.ZodString, `attack-pattern--${string}` | `bundle--${string}` | `campaign--${string}` | `course-of-action--${string}` | `identity--${string}` | `intrusion-set--${string}` | `malware--${string}` | `tool--${string}` | `marking-definition--${string}` | `x-mitre-data-component--${string}` | `x-mitre-data-source--${string}` | `x-mitre-tactic--${string}` | `x-mitre-asset--${string}` | `x-mitre-matrix--${string}` | `x-mitre-collection--${string}` | `relationship--${string}` | `file--${string}` | `artifact--${string}`, string>; selectors: z.ZodArray<z.ZodString, "many">; }, "strip", z.ZodTypeAny, { marking_ref: `attack-pattern--${string}` | `bundle--${string}` | `campaign--${string}` | `course-of-action--${string}` | `identity--${string}` | `intrusion-set--${string}` | `malware--${string}` | `tool--${string}` | `marking-definition--${string}` | `x-mitre-data-component--${string}` | `x-mitre-data-source--${string}` | `x-mitre-tactic--${string}` | `x-mitre-asset--${string}` | `x-mitre-matrix--${string}` | `x-mitre-collection--${string}` | `relationship--${string}` | `file--${string}` | `artifact--${string}`; selectors: string[]; }, { marking_ref: string; selectors: string[]; }>, "many">>; extensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{ extension_type: z.ZodString; extension_properties: z.ZodRecord<z.ZodString, z.ZodUnknown>; }, "strip", z.ZodTypeAny, { extension_type: string; extension_properties: Record<string, unknown>; }, { extension_type: string; extension_properties: Record<string, unknown>; }>, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>>; name: z.ZodOptional<z.ZodString>; x_mitre_old_attack_id: z.ZodOptional<z.ZodEffects<z.ZodString, `MOB-M${number}` | `MOB-S${number}`, string>>; definition_type: z.ZodEnum<["statement", "tlp"]>; definition: z.ZodUnion<[z.ZodObject<{ tlp: z.ZodString; }, "strict", z.ZodTypeAny, { tlp: string; }, { tlp: string; }>, z.ZodObject<{ statement: z.ZodString; }, "strict", z.ZodTypeAny, { statement: string; }, { statement: string; }>]>; }, "strict", z.ZodTypeAny, { type: string; id: `marking-definition--${string}`; spec_version: "2.0" | "2.1"; created: (`${number}-${number}-${number}T${number}:${number}:${number}Z` | `${number}-${number}-${number}T${number}:${number}:${number}.${number}Z`) & z.BRAND<"StixCreatedTimestamp">; created_by_ref: `identity--${string}`; definition_type: "tlp" | "statement"; definition: { tlp: string; } | { statement: string; }; labels?: string[] | undefined; revoked?: boolean | undefined; confidence?: number | undefined; lang?: string | undefined; external_references?: { source_name: string; description?: string | undefined; url?: string | undefined; external_id?: string | undefined; }[] | undefined; object_marking_refs?: (`attack-pattern--${string}` | `bundle--${string}` | `campaign--${string}` | `course-of-action--${string}` | `identity--${string}` | `intrusion-set--${string}` | `malware--${string}` | `tool--${string}` | `marking-definition--${string}` | `x-mitre-data-component--${string}` | `x-mitre-data-source--${string}` | `x-mitre-tactic--${string}` | `x-mitre-asset--${string}` | `x-mitre-matrix--${string}` | `x-mitre-collection--${string}` | `relationship--${string}` | `file--${string}` | `artifact--${string}`)[] | undefined; granular_markings?: { marking_ref: `attack-pattern--${string}` | `bundle--${string}` | `campaign--${string}` | `course-of-action--${string}` | `identity--${string}` | `intrusion-set--${string}` | `malware--${string}` | `tool--${string}` | `marking-definition--${string}` | `x-mitre-data-component--${string}` | `x-mitre-data-source--${string}` | `x-mitre-tactic--${string}` | `x-mitre-asset--${string}` | `x-mitre-matrix--${string}` | `x-mitre-collection--${string}` | `relationship--${string}` | `file--${string}` | `artifact--${string}`; selectors: string[]; }[] | undefined; extensions?: Record<string, Record<string, unknown> | { extension_type: string; extension_properties: Record<string, unknown>; }> | undefined; name?: string | undefined; x_mitre_old_attack_id?: `MOB-M${number}` | `MOB-S${number}` | undefined; }, { type: string; id: string; spec_version: "2.0" | "2.1"; created: `${number}-${number}-${number}T${number}:${number}:${number}Z` | `${number}-${number}-${number}T${number}:${number}:${number}.${number}Z`; created_by_ref: string; definition_type: "tlp" | "statement"; definition: { tlp: string; } | { statement: string; }; labels?: string[] | undefined; revoked?: boolean | undefined; confidence?: number | undefined; lang?: string | undefined; external_references?: { source_name: string; description?: string | undefined; url?: string | undefined; external_id?: string | undefined; }[] | undefined; object_marking_refs?: string[] | undefined; granular_markings?: { marking_ref: string; selectors: string[]; }[] | undefined; extensions?: Record<string, Record<string, unknown> | { extension_type: string; extension_properties: Record<string, unknown>; }> | undefined; name?: string | undefined; x_mitre_old_attack_id?: string | undefined; }>; type MarkingDefinition = z.infer<typeof markingDefinitionSchema>; export { type MarkingDefinition, type TlpMarkingDefinition, type TlpMarkingObject, baseMarkingDefinitionSchema, markingDefinitionSchema, statementMarkingObjectSchema, tlpAmberSchema, tlpGreenSchema, tlpMarkingDefinitionSchema, tlpMarkingObjectSchema, tlpRedSchema, tlpWhiteSchema };