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

from __future__ import annotations
from polar_sdk.types import BaseModel
from typing_extensions import TypedDict


class BenefitDiscordPropertiesTypedDict(TypedDict):
    r"""Properties for a benefit of type `discord`."""

    guild_id: str
    r"""The ID of the Discord server."""
    role_id: str
    r"""The ID of the Discord role to grant."""
    kick_member: bool
    r"""Whether to kick the member from the Discord server on revocation."""
    guild_token: str


class BenefitDiscordProperties(BaseModel):
    r"""Properties for a benefit of type `discord`."""

    guild_id: str
    r"""The ID of the Discord server."""

    role_id: str
    r"""The ID of the Discord role to grant."""

    kick_member: bool
    r"""Whether to kick the member from the Discord server on revocation."""

    guild_token: str
