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

from __future__ import annotations
from .assessmentorderreceivedwebhookpayload import (
    AssessmentOrderReceivedWebhookPayload,
    AssessmentOrderReceivedWebhookPayloadTypedDict,
)
from kombo.types import BaseModel
from kombo.utils import FieldMetadata, HeaderMetadata, RequestMetadata
import pydantic
from typing_extensions import Annotated, TypedDict


class WebhookAssessmentOrderReceivedWebhookPayloadRequestTypedDict(TypedDict):
    x_kombo_signature: str
    r"""HMAC signature for webhook verification. See the webhook documentation for details on how to verify this signature."""
    body: AssessmentOrderReceivedWebhookPayloadTypedDict


class WebhookAssessmentOrderReceivedWebhookPayloadRequest(BaseModel):
    x_kombo_signature: Annotated[
        str,
        pydantic.Field(alias="X-Kombo-Signature"),
        FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
    ]
    r"""HMAC signature for webhook verification. See the webhook documentation for details on how to verify this signature."""

    body: Annotated[
        AssessmentOrderReceivedWebhookPayload,
        FieldMetadata(request=RequestMetadata(media_type="application/json")),
    ]
