import { z } from 'zod/v4';

declare const groupBaseSchema: z.ZodObject<{
    spec_version: z.ZodLiteral<"2.1">;
    created: z.ZodISODateTime;
    modified: z.ZodISODateTime;
    created_by_ref: z.ZodOptional<z.ZodString & z.ZodType<`identity--${string}`, string, z.core.$ZodTypeInternals<`identity--${string}`, string>>>;
    labels: z.ZodOptional<z.ZodArray<z.ZodString>>;
    revoked: z.ZodOptional<z.ZodBoolean>;
    confidence: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
    lang: z.ZodOptional<z.ZodString>;
    object_marking_refs: z.ZodOptional<z.ZodArray<z.ZodString>>;
    granular_markings: z.ZodOptional<z.ZodArray<z.ZodObject<{
        lang: z.ZodOptional<z.ZodString>;
        marking_ref: z.ZodOptional<z.ZodString>;
        selectors: z.ZodArray<z.ZodString>;
    }, z.core.$strip>>>;
    extensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
        extension_type: z.ZodEnum<{
            "new-sdo": "new-sdo";
            "new-sco": "new-sco";
            "new-sro": "new-sro";
            "property-extension": "property-extension";
            "toplevel-property-extension": "toplevel-property-extension";
        }>;
    }, z.core.$catchall<z.ZodUnknown>>, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>>;
    name: z.ZodString;
    x_mitre_attack_spec_version: z.ZodString;
    x_mitre_version: z.ZodString;
    x_mitre_old_attack_id: z.ZodOptional<z.ZodString & z.ZodType<`MOB-M${number}` | `MOB-S${number}`, string, z.core.$ZodTypeInternals<`MOB-M${number}` | `MOB-S${number}`, string>>>;
    x_mitre_deprecated: z.ZodOptional<z.ZodBoolean>;
    id: z.ZodString & z.ZodType<`intrusion-set--${string}`, string, z.core.$ZodTypeInternals<`intrusion-set--${string}`, string>>;
    type: z.ZodLiteral<"file" | "attack-pattern" | "bundle" | "campaign" | "course-of-action" | "extension-definition" | "identity" | "intrusion-set" | "malware" | "tool" | "marking-definition" | "x-mitre-analytic" | "x-mitre-data-component" | "x-mitre-detection-strategy" | "x-mitre-tactic" | "x-mitre-asset" | "x-mitre-data-source" | "x-mitre-matrix" | "x-mitre-collection" | "relationship" | "artifact">;
    description: z.ZodOptional<z.ZodString>;
    external_references: z.ZodArray<z.ZodObject<{
        source_name: z.ZodString;
        description: z.ZodOptional<z.ZodString>;
        url: z.ZodOptional<z.ZodURL>;
        external_id: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    x_mitre_domains: z.ZodArray<z.ZodEnum<{
        "enterprise-attack": "enterprise-attack";
        "mobile-attack": "mobile-attack";
        "ics-attack": "ics-attack";
    }>>;
    x_mitre_contributors: z.ZodOptional<z.ZodArray<z.ZodString>>;
    x_mitre_modified_by_ref: z.ZodOptional<z.ZodLiteral<`identity--${string}`>>;
    aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
    first_seen: z.ZodOptional<z.ZodISODateTime>;
    last_seen: z.ZodOptional<z.ZodISODateTime>;
    goals: z.ZodOptional<z.ZodArray<z.ZodString>>;
    resource_level: z.ZodOptional<z.ZodEnum<{
        individual: "individual";
        organization: "organization";
        club: "club";
        contest: "contest";
        team: "team";
        government: "government";
    }>>;
    primary_motivation: z.ZodOptional<z.ZodEnum<{
        accidental: "accidental";
        coercion: "coercion";
        dominance: "dominance";
        ideology: "ideology";
        notoriety: "notoriety";
        "organizational-gain": "organizational-gain";
        "personal-gain": "personal-gain";
        "personal-satisfaction": "personal-satisfaction";
        revenge: "revenge";
        unpredictable: "unpredictable";
    }>>;
    secondary_motivations: z.ZodOptional<z.ZodArray<z.ZodEnum<{
        accidental: "accidental";
        coercion: "coercion";
        dominance: "dominance";
        ideology: "ideology";
        notoriety: "notoriety";
        "organizational-gain": "organizational-gain";
        "personal-gain": "personal-gain";
        "personal-satisfaction": "personal-satisfaction";
        revenge: "revenge";
        unpredictable: "unpredictable";
    }>>>;
}, z.core.$strict>;
type Group = z.infer<typeof groupBaseSchema>;
type GroupPartial = Partial<Group>;
declare const groupChecks: (ctx: z.core.ParsePayload<GroupPartial>) => void;
declare const groupSchema: z.ZodObject<{
    spec_version: z.ZodLiteral<"2.1">;
    created: z.ZodISODateTime;
    modified: z.ZodISODateTime;
    created_by_ref: z.ZodOptional<z.ZodString & z.ZodType<`identity--${string}`, string, z.core.$ZodTypeInternals<`identity--${string}`, string>>>;
    labels: z.ZodOptional<z.ZodArray<z.ZodString>>;
    revoked: z.ZodOptional<z.ZodBoolean>;
    confidence: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
    lang: z.ZodOptional<z.ZodString>;
    object_marking_refs: z.ZodOptional<z.ZodArray<z.ZodString>>;
    granular_markings: z.ZodOptional<z.ZodArray<z.ZodObject<{
        lang: z.ZodOptional<z.ZodString>;
        marking_ref: z.ZodOptional<z.ZodString>;
        selectors: z.ZodArray<z.ZodString>;
    }, z.core.$strip>>>;
    extensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
        extension_type: z.ZodEnum<{
            "new-sdo": "new-sdo";
            "new-sco": "new-sco";
            "new-sro": "new-sro";
            "property-extension": "property-extension";
            "toplevel-property-extension": "toplevel-property-extension";
        }>;
    }, z.core.$catchall<z.ZodUnknown>>, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>>;
    name: z.ZodString;
    x_mitre_attack_spec_version: z.ZodString;
    x_mitre_version: z.ZodString;
    x_mitre_old_attack_id: z.ZodOptional<z.ZodString & z.ZodType<`MOB-M${number}` | `MOB-S${number}`, string, z.core.$ZodTypeInternals<`MOB-M${number}` | `MOB-S${number}`, string>>>;
    x_mitre_deprecated: z.ZodOptional<z.ZodBoolean>;
    id: z.ZodString & z.ZodType<`intrusion-set--${string}`, string, z.core.$ZodTypeInternals<`intrusion-set--${string}`, string>>;
    type: z.ZodLiteral<"file" | "attack-pattern" | "bundle" | "campaign" | "course-of-action" | "extension-definition" | "identity" | "intrusion-set" | "malware" | "tool" | "marking-definition" | "x-mitre-analytic" | "x-mitre-data-component" | "x-mitre-detection-strategy" | "x-mitre-tactic" | "x-mitre-asset" | "x-mitre-data-source" | "x-mitre-matrix" | "x-mitre-collection" | "relationship" | "artifact">;
    description: z.ZodOptional<z.ZodString>;
    external_references: z.ZodArray<z.ZodObject<{
        source_name: z.ZodString;
        description: z.ZodOptional<z.ZodString>;
        url: z.ZodOptional<z.ZodURL>;
        external_id: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    x_mitre_domains: z.ZodArray<z.ZodEnum<{
        "enterprise-attack": "enterprise-attack";
        "mobile-attack": "mobile-attack";
        "ics-attack": "ics-attack";
    }>>;
    x_mitre_contributors: z.ZodOptional<z.ZodArray<z.ZodString>>;
    x_mitre_modified_by_ref: z.ZodOptional<z.ZodLiteral<`identity--${string}`>>;
    aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
    first_seen: z.ZodOptional<z.ZodISODateTime>;
    last_seen: z.ZodOptional<z.ZodISODateTime>;
    goals: z.ZodOptional<z.ZodArray<z.ZodString>>;
    resource_level: z.ZodOptional<z.ZodEnum<{
        individual: "individual";
        organization: "organization";
        club: "club";
        contest: "contest";
        team: "team";
        government: "government";
    }>>;
    primary_motivation: z.ZodOptional<z.ZodEnum<{
        accidental: "accidental";
        coercion: "coercion";
        dominance: "dominance";
        ideology: "ideology";
        notoriety: "notoriety";
        "organizational-gain": "organizational-gain";
        "personal-gain": "personal-gain";
        "personal-satisfaction": "personal-satisfaction";
        revenge: "revenge";
        unpredictable: "unpredictable";
    }>>;
    secondary_motivations: z.ZodOptional<z.ZodArray<z.ZodEnum<{
        accidental: "accidental";
        coercion: "coercion";
        dominance: "dominance";
        ideology: "ideology";
        notoriety: "notoriety";
        "organizational-gain": "organizational-gain";
        "personal-gain": "personal-gain";
        "personal-satisfaction": "personal-satisfaction";
        revenge: "revenge";
        unpredictable: "unpredictable";
    }>>>;
}, z.core.$strict>;
declare const groupPartialSchema: z.ZodObject<{
    spec_version: z.ZodOptional<z.ZodLiteral<"2.1">>;
    created: z.ZodOptional<z.ZodISODateTime>;
    modified: z.ZodOptional<z.ZodISODateTime>;
    created_by_ref: z.ZodOptional<z.ZodOptional<z.ZodString & z.ZodType<`identity--${string}`, string, z.core.$ZodTypeInternals<`identity--${string}`, string>>>>;
    labels: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
    revoked: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
    confidence: z.ZodOptional<z.ZodOptional<z.ZodOptional<z.ZodNumber>>>;
    lang: z.ZodOptional<z.ZodOptional<z.ZodString>>;
    object_marking_refs: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
    granular_markings: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
        lang: z.ZodOptional<z.ZodString>;
        marking_ref: z.ZodOptional<z.ZodString>;
        selectors: z.ZodArray<z.ZodString>;
    }, z.core.$strip>>>>;
    extensions: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
        extension_type: z.ZodEnum<{
            "new-sdo": "new-sdo";
            "new-sco": "new-sco";
            "new-sro": "new-sro";
            "property-extension": "property-extension";
            "toplevel-property-extension": "toplevel-property-extension";
        }>;
    }, z.core.$catchall<z.ZodUnknown>>, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>>>;
    name: z.ZodOptional<z.ZodString>;
    x_mitre_attack_spec_version: z.ZodOptional<z.ZodString>;
    x_mitre_version: z.ZodOptional<z.ZodString>;
    x_mitre_old_attack_id: z.ZodOptional<z.ZodOptional<z.ZodString & z.ZodType<`MOB-M${number}` | `MOB-S${number}`, string, z.core.$ZodTypeInternals<`MOB-M${number}` | `MOB-S${number}`, string>>>>;
    x_mitre_deprecated: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
    id: z.ZodOptional<z.ZodString & z.ZodType<`intrusion-set--${string}`, string, z.core.$ZodTypeInternals<`intrusion-set--${string}`, string>>>;
    type: z.ZodOptional<z.ZodLiteral<"file" | "attack-pattern" | "bundle" | "campaign" | "course-of-action" | "extension-definition" | "identity" | "intrusion-set" | "malware" | "tool" | "marking-definition" | "x-mitre-analytic" | "x-mitre-data-component" | "x-mitre-detection-strategy" | "x-mitre-tactic" | "x-mitre-asset" | "x-mitre-data-source" | "x-mitre-matrix" | "x-mitre-collection" | "relationship" | "artifact">>;
    description: z.ZodOptional<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.ZodURL>;
        external_id: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>>;
    x_mitre_domains: z.ZodOptional<z.ZodArray<z.ZodEnum<{
        "enterprise-attack": "enterprise-attack";
        "mobile-attack": "mobile-attack";
        "ics-attack": "ics-attack";
    }>>>;
    x_mitre_contributors: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
    x_mitre_modified_by_ref: z.ZodOptional<z.ZodOptional<z.ZodLiteral<`identity--${string}`>>>;
    aliases: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
    first_seen: z.ZodOptional<z.ZodOptional<z.ZodISODateTime>>;
    last_seen: z.ZodOptional<z.ZodOptional<z.ZodISODateTime>>;
    goals: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString>>>;
    resource_level: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
        individual: "individual";
        organization: "organization";
        club: "club";
        contest: "contest";
        team: "team";
        government: "government";
    }>>>;
    primary_motivation: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
        accidental: "accidental";
        coercion: "coercion";
        dominance: "dominance";
        ideology: "ideology";
        notoriety: "notoriety";
        "organizational-gain": "organizational-gain";
        "personal-gain": "personal-gain";
        "personal-satisfaction": "personal-satisfaction";
        revenge: "revenge";
        unpredictable: "unpredictable";
    }>>>;
    secondary_motivations: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodEnum<{
        accidental: "accidental";
        coercion: "coercion";
        dominance: "dominance";
        ideology: "ideology";
        notoriety: "notoriety";
        "organizational-gain": "organizational-gain";
        "personal-gain": "personal-gain";
        "personal-satisfaction": "personal-satisfaction";
        revenge: "revenge";
        unpredictable: "unpredictable";
    }>>>>;
}, z.core.$strict>;

export { type Group, type GroupPartial, groupBaseSchema, groupChecks, groupPartialSchema, groupSchema };
