"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from typing import TYPE_CHECKING
from importlib import import_module
import builtins

if TYPE_CHECKING:
    from .chapterschema import ChapterSchema, ChapterSchemaTypedDict
    from .committeeschema import CommitteeSchema, CommitteeSchemaTypedDict
    from .eventschema import EventSchema, EventSchemaTypedDict
    from .get_userop import GetUserRequest, GetUserRequestTypedDict
    from .issueschema import IssueSchema, IssueSchemaTypedDict
    from .labelschema import LabelSchema, LabelSchemaTypedDict
    from .list_chaptersop import (
        ListChaptersOrdering,
        ListChaptersRequest,
        ListChaptersRequestTypedDict,
    )
    from .list_committeesop import (
        ListCommitteesOrdering,
        ListCommitteesRequest,
        ListCommitteesRequestTypedDict,
    )
    from .list_eventsop import (
        ListEventsOrdering,
        ListEventsRequest,
        ListEventsRequestTypedDict,
    )
    from .list_issuesop import (
        ListIssuesOrdering,
        ListIssuesRequest,
        ListIssuesRequestTypedDict,
    )
    from .list_labelsop import (
        ListLabelsOrdering,
        ListLabelsRequest,
        ListLabelsRequestTypedDict,
    )
    from .list_organizationsop import (
        ListOrganizationsOrdering,
        ListOrganizationsRequest,
        ListOrganizationsRequestTypedDict,
    )
    from .list_projectsop import (
        ListProjectsOrdering,
        ListProjectsRequest,
        ListProjectsRequestTypedDict,
    )
    from .list_releasesop import (
        ListReleasesOrdering,
        ListReleasesRequest,
        ListReleasesRequestTypedDict,
    )
    from .list_repositoriesop import (
        ListRepositoriesOrdering,
        ListRepositoriesRequest,
        ListRepositoriesRequestTypedDict,
    )
    from .list_usersop import (
        ListUsersOrdering,
        ListUsersRequest,
        ListUsersRequestTypedDict,
    )
    from .nestapierror import NestAPIError
    from .nesterror import NestError
    from .no_response_error import NoResponseError
    from .organizationschema import OrganizationSchema, OrganizationSchemaTypedDict
    from .pagedchapterschema import PagedChapterSchema, PagedChapterSchemaTypedDict
    from .pagedcommitteeschema import (
        PagedCommitteeSchema,
        PagedCommitteeSchemaTypedDict,
    )
    from .pagedeventschema import PagedEventSchema, PagedEventSchemaTypedDict
    from .pagedissueschema import PagedIssueSchema, PagedIssueSchemaTypedDict
    from .pagedlabelschema import PagedLabelSchema, PagedLabelSchemaTypedDict
    from .pagedorganizationschema import (
        PagedOrganizationSchema,
        PagedOrganizationSchemaTypedDict,
    )
    from .pagedprojectschema import PagedProjectSchema, PagedProjectSchemaTypedDict
    from .pagedreleaseschema import PagedReleaseSchema, PagedReleaseSchemaTypedDict
    from .pagedrepositoryschema import (
        PagedRepositorySchema,
        PagedRepositorySchemaTypedDict,
    )
    from .pageduserschema import PagedUserSchema, PagedUserSchemaTypedDict
    from .projectlevel import ProjectLevel
    from .projectschema import ProjectSchema, ProjectSchemaTypedDict
    from .releaseschema import ReleaseSchema, ReleaseSchemaTypedDict
    from .repositoryschema import RepositorySchema, RepositorySchemaTypedDict
    from .responsevalidationerror import ResponseValidationError
    from .security import Security, SecurityTypedDict
    from .state import State
    from .usererrorresponse import UserErrorResponse, UserErrorResponseData
    from .userschema import UserSchema, UserSchemaTypedDict

