"""Data class representing a ``<TypelessObject>`` element in a DMSContent response."""

from dataclasses import dataclass


@dataclass
class DmsContentTypelessObject:
    """A typeless object from the user or workflow tray (``<TypelessObjects>/<TypelessObject>``).

    Typeless objects are not assigned to any archive object type. They typically appear
    in personal inboxes or workflow trays.

    Attributes:
        id: Numeric object ID.
        maintype: Numeric main type ID (folder, register, document).
        module: Document module type string (e.g. ``EMAIL``, ``WINDOWS``).
        user: Login name of the owner.
        pagecount: Number of pages.
        filesize: File size in bytes.
        mimetypeid: Numeric MIME type ID.
        timestamp: Creation or modification timestamp string.
    """

    id: int
    maintype: int
    module: str
    user: str
    pagecount: int
    filesize: int
    mimetypeid: int
    timestamp: str
