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

from __future__ import annotations
from typing import List
from .utils.json_map import JsonMap
from .base import BaseModel
from .search_output_dto import SearchOutputDto


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

    :param data: data, defaults to None
    :type data: List[SearchOutputDto], optional
    :param request_id: Uniquely identifies the request. Please provide this identifier when contacting support., defaults to None
    :type request_id: str, optional
    :param next_page: Indicates that more results are available. Use this pagination token to retrieve the next page of results (via parameter `page`)., defaults to None
    :type next_page: str, optional
    """

    def __init__(
        self,
        data: List[SearchOutputDto] = None,
        request_id: str = None,
        next_page: str = None,
    ):
        if data is not None:
            self.data = self._define_list(data, SearchOutputDto)
        if request_id is not None:
            self.request_id = request_id
        if next_page is not None:
            self.next_page = next_page
