# Code generated by Lark OpenAPI.

from typing import Any, Optional, Union, Dict, List, Set, IO, Callable, Type
from lark_oapi.core.construct import init


class InternalTenantAccessTokenRequestBody(object):
    _types = {
        "app_id": str,
        "app_secret": str,
    }

    def __init__(self, d=None):
        self.app_id: Optional[str] = None
        self.app_secret: Optional[str] = None
        init(self, d, self._types)

    @staticmethod
    def builder() -> "InternalTenantAccessTokenRequestBodyBuilder":
        return InternalTenantAccessTokenRequestBodyBuilder()


class InternalTenantAccessTokenRequestBodyBuilder(object):
    def __init__(self) -> None:
        self._internal_tenant_access_token_request_body = InternalTenantAccessTokenRequestBody()

    def app_id(self, app_id: str) -> "InternalTenantAccessTokenRequestBodyBuilder":
        self._internal_tenant_access_token_request_body.app_id = app_id
        return self

    def app_secret(self, app_secret: str) -> "InternalTenantAccessTokenRequestBodyBuilder":
        self._internal_tenant_access_token_request_body.app_secret = app_secret
        return self

    def build(self) -> "InternalTenantAccessTokenRequestBody":
        return self._internal_tenant_access_token_request_body