__all__ = [
    "ChapterSchema",
    "ChapterSchemaTypedDict",
    "CommitteeSchema",
    "CommitteeSchemaTypedDict",
    "EventSchema",
    "EventSchemaTypedDict",
    "GetUserRequest",
    "GetUserRequestTypedDict",
    "IssueSchema",
    "IssueSchemaTypedDict",
    "LabelSchema",
    "LabelSchemaTypedDict",
    "ListChaptersOrdering",
    "ListChaptersRequest",
    "ListChaptersRequestTypedDict",
    "ListCommitteesOrdering",
    "ListCommitteesRequest",
    "ListCommitteesRequestTypedDict",
    "ListEventsOrdering",
    "ListEventsRequest",
    "ListEventsRequestTypedDict",
    "ListIssuesOrdering",
    "ListIssuesRequest",
    "ListIssuesRequestTypedDict",
    "ListLabelsOrdering",
    "ListLabelsRequest",
    "ListLabelsRequestTypedDict",
    "ListOrganizationsOrdering",
    "ListOrganizationsRequest",
    "ListOrganizationsRequestTypedDict",
    "ListProjectsOrdering",
    "ListProjectsRequest",
    "ListProjectsRequestTypedDict",
    "ListReleasesOrdering",
    "ListReleasesRequest",
    "ListReleasesRequestTypedDict",
    "ListRepositoriesOrdering",
    "ListRepositoriesRequest",
    "ListRepositoriesRequestTypedDict",
    "ListUsersOrdering",
    "ListUsersRequest",
    "ListUsersRequestTypedDict",
    "NestAPIError",
    "NestError",
    "NoResponseError",
    "OrganizationSchema",
    "OrganizationSchemaTypedDict",
    "PagedChapterSchema",
    "PagedChapterSchemaTypedDict",
    "PagedCommitteeSchema",
    "PagedCommitteeSchemaTypedDict",
    "PagedEventSchema",
    "PagedEventSchemaTypedDict",
    "PagedIssueSchema",
    "PagedIssueSchemaTypedDict",
    "PagedLabelSchema",
    "PagedLabelSchemaTypedDict",
    "PagedOrganizationSchema",
    "PagedOrganizationSchemaTypedDict",
    "PagedProjectSchema",
    "PagedProjectSchemaTypedDict",
    "PagedReleaseSchema",
    "PagedReleaseSchemaTypedDict",
    "PagedRepositorySchema",
    "PagedRepositorySchemaTypedDict",
    "PagedUserSchema",
    "PagedUserSchemaTypedDict",
    "ProjectLevel",
    "ProjectSchema",
    "ProjectSchemaTypedDict",
    "ReleaseSchema",
    "ReleaseSchemaTypedDict",
    "RepositorySchema",
    "RepositorySchemaTypedDict",
    "ResponseValidationError",
    "Security",
    "SecurityTypedDict",
    "State",
    "UserErrorResponse",
    "UserErrorResponseData",
    "UserSchema",
    "UserSchemaTypedDict",
]

