# Code generated by lark_sdk_gen. DO NOT EDIT.

from pylark.lark_request import RawRequestReq, _new_method_option
import attr
import typing
import io


@attr.s
class CreateTaskCommentReq(object):
    task_id: str = attr.ib(
        default="", metadata={"req_type": "path"}
    )  # 任务 ID, 示例值："83912691-2e43-47fc-94a4-d512e03984fa"
    content: str = attr.ib(
        default="", metadata={"req_type": "json"}
    )  # 评论内容, 示例值："举杯邀明月，对影成三人", 长度范围：`0` ～ `65536` 字符
    parent_id: str = attr.ib(
        default="", metadata={"req_type": "json"}
    )  # 评论的父ID，创建评论时若不为空则为某条评论的回复，若不为空则不是回复, 示例值："6937231762296684564"
    id: str = attr.ib(
        default="", metadata={"req_type": "json"}
    )  # 评论ID，由飞书服务器发号, 示例值："6937231762296684564"


@attr.s
class CreateTaskCommentRespComment(object):
    content: str = attr.ib(default="", metadata={"req_type": "json"})  # 评论内容
    parent_id: str = attr.ib(
        default="", metadata={"req_type": "json"}
    )  # 评论的父ID，创建评论时若不为空则为某条评论的回复，若不为空则不是回复
    id: str = attr.ib(default="", metadata={"req_type": "json"})  # 评论ID，由飞书服务器发号


@attr.s
class CreateTaskCommentResp(object):
    comment: CreateTaskCommentRespComment = attr.ib(
        default=None, metadata={"req_type": "json"}
    )  # 返回创建好的任务评论


def _gen_create_task_comment_req(request, options) -> RawRequestReq:
    return RawRequestReq(
        dataclass=CreateTaskCommentResp,
        scope="Task",
        api="CreateTaskComment",
        method="POST",
        url="https://open.feishu.cn/open-apis/task/v1/tasks/:task_id/comments",
        body=request,
        method_option=_new_method_option(options),
        need_tenant_access_token=True,
    )
