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

from __future__ import annotations
from .utils.json_map import JsonMap
from .base import BaseModel
from .file_attachment_info import FileAttachmentInfo


@JsonMap({})
class PgoTaskToCreate(BaseModel):
    """PgoTaskToCreate

    :param amount: Fixed rate for this task.
    :type amount: str
    :param date_submitted: Short date in format ISO-8601 (YYYY-MM-DD). For example: 2022-12-31.
    :type date_submitted: str
    :param description: Task description.
    :type description: str
    :param attachment: This object is used for linking file attachments to your records., defaults to None
    :type attachment: FileAttachmentInfo, optional
    """

    def __init__(
        self,
        amount: str,
        date_submitted: str,
        description: str,
        attachment: FileAttachmentInfo = None,
    ):
        self.amount = amount
        self.date_submitted = date_submitted
        self.description = description
        if attachment is not None:
            self.attachment = self._define_object(attachment, FileAttachmentInfo)
