# Code generated by lark suite oapi sdk gen

from typing import List, Dict, Any
from ....utils.dt import to_json_decorator
import attr


@to_json_decorator
@attr.s
class PublicGetReqBody:
    token = attr.ib(type=str, default=None, metadata={"json": "token"})
    type = attr.ib(type=str, default=None, metadata={"json": "type"})


@attr.s
class PublicGetResult:
    security_entity = attr.ib(
        type=str, default=None, metadata={"json": "security_entity"}
    )
    comment_entity = attr.ib(
        type=str, default=None, metadata={"json": "comment_entity"}
    )
    share_entity = attr.ib(type=str, default=None, metadata={"json": "share_entity"})
    link_share_entity = attr.ib(
        type=str, default=None, metadata={"json": "link_share_entity"}
    )
    external_access = attr.ib(
        type=bool, default=None, metadata={"json": "external_access"}
    )
    invite_external = attr.ib(
        type=bool, default=None, metadata={"json": "invite_external"}
    )
    permission_verision = attr.ib(
        type=str, default=None, metadata={"json": "permission_verision"}
    )


@to_json_decorator
@attr.s
class PublicUpdateReqBody:
    token = attr.ib(type=str, default=None, metadata={"json": "token"})
    type = attr.ib(type=str, default=None, metadata={"json": "type"})
    security_entity = attr.ib(
        type=str, default=None, metadata={"json": "security_entity"}
    )
    comment_entity = attr.ib(
        type=str, default=None, metadata={"json": "comment_entity"}
    )
    share_entity = attr.ib(type=str, default=None, metadata={"json": "share_entity"})
    link_share_entity = attr.ib(
        type=str, default=None, metadata={"json": "link_share_entity"}
    )
    external_access = attr.ib(
        type=bool, default=None, metadata={"json": "external_access"}
    )
    invite_external = attr.ib(
        type=bool, default=None, metadata={"json": "invite_external"}
    )