_dynamic_imports: dict[str, str] = {
    "ChapterSchema": ".chapterschema",
    "ChapterSchemaTypedDict": ".chapterschema",
    "CommitteeSchema": ".committeeschema",
    "CommitteeSchemaTypedDict": ".committeeschema",
    "EventSchema": ".eventschema",
    "EventSchemaTypedDict": ".eventschema",
    "GetUserRequest": ".get_userop",
    "GetUserRequestTypedDict": ".get_userop",
    "IssueSchema": ".issueschema",
    "IssueSchemaTypedDict": ".issueschema",
    "LabelSchema": ".labelschema",
    "LabelSchemaTypedDict": ".labelschema",
    "ListChaptersOrdering": ".list_chaptersop",
    "ListChaptersRequest": ".list_chaptersop",
    "ListChaptersRequestTypedDict": ".list_chaptersop",
    "ListCommitteesOrdering": ".list_committeesop",
    "ListCommitteesRequest": ".list_committeesop",
    "ListCommitteesRequestTypedDict": ".list_committeesop",
    "ListEventsOrdering": ".list_eventsop",
    "ListEventsRequest": ".list_eventsop",
    "ListEventsRequestTypedDict": ".list_eventsop",
    "ListIssuesOrdering": ".list_issuesop",
    "ListIssuesRequest": ".list_issuesop",
    "ListIssuesRequestTypedDict": ".list_issuesop",
    "ListLabelsOrdering": ".list_labelsop",
    "ListLabelsRequest": ".list_labelsop",
    "ListLabelsRequestTypedDict": ".list_labelsop",
    "ListOrganizationsOrdering": ".list_organizationsop",
    "ListOrganizationsRequest": ".list_organizationsop",
    "ListOrganizationsRequestTypedDict": ".list_organizationsop",
    "ListProjectsOrdering": ".list_projectsop",
    "ListProjectsRequest": ".list_projectsop",
    "ListProjectsRequestTypedDict": ".list_projectsop",
    "ListReleasesOrdering": ".list_releasesop",
    "ListReleasesRequest": ".list_releasesop",
    "ListReleasesRequestTypedDict": ".list_releasesop",
    "ListRepositoriesOrdering": ".list_repositoriesop",
    "ListRepositoriesRequest": ".list_repositoriesop",
    "ListRepositoriesRequestTypedDict": ".list_repositoriesop",
    "ListUsersOrdering": ".list_usersop",
    "ListUsersRequest": ".list_usersop",
    "ListUsersRequestTypedDict": ".list_usersop",
    "NestAPIError": ".nestapierror",
    "NestError": ".nesterror",
    "NoResponseError": ".no_response_error",
    "OrganizationSchema": ".organizationschema",
    "OrganizationSchemaTypedDict": ".organizationschema",
    "PagedChapterSchema": ".pagedchapterschema",
    "PagedChapterSchemaTypedDict": ".pagedchapterschema",
    "PagedCommitteeSchema": ".pagedcommitteeschema",
    "PagedCommitteeSchemaTypedDict": ".pagedcommitteeschema",
    "PagedEventSchema": ".pagedeventschema",
    "PagedEventSchemaTypedDict": ".pagedeventschema",
    "PagedIssueSchema": ".pagedissueschema",
    "PagedIssueSchemaTypedDict": ".pagedissueschema",
    "PagedLabelSchema": ".pagedlabelschema",
    "PagedLabelSchemaTypedDict": ".pagedlabelschema",
    "PagedOrganizationSchema": ".pagedorganizationschema",
    "PagedOrganizationSchemaTypedDict": ".pagedorganizationschema",
    "PagedProjectSchema": ".pagedprojectschema",
    "PagedProjectSchemaTypedDict": ".pagedprojectschema",
    "PagedReleaseSchema": ".pagedreleaseschema",
    "PagedReleaseSchemaTypedDict": ".pagedreleaseschema",
    "PagedRepositorySchema": ".pagedrepositoryschema",
    "PagedRepositorySchemaTypedDict": ".pagedrepositoryschema",
    "PagedUserSchema": ".pageduserschema",
    "PagedUserSchemaTypedDict": ".pageduserschema",
    "ProjectLevel": ".projectlevel",
    "ProjectSchema": ".projectschema",
    "ProjectSchemaTypedDict": ".projectschema",
    "ReleaseSchema": ".releaseschema",
    "ReleaseSchemaTypedDict": ".releaseschema",
    "RepositorySchema": ".repositoryschema",
    "RepositorySchemaTypedDict": ".repositoryschema",
    "ResponseValidationError": ".responsevalidationerror",
    "Security": ".security",
    "SecurityTypedDict": ".security",
    "State": ".state",
    "UserErrorResponse": ".usererrorresponse",
    "UserErrorResponseData": ".usererrorresponse",
    "UserSchema": ".userschema",
    "UserSchemaTypedDict": ".userschema",
}


def __getattr__(attr_name: str) -> object:
    module_name = _dynamic_imports.get(attr_name)
    if module_name is None:
        raise AttributeError(
            f"No {attr_name} found in _dynamic_imports for module name -> {__name__} "
        )

    try:
        module = import_module(module_name, __package__)
        result = getattr(module, attr_name)
        return result
    except ImportError as e:
        raise ImportError(
            f"Failed to import {attr_name} from {module_name}: {e}"
        ) from e
    except AttributeError as e:
        raise AttributeError(
            f"Failed to get {attr_name} from {module_name}: {e}"
        ) from e


def __dir__():
    lazy_attrs = builtins.list(_dynamic_imports.keys())
    return builtins.sorted(lazy_attrs)
