# This file was generated by liblab | https://liblab.com/

from __future__ import annotations
from .utils.json_map import JsonMap
from .base import BaseModel
from .identifier_value import IdentifierValue, IdentifierValueGuard


@JsonMap({"id_": "id"})
class TimeoffsAttachmentsItem(BaseModel):
    """A item in attachments array. 2022-09-08 FE only allows for "SICK LEAVE"

    :param id_: id_, defaults to None
    :type id_: IdentifierValue, optional
    :param label: The file name, defaults to None
    :type label: str, optional
    :param file_extension: The file name extension, defaults to None
    :type file_extension: str, optional
    """

    def __init__(
        self, id_: IdentifierValue = None, label: str = None, file_extension: str = None
    ):
        if id_ is not None:
            self.id_ = IdentifierValueGuard.return_one_of(id_)
        if label is not None:
            self.label = label
        if file_extension is not None:
            self.file_extension = file_extension
