# coding: utf-8
"""Waylay Broker query parameters.

This code was generated from the OpenAPI documentation of 'Waylay Broker'

Generated by OpenAPI Generator (https://openapi-generator.tech)

Do not edit the class manually.
"""

from __future__ import annotations  # for Python 3.7–3.9

from pydantic import (
    ConfigDict,
)
from waylay.sdk.api._models import BaseModel as WaylayBaseModel


def _delete_messages_query_alias_for(field_name: str) -> str:
    return field_name


class DeleteMessagesQuery(WaylayBaseModel):
    """Model for `delete_messages` query parameters."""

    model_config = ConfigDict(
        validate_assignment=True,
        protected_namespaces=(),
        extra="allow",
        alias_generator=_delete_messages_query_alias_for,
        populate_by_name=True,
    )


def _get_latest_document_query_alias_for(field_name: str) -> str:
    return field_name


class GetLatestDocumentQuery(WaylayBaseModel):
    """Model for `get_latest_document` query parameters."""

    model_config = ConfigDict(
        validate_assignment=True,
        protected_namespaces=(),
        extra="allow",
        alias_generator=_get_latest_document_query_alias_for,
        populate_by_name=True,
    )


def _get_latest_messages_query_alias_for(field_name: str) -> str:
    return field_name


class GetLatestMessagesQuery(WaylayBaseModel):
    """Model for `get_latest_messages` query parameters."""

    model_config = ConfigDict(
        validate_assignment=True,
        protected_namespaces=(),
        extra="allow",
        alias_generator=_get_latest_messages_query_alias_for,
        populate_by_name=True,
    )


def _query_messages_query_alias_for(field_name: str) -> str:
    return field_name


class QueryMessagesQuery(WaylayBaseModel):
    """Model for `query_messages` query parameters."""

    model_config = ConfigDict(
        validate_assignment=True,
        protected_namespaces=(),
        extra="allow",
        alias_generator=_query_messages_query_alias_for,
        populate_by_name=True,
    )
