"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from flexprice_py.types import BaseModel
from flexprice_py.utils import FieldMetadata, HeaderMetadata, PathParamMetadata
import pydantic
from typing_extensions import Annotated, TypedDict


class HandleHubspotWebhookRequestTypedDict(TypedDict):
    tenant_id: str
    r"""Tenant ID"""
    environment_id: str
    r"""Environment ID"""
    x_hub_spot_signature_v3: str
    r"""HubSpot webhook signature"""


class HandleHubspotWebhookRequest(BaseModel):
    tenant_id: Annotated[
        str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
    ]
    r"""Tenant ID"""

    environment_id: Annotated[
        str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
    ]
    r"""Environment ID"""

    x_hub_spot_signature_v3: Annotated[
        str,
        pydantic.Field(alias="X-HubSpot-Signature-v3"),
        FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
    ]
    r"""HubSpot webhook signature"""
