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

from __future__ import annotations
from apideck_unify.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class DeleteConsumerResponseDataTypedDict(TypedDict):
    consumer_id: NotRequired[str]
    r"""Unique consumer identifier. You can freely choose a consumer ID yourself. Most of the time, this is an ID of your internal data model that represents a user or account in your system (for example account:12345). If the consumer doesn't exist yet, Vault will upsert a consumer based on your ID."""


class DeleteConsumerResponseData(BaseModel):
    consumer_id: Optional[str] = None
    r"""Unique consumer identifier. You can freely choose a consumer ID yourself. Most of the time, this is an ID of your internal data model that represents a user or account in your system (for example account:12345). If the consumer doesn't exist yet, Vault will upsert a consumer based on your ID."""


class DeleteConsumerResponseTypedDict(TypedDict):
    r"""Consumer deleted"""

    status_code: int
    r"""HTTP Response Status Code"""
    status: str
    r"""HTTP Response Status"""
    data: DeleteConsumerResponseDataTypedDict


class DeleteConsumerResponse(BaseModel):
    r"""Consumer deleted"""

    status_code: int
    r"""HTTP Response Status Code"""

    status: str
    r"""HTTP Response Status"""

    data: DeleteConsumerResponseData
