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

from __future__ import annotations

from enum import Enum
from typing import Annotated

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


class CoBranding(Enum):
    required = "required"
    optional = "optional"
    none = "none"


class LandingPage(Enum):
    any = "any"
    retailer_site_only = "retailer_site_only"
    must_include_retailer = "must_include_retailer"


class CreativePolicy(AdCPBaseModel):
    model_config = ConfigDict(
        extra="forbid",
    )
    co_branding: Annotated[CoBranding, Field(description="Co-branding requirement")]
    landing_page: Annotated[LandingPage, Field(description="Landing page requirements")]
    templates_available: Annotated[
        bool, Field(description="Whether creative templates are provided")
    ]
