# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from __future__ import annotations

from typing import List
from typing_extensions import Required, Annotated, TypedDict

from ...._types import SequenceNotStr
from ...._utils import PropertyInfo
from .issue_type import IssueType
from .severity_query_param import SeverityQueryParam

__all__ = ["IssueListParams"]


class IssueListParams(TypedDict, total=False):
    account_id: Required[str]
    """Identifier."""

    dismissed: bool

    issue_class: SequenceNotStr[str]

    issue_class_neq: Annotated[SequenceNotStr[str], PropertyInfo(alias="issue_class~neq")]

    issue_type: List[IssueType]

    issue_type_neq: Annotated[List[IssueType], PropertyInfo(alias="issue_type~neq")]

    page: int
    """Specifies the current page within paginated list of results."""

    per_page: int
    """Sets the number of results per page of results."""

    product: SequenceNotStr[str]

    product_neq: Annotated[SequenceNotStr[str], PropertyInfo(alias="product~neq")]

    severity: List[SeverityQueryParam]

    severity_neq: Annotated[List[SeverityQueryParam], PropertyInfo(alias="severity~neq")]

    subject: SequenceNotStr[str]

    subject_neq: Annotated[SequenceNotStr[str], PropertyInfo(alias="subject~neq")]
