# generated by datamodel-codegen:
#   filename:  activation-key.json
#   timestamp: 2025-11-15T22:03:55+00:00

from __future__ import annotations

from typing import Annotated, Literal

from adcp.types.base import AdCPBaseModel
from pydantic import ConfigDict, Field


class ActivationKey1(AdCPBaseModel):
    model_config = ConfigDict(
        extra="forbid",
    )
    segment_id: Annotated[
        str,
        Field(description="The platform-specific segment identifier to use in campaign targeting"),
    ]
    type: Annotated[Literal["segment_id"], Field(description="Segment ID based targeting")]


class ActivationKey2(AdCPBaseModel):
    model_config = ConfigDict(
        extra="forbid",
    )
    key: Annotated[str, Field(description="The targeting parameter key")]
    type: Annotated[Literal["key_value"], Field(description="Key-value pair based targeting")]
    value: Annotated[str, Field(description="The targeting parameter value")]
