"""Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT."""

from __future__ import annotations
import dataclasses
import requests as requests_http
from ..shared import events as shared_events
from typing import Optional



@dataclasses.dataclass
class GetEventsRequest:
    et: Optional[int] = dataclasses.field(default=None, metadata={'query_param': { 'field_name': 'et', 'style': 'form', 'explode': True }})
    r"""Epoch timestamp of the earliest event (includes rolled files present on disk)"""
    files: Optional[str] = dataclasses.field(default=None, metadata={'query_param': { 'field_name': 'Files', 'style': 'form', 'explode': True }})
    r"""Optional parameter, when provided the files and provided offsets are used to look for events."""
    filter: Optional[str] = dataclasses.field(default=None, metadata={'query_param': { 'field_name': 'filter', 'style': 'form', 'explode': True }})
    r"""Filter"""
    limit: Optional[int] = dataclasses.field(default=None, metadata={'query_param': { 'field_name': 'limit', 'style': 'form', 'explode': True }})
    r"""Maximum number of log lines to retrieve starting from offset."""
    lt: Optional[int] = dataclasses.field(default=None, metadata={'query_param': { 'field_name': 'lt', 'style': 'form', 'explode': True }})
    r"""Epoch timestamp of the latest event (includes rolled files present on disk)"""
    source: Optional[str] = dataclasses.field(default=None, metadata={'query_param': { 'field_name': 'source', 'style': 'form', 'explode': True }})
    r"""The type of source events to search in the format {type}/{subtype} i.e system_state/hostsfile, system_state/routes, etc..."""
    




@dataclasses.dataclass
class GetEventsResponse:
    content_type: str = dataclasses.field()
    status_code: int = dataclasses.field()
    events: Optional[shared_events.Events] = dataclasses.field(default=None)
    r"""a list of any objects"""
    raw_response: Optional[requests_http.Response] = dataclasses.field(default=None)
    

