From 889f6465a692a405a7da9bd65de3f6109095a89c Mon Sep 17 00:00:00 2001 From: Avasam Date: Mon, 14 Apr 2025 16:31:31 -0400 Subject: [PATCH 1/4] Autogenerate Async stubs for auth0-python --- .flake8 | 1 + scripts/sync_auth0_python.py | 137 ++++++++++++ .../authentication/back_channel_login.pyi | 8 + .../auth0/_asyncified/authentication/base.pyi | 11 + .../authentication/client_authentication.pyi | 1 + .../_asyncified/authentication/database.pyi | 23 ++ .../_asyncified/authentication/delegated.pyi | 16 ++ .../_asyncified/authentication/enterprise.pyi | 9 + .../_asyncified/authentication/get_token.pyi | 37 ++++ .../authentication/passwordless.pyi | 9 + .../pushed_authorization_requests.pyi | 8 + .../authentication/revoke_token.pyi | 8 + .../_asyncified/authentication/social.pyi | 8 + .../_asyncified/authentication/users.pyi | 8 + .../auth0/_asyncified/management/actions.pyi | 32 +++ .../management/attack_protection.pyi | 13 ++ .../_asyncified/management/blacklists.pyi | 9 + .../auth0/_asyncified/management/branding.pyi | 17 ++ .../management/client_credentials.pyi | 11 + .../_asyncified/management/client_grants.pyi | 28 +++ .../auth0/_asyncified/management/clients.pyi | 20 ++ .../_asyncified/management/connections.pyi | 22 ++ .../_asyncified/management/custom_domains.pyi | 12 ++ .../management/device_credentials.pyi | 20 ++ .../management/email_templates.pyi | 10 + .../auth0/_asyncified/management/emails.pyi | 11 + .../auth0/_asyncified/management/grants.pyi | 15 ++ .../auth0/_asyncified/management/guardian.pyi | 16 ++ .../auth0/_asyncified/management/hooks.pyi | 24 +++ .../auth0/_asyncified/management/jobs.pyi | 19 ++ .../_asyncified/management/log_streams.pyi | 12 ++ .../auth0/_asyncified/management/logs.pyi | 20 ++ .../_asyncified/management/organizations.pyi | 62 ++++++ .../auth0/_asyncified/management/prompts.pyi | 11 + .../management/resource_servers.pyi | 12 ++ .../auth0/_asyncified/management/roles.pyi | 27 +++ .../auth0/_asyncified/management/rules.pyi | 21 ++ .../_asyncified/management/rules_configs.pyi | 10 + .../auth0/_asyncified/management/stats.pyi | 9 + .../auth0/_asyncified/management/tenants.pyi | 9 + .../auth0/_asyncified/management/tickets.pyi | 9 + .../_asyncified/management/user_blocks.pyi | 11 + .../auth0/_asyncified/management/users.pyi | 51 +++++ .../_asyncified/management/users_by_email.pyi | 10 + stubs/auth0-python/auth0/asyncify.pyi | 197 +++++++++++++++++- .../auth0/management/async_auth0.pyi | 67 +++++- 46 files changed, 1093 insertions(+), 8 deletions(-) create mode 100644 scripts/sync_auth0_python.py create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/back_channel_login.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/base.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/client_authentication.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/database.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/delegated.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/enterprise.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/get_token.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/passwordless.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/pushed_authorization_requests.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/revoke_token.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/social.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/authentication/users.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/actions.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/attack_protection.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/blacklists.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/branding.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/client_credentials.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/client_grants.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/clients.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/connections.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/custom_domains.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/device_credentials.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/email_templates.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/emails.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/grants.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/guardian.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/hooks.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/jobs.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/log_streams.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/logs.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/organizations.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/prompts.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/resource_servers.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/roles.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/rules.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/rules_configs.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/stats.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/tenants.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/tickets.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/user_blocks.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/users.pyi create mode 100644 stubs/auth0-python/auth0/_asyncified/management/users_by_email.pyi diff --git a/.flake8 b/.flake8 index 3b99b881864f..eed94143c742 100644 --- a/.flake8 +++ b/.flake8 @@ -11,5 +11,6 @@ per-file-ignores = # Y026: Have implicit type aliases # Y053: have literals >50 characters long stubs/*_pb2.pyi: Y021, Y023, Y026, Y053 + stubs/auth0-python/auth0/_asyncified/**/*.pyi: Y053 exclude = .venv*,.git diff --git a/scripts/sync_auth0_python.py b/scripts/sync_auth0_python.py new file mode 100644 index 000000000000..70fdc73edd1d --- /dev/null +++ b/scripts/sync_auth0_python.py @@ -0,0 +1,137 @@ +import re +import shutil +import sys +from collections.abc import Iterable +from itertools import chain +from pathlib import Path +from subprocess import check_call, run +from textwrap import dedent + +ASYNCIFIED_PATH = Path("stubs/auth0-python/auth0/_asyncified") +ASYNCIFY_PYI_PATH = ASYNCIFIED_PATH.parent / "asyncify.pyi" +KEEP_LINES_STARTSWITH = ("from ", "import ", " def ", "class ", "\n") +AUTO_GENERATED_COMMENT = "# AUTOGENERATED BY scripts/sync_auth0_python.py" + +BASE_CLASS_RE = re.compile(r"class (\w+?):") +SUBCLASS_RE = re.compile(r"class (\w+?)\((\w+?)\):") +AS_IMPORT_RE = re.compile(r"(.+?) as \1") +IMPORT_TO_ASYNCIFY_RE = re.compile(r"(from \.\w+? import )(\w+?)\n") +METHOD_TO_ASYNCIFY_RE = re.compile(r" def (.+?)\(") + + +def generate_stubs() -> None: + check_call(("stubgen", "-p", "auth0.authentication", "-p", "auth0.management", "-o", ASYNCIFIED_PATH)) + + # Move the generated stubs to the right place + shutil.copytree(ASYNCIFIED_PATH / "auth0", ASYNCIFIED_PATH, copy_function=shutil.move, dirs_exist_ok=True) + shutil.rmtree(ASYNCIFIED_PATH / "auth0") + + for path_to_remove in ( + (ASYNCIFIED_PATH / "authentication" / "__init__.pyi"), + (ASYNCIFIED_PATH / "management" / "__init__.pyi"), + *chain.from_iterable( + [ + (already_async, already_async.with_name(already_async.name.removeprefix("async_"))) + for already_async in ASYNCIFIED_PATH.rglob("async_*.pyi") + ] + ), + ): + path_to_remove.unlink() + + +def modify_stubs() -> list[tuple[str, str]]: + base_classes_for_overload: list[tuple[str, str]] = [] + subclasses_for_overload: list[tuple[str, str]] = [] + + # Cleanup and modify the stubs + for stub_path in ASYNCIFIED_PATH.rglob("*.pyi"): + with stub_path.open() as stub_file: + lines = stub_file.readlines() + relative_module = (stub_path.relative_to(ASYNCIFIED_PATH).with_suffix("").as_posix()).replace("/", ".") + + # Only keep imports, classes and public non-special methods + stub_content = "".join( + filter(lambda line: "def _" not in line and any(line.startswith(check) for check in KEEP_LINES_STARTSWITH), lines) + ) + + base_classes_for_overload.extend([(relative_module, match) for match in re.findall(BASE_CLASS_RE, stub_content)]) + subclasses_for_overload.extend([(relative_module, groups[0]) for groups in re.findall(SUBCLASS_RE, stub_content)]) + + # Remove redundant ` as ` imports + stub_content = re.sub(AS_IMPORT_RE, "\\1", stub_content) + # Fix relative imports + stub_content = stub_content.replace("from ..", "from ...") + # Rename same-level local imports to use transformed class names ahead of time + stub_content = re.sub(IMPORT_TO_ASYNCIFY_RE, "\\1_\\2Async\n", stub_content) + # Prep extra imports + stub_content = "from typing import type_check_only\n" + stub_content + + # Rename classes to their stub-only asyncified variant and subclass them + # Transform subclasses. These are a bit odd since they may have asyncified methods hidden by base class. + stub_content = re.sub( + SUBCLASS_RE, + dedent( + """\ + @type_check_only + class _\\1Async(_\\2Async):""" + ), + stub_content, + ) + # Transform base classes + stub_content = re.sub( + BASE_CLASS_RE, + dedent( + f"""\ + from auth0.{relative_module} import \\1 # noqa: E402 + @type_check_only + class _\\1Async(\\1):""" + ), + stub_content, + ) + # Update methods to their asyncified variant + stub_content = re.sub(METHOD_TO_ASYNCIFY_RE, " async def \\1_async(", stub_content) + # Fix empty classes + stub_content = stub_content.replace("):\n\n", "): ...\n\n") + + stub_path.write_text(f"{AUTO_GENERATED_COMMENT}\n{stub_content}") + + # Broader types last + return subclasses_for_overload + base_classes_for_overload + + +def generate_asyncify_pyi(classes_for_overload: Iterable[tuple[str, str]]) -> None: + imports = "" + overloads = "" + for relative_module, class_name in classes_for_overload: + deduped_class_name = relative_module.replace(".", "_") + class_name + async_class_name = f"_{class_name}Async" + deduped_async_class_name = relative_module.replace(".", "_") + async_class_name + imports += f"from auth0.{relative_module} import {class_name} as {deduped_class_name}\n" + imports += f"from ._asyncified.{relative_module} import {async_class_name} as {deduped_async_class_name}\n" + overloads += f"@overload\ndef asyncify(cls: type[{deduped_class_name}]) -> type[{deduped_async_class_name}]: ...\n" + + ASYNCIFY_PYI_PATH.write_text( + f"""\ +{AUTO_GENERATED_COMMENT} +from typing import overload, TypeVar + +{imports} +_T = TypeVar("_T") + +{overloads} +@overload +def asyncify(cls: type[_T]) -> type[_T]: ... +""" + ) + + +def main() -> None: + generate_stubs() + classes_for_overload = modify_stubs() + generate_asyncify_pyi(classes_for_overload) + + run((sys.executable, "-m", "pre_commit", "run", "--files", *ASYNCIFIED_PATH.rglob("*.pyi"), ASYNCIFY_PYI_PATH), check=False) + + +if __name__ == "__main__": + main() diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/back_channel_login.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/back_channel_login.pyi new file mode 100644 index 000000000000..c08ba605a8f9 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/back_channel_login.pyi @@ -0,0 +1,8 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _BackChannelLoginAsync(_AuthenticationBaseAsync): + async def back_channel_login_async(self, binding_message: str, login_hint: str, scope: str, **kwargs) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/base.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/base.pyi new file mode 100644 index 000000000000..ae72534f8c51 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/base.pyi @@ -0,0 +1,11 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.authentication.base import AuthenticationBase +from auth0.types import RequestData + +@type_check_only +class _AuthenticationBaseAsync(AuthenticationBase): + async def post_async(self, url: str, data: RequestData | None = None, headers: dict[str, str] | None = None) -> Any: ... + async def authenticated_post_async(self, url: str, data: dict[str, Any], headers: dict[str, str] | None = None) -> Any: ... + async def get_async(self, url: str, params: dict[str, Any] | None = None, headers: dict[str, str] | None = None) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/client_authentication.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/client_authentication.pyi new file mode 100644 index 000000000000..cc721600d00b --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/client_authentication.pyi @@ -0,0 +1 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/database.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/database.pyi new file mode 100644 index 000000000000..b74b774f2f7b --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/database.pyi @@ -0,0 +1,23 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _DatabaseAsync(_AuthenticationBaseAsync): + async def signup_async( + self, + email: str, + password: str, + connection: str, + username: str | None = None, + user_metadata: dict[str, Any] | None = None, + given_name: str | None = None, + family_name: str | None = None, + name: str | None = None, + nickname: str | None = None, + picture: str | None = None, + ) -> dict[str, Any]: ... + async def change_password_async( + self, email: str, connection: str, password: str | None = None, organization: str | None = None + ) -> str: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/delegated.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/delegated.pyi new file mode 100644 index 000000000000..d67e0c463c7b --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/delegated.pyi @@ -0,0 +1,16 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _DelegatedAsync(_AuthenticationBaseAsync): + async def get_token_async( + self, + target: str, + api_type: str, + grant_type: str, + id_token: str | None = None, + refresh_token: str | None = None, + scope: str = "openid", + ) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/enterprise.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/enterprise.pyi new file mode 100644 index 000000000000..6ed2dd8ee777 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/enterprise.pyi @@ -0,0 +1,9 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _EnterpriseAsync(_AuthenticationBaseAsync): + async def saml_metadata_async(self) -> Any: ... + async def wsfed_metadata_async(self) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/get_token.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/get_token.pyi new file mode 100644 index 000000000000..d92c789dcebb --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/get_token.pyi @@ -0,0 +1,37 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _GetTokenAsync(_AuthenticationBaseAsync): + async def authorization_code_async( + self, code: str, redirect_uri: str | None, grant_type: str = "authorization_code" + ) -> Any: ... + async def authorization_code_pkce_async( + self, code_verifier: str, code: str, redirect_uri: str | None, grant_type: str = "authorization_code" + ) -> Any: ... + async def client_credentials_async( + self, audience: str, grant_type: str = "client_credentials", organization: str | None = None + ) -> Any: ... + async def login_async( + self, + username: str, + password: str, + scope: str | None = None, + realm: str | None = None, + audience: str | None = None, + grant_type: str = "http://auth0.com/oauth/grant-type/password-realm", + forwarded_for: str | None = None, + ) -> Any: ... + async def refresh_token_async(self, refresh_token: str, scope: str = "", grant_type: str = "refresh_token") -> Any: ... + async def passwordless_login_async(self, username: str, otp: str, realm: str, scope: str, audience: str) -> Any: ... + async def backchannel_login_async(self, auth_req_id: str, grant_type: str = "urn:openid:params:grant-type:ciba") -> Any: ... + async def access_token_for_connection_async( + self, + subject_token_type: str, + subject_token: str, + requested_token_type: str, + connection: str | None = None, + grant_type: str = "urn:auth0:params:oauth:grant-type:token-exchange:federated-connection-access-token", + ) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/passwordless.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/passwordless.pyi new file mode 100644 index 000000000000..c0f88efa9078 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/passwordless.pyi @@ -0,0 +1,9 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _PasswordlessAsync(_AuthenticationBaseAsync): + async def email_async(self, email: str, send: str = "link", auth_params: dict[str, str] | None = None) -> Any: ... + async def sms_async(self, phone_number: str) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/pushed_authorization_requests.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/pushed_authorization_requests.pyi new file mode 100644 index 000000000000..93e582e87a09 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/pushed_authorization_requests.pyi @@ -0,0 +1,8 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _PushedAuthorizationRequestsAsync(_AuthenticationBaseAsync): + async def pushed_authorization_request_async(self, response_type: str, redirect_uri: str, **kwargs) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/revoke_token.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/revoke_token.pyi new file mode 100644 index 000000000000..c1058ec8efc7 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/revoke_token.pyi @@ -0,0 +1,8 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _RevokeTokenAsync(_AuthenticationBaseAsync): + async def revoke_refresh_token_async(self, token: str) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/social.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/social.pyi new file mode 100644 index 000000000000..7eb3a180f086 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/social.pyi @@ -0,0 +1,8 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from .base import _AuthenticationBaseAsync + +@type_check_only +class _SocialAsync(_AuthenticationBaseAsync): + async def login_async(self, access_token: str, connection: str, scope: str = "openid") -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/authentication/users.pyi b/stubs/auth0-python/auth0/_asyncified/authentication/users.pyi new file mode 100644 index 000000000000..fc373e08cd0d --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/authentication/users.pyi @@ -0,0 +1,8 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.authentication.users import Users + +@type_check_only +class _UsersAsync(Users): + async def userinfo_async(self, access_token: str) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/actions.pyi b/stubs/auth0-python/auth0/_asyncified/management/actions.pyi new file mode 100644 index 000000000000..99f99cb914dd --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/actions.pyi @@ -0,0 +1,32 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.actions import Actions + +@type_check_only +class _ActionsAsync(Actions): + async def get_actions_async( + self, + trigger_id: str | None = None, + action_name: str | None = None, + deployed: bool | None = None, + installed: bool = False, + page: int | None = None, + per_page: int | None = None, + ) -> Any: ... + async def create_action_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def update_action_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_action_async(self, id: str) -> dict[str, Any]: ... + async def delete_action_async(self, id: str, force: bool = False) -> Any: ... + async def get_triggers_async(self) -> dict[str, Any]: ... + async def get_execution_async(self, id: str) -> dict[str, Any]: ... + async def get_action_versions_async( + self, id: str, page: int | None = None, per_page: int | None = None + ) -> dict[str, Any]: ... + async def get_trigger_bindings_async( + self, id: str, page: int | None = None, per_page: int | None = None + ) -> dict[str, Any]: ... + async def get_action_version_async(self, action_id: str, version_id: str) -> dict[str, Any]: ... + async def deploy_action_async(self, id: str) -> dict[str, Any]: ... + async def rollback_action_version_async(self, action_id: str, version_id: str) -> dict[str, Any]: ... + async def update_trigger_bindings_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/attack_protection.pyi b/stubs/auth0-python/auth0/_asyncified/management/attack_protection.pyi new file mode 100644 index 000000000000..7322689c48e0 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/attack_protection.pyi @@ -0,0 +1,13 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.attack_protection import AttackProtection + +@type_check_only +class _AttackProtectionAsync(AttackProtection): + async def get_breached_password_detection_async(self) -> dict[str, Any]: ... + async def update_breached_password_detection_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_brute_force_protection_async(self) -> dict[str, Any]: ... + async def update_brute_force_protection_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_suspicious_ip_throttling_async(self) -> dict[str, Any]: ... + async def update_suspicious_ip_throttling_async(self, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/blacklists.pyi b/stubs/auth0-python/auth0/_asyncified/management/blacklists.pyi new file mode 100644 index 000000000000..380df387404a --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/blacklists.pyi @@ -0,0 +1,9 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import type_check_only + +from auth0.management.blacklists import Blacklists + +@type_check_only +class _BlacklistsAsync(Blacklists): + async def get_async(self, aud: str | None = None) -> list[dict[str, str]]: ... + async def create_async(self, jti: str, aud: str | None = None) -> dict[str, str]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/branding.pyi b/stubs/auth0-python/auth0/_asyncified/management/branding.pyi new file mode 100644 index 000000000000..ecd141cd1a17 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/branding.pyi @@ -0,0 +1,17 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.branding import Branding + +@type_check_only +class _BrandingAsync(Branding): + async def get_async(self) -> dict[str, Any]: ... + async def update_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_template_universal_login_async(self) -> dict[str, Any]: ... + async def delete_template_universal_login_async(self) -> Any: ... + async def update_template_universal_login_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_default_branding_theme_async(self) -> dict[str, Any]: ... + async def get_branding_theme_async(self, theme_id: str) -> dict[str, Any]: ... + async def delete_branding_theme_async(self, theme_id: str) -> Any: ... + async def update_branding_theme_async(self, theme_id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def create_branding_theme_async(self, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/client_credentials.pyi b/stubs/auth0-python/auth0/_asyncified/management/client_credentials.pyi new file mode 100644 index 000000000000..16eaa0dfcadf --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/client_credentials.pyi @@ -0,0 +1,11 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.client_credentials import ClientCredentials + +@type_check_only +class _ClientCredentialsAsync(ClientCredentials): + async def all_async(self, client_id: str) -> list[dict[str, Any]]: ... + async def get_async(self, client_id: str, id: str) -> dict[str, Any]: ... + async def create_async(self, client_id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_async(self, client_id: str, id: str) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/client_grants.pyi b/stubs/auth0-python/auth0/_asyncified/management/client_grants.pyi new file mode 100644 index 000000000000..128ed3329cd9 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/client_grants.pyi @@ -0,0 +1,28 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.client_grants import ClientGrants + +@type_check_only +class _ClientGrantsAsync(ClientGrants): + async def all_async( + self, + audience: str | None = None, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = False, + client_id: str | None = None, + allow_any_organization: bool | None = None, + ): ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_organizations_async( + self, + id: str, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = False, + from_param: str | None = None, + take: int | None = None, + ): ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/clients.pyi b/stubs/auth0-python/auth0/_asyncified/management/clients.pyi new file mode 100644 index 000000000000..26fef233e89b --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/clients.pyi @@ -0,0 +1,20 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.clients import Clients + +@type_check_only +class _ClientsAsync(Clients): + async def all_async( + self, + fields: list[str] | None = None, + include_fields: bool = True, + page: int | None = None, + per_page: int | None = None, + extra_params: dict[str, Any] | None = None, + ) -> list[dict[str, Any]]: ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_async(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def rotate_secret_async(self, id: str) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/connections.pyi b/stubs/auth0-python/auth0/_asyncified/management/connections.pyi new file mode 100644 index 000000000000..916288aac18a --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/connections.pyi @@ -0,0 +1,22 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.connections import Connections + +@type_check_only +class _ConnectionsAsync(Connections): + async def all_async( + self, + strategy: str | None = None, + fields: list[str] | None = None, + include_fields: bool = True, + page: int | None = None, + per_page: int | None = None, + extra_params: dict[str, Any] | None = None, + name: str | None = None, + ) -> list[dict[str, Any]]: ... + async def get_async(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_user_by_email_async(self, id: str, email: str) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/custom_domains.pyi b/stubs/auth0-python/auth0/_asyncified/management/custom_domains.pyi new file mode 100644 index 000000000000..7b952606598e --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/custom_domains.pyi @@ -0,0 +1,12 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.custom_domains import CustomDomains + +@type_check_only +class _CustomDomainsAsync(CustomDomains): + async def all_async(self) -> list[dict[str, Any]]: ... + async def get_async(self, id: str) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def create_new_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def verify_async(self, id: str) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/device_credentials.pyi b/stubs/auth0-python/auth0/_asyncified/management/device_credentials.pyi new file mode 100644 index 000000000000..7cd767b8cd91 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/device_credentials.pyi @@ -0,0 +1,20 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.device_credentials import DeviceCredentials + +@type_check_only +class _DeviceCredentialsAsync(DeviceCredentials): + async def get_async( + self, + user_id: str, + client_id: str, + type: str, + fields: list[str] | None = None, + include_fields: bool = True, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = False, + ): ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/email_templates.pyi b/stubs/auth0-python/auth0/_asyncified/management/email_templates.pyi new file mode 100644 index 000000000000..2d48fda3422c --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/email_templates.pyi @@ -0,0 +1,10 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.email_templates import EmailTemplates + +@type_check_only +class _EmailTemplatesAsync(EmailTemplates): + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_async(self, template_name: str) -> dict[str, Any]: ... + async def update_async(self, template_name: str, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/emails.pyi b/stubs/auth0-python/auth0/_asyncified/management/emails.pyi new file mode 100644 index 000000000000..9a1f258eb564 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/emails.pyi @@ -0,0 +1,11 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.emails import Emails + +@type_check_only +class _EmailsAsync(Emails): + async def get_async(self, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Any]: ... + async def config_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_async(self) -> Any: ... + async def update_async(self, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/grants.pyi b/stubs/auth0-python/auth0/_asyncified/management/grants.pyi new file mode 100644 index 000000000000..61c692fb3087 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/grants.pyi @@ -0,0 +1,15 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.grants import Grants + +@type_check_only +class _GrantsAsync(Grants): + async def all_async( + self, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = False, + extra_params: dict[str, Any] | None = None, + ): ... + async def delete_async(self, id: str) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/guardian.pyi b/stubs/auth0-python/auth0/_asyncified/management/guardian.pyi new file mode 100644 index 000000000000..2f99afd96ead --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/guardian.pyi @@ -0,0 +1,16 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.guardian import Guardian + +@type_check_only +class _GuardianAsync(Guardian): + async def all_factors_async(self) -> list[dict[str, Any]]: ... + async def update_factor_async(self, name: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def update_templates_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_templates_async(self) -> dict[str, Any]: ... + async def get_enrollment_async(self, id: str) -> dict[str, Any]: ... + async def delete_enrollment_async(self, id: str) -> Any: ... + async def create_enrollment_ticket_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_factor_providers_async(self, factor_name: str, name: str) -> dict[str, Any]: ... + async def update_factor_providers_async(self, factor_name: str, name: str, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/hooks.pyi b/stubs/auth0-python/auth0/_asyncified/management/hooks.pyi new file mode 100644 index 000000000000..5ce9b2cf872e --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/hooks.pyi @@ -0,0 +1,24 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.hooks import Hooks + +@type_check_only +class _HooksAsync(Hooks): + async def all_async( + self, + enabled: bool = True, + fields: list[str] | None = None, + include_fields: bool = True, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = False, + ): ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_async(self, id: str, fields: list[str] | None = None) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_secrets_async(self, id: str) -> dict[str, Any]: ... + async def add_secrets_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_secrets_async(self, id: str, body: list[str]) -> Any: ... + async def update_secrets_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/jobs.pyi b/stubs/auth0-python/auth0/_asyncified/management/jobs.pyi new file mode 100644 index 000000000000..00d948c2b6ce --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/jobs.pyi @@ -0,0 +1,19 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.jobs import Jobs + +@type_check_only +class _JobsAsync(Jobs): + async def get_async(self, id: str) -> dict[str, Any]: ... + async def get_failed_job_async(self, id: str) -> dict[str, Any]: ... + async def export_users_async(self, body: dict[str, Any]): ... + async def import_users_async( + self, + connection_id: str, + file_obj: Any, + upsert: bool = False, + send_completion_email: bool = True, + external_id: str | None = None, + ) -> dict[str, Any]: ... + async def send_verification_email_async(self, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/log_streams.pyi b/stubs/auth0-python/auth0/_asyncified/management/log_streams.pyi new file mode 100644 index 000000000000..5d19ca4ae174 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/log_streams.pyi @@ -0,0 +1,12 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.log_streams import LogStreams + +@type_check_only +class _LogStreamsAsync(LogStreams): + async def list_async(self) -> list[dict[str, Any]]: ... + async def get_async(self, id: str) -> dict[str, Any]: ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> dict[str, Any]: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/logs.pyi b/stubs/auth0-python/auth0/_asyncified/management/logs.pyi new file mode 100644 index 000000000000..cad2f495e911 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/logs.pyi @@ -0,0 +1,20 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.logs import Logs + +@type_check_only +class _LogsAsync(Logs): + async def search_async( + self, + page: int = 0, + per_page: int = 50, + sort: str | None = None, + q: str | None = None, + include_totals: bool = True, + fields: list[str] | None = None, + from_param: str | None = None, + take: int | None = None, + include_fields: bool = True, + ): ... + async def get_async(self, id: str) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/organizations.pyi b/stubs/auth0-python/auth0/_asyncified/management/organizations.pyi new file mode 100644 index 000000000000..174b726d78e5 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/organizations.pyi @@ -0,0 +1,62 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.organizations import Organizations + +@type_check_only +class _OrganizationsAsync(Organizations): + async def all_organizations_async( + self, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = True, + from_param: str | None = None, + take: int | None = None, + ): ... + async def get_organization_by_name_async(self, name: str | None = None) -> dict[str, Any]: ... + async def get_organization_async(self, id: str) -> dict[str, Any]: ... + async def create_organization_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def update_organization_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_organization_async(self, id: str) -> Any: ... + async def all_organization_connections_async( + self, id: str, page: int | None = None, per_page: int | None = None + ) -> list[dict[str, Any]]: ... + async def get_organization_connection_async(self, id: str, connection_id: str) -> dict[str, Any]: ... + async def create_organization_connection_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def update_organization_connection_async(self, id: str, connection_id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_organization_connection_async(self, id: str, connection_id: str) -> Any: ... + async def all_organization_members_async( + self, + id: str, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = True, + from_param: str | None = None, + take: int | None = None, + fields: list[str] | None = None, + include_fields: bool = True, + ): ... + async def create_organization_members_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_organization_members_async(self, id: str, body: dict[str, Any]) -> Any: ... + async def all_organization_member_roles_async( + self, id: str, user_id: str, page: int | None = None, per_page: int | None = None, include_totals: bool = False + ) -> list[dict[str, Any]]: ... + async def create_organization_member_roles_async(self, id: str, user_id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_organization_member_roles_async(self, id: str, user_id: str, body: dict[str, Any]) -> Any: ... + async def all_organization_invitations_async( + self, id: str, page: int | None = None, per_page: int | None = None, include_totals: bool = False + ): ... + async def get_organization_invitation_async(self, id: str, invitaton_id: str) -> dict[str, Any]: ... + async def create_organization_invitation_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def delete_organization_invitation_async(self, id: str, invitation_id: str) -> Any: ... + async def get_client_grants_async( + self, + id: str, + audience: str | None = None, + client_id: str | None = None, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = False, + ): ... + async def add_client_grant_async(self, id: str, grant_id: str) -> dict[str, Any]: ... + async def delete_client_grant_async(self, id: str, grant_id: str) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/prompts.pyi b/stubs/auth0-python/auth0/_asyncified/management/prompts.pyi new file mode 100644 index 000000000000..5e9b348159ec --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/prompts.pyi @@ -0,0 +1,11 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.prompts import Prompts + +@type_check_only +class _PromptsAsync(Prompts): + async def get_async(self) -> dict[str, Any]: ... + async def update_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_custom_text_async(self, prompt: str, language: str): ... + async def update_custom_text_async(self, prompt: str, language: str, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/resource_servers.pyi b/stubs/auth0-python/auth0/_asyncified/management/resource_servers.pyi new file mode 100644 index 000000000000..21e011042bcd --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/resource_servers.pyi @@ -0,0 +1,12 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.resource_servers import ResourceServers + +@type_check_only +class _ResourceServersAsync(ResourceServers): + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_all_async(self, page: int | None = None, per_page: int | None = None, include_totals: bool = False): ... + async def get_async(self, id: str) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/roles.pyi b/stubs/auth0-python/auth0/_asyncified/management/roles.pyi new file mode 100644 index 000000000000..9dfed2c28e2d --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/roles.pyi @@ -0,0 +1,27 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.roles import Roles + +@type_check_only +class _RolesAsync(Roles): + async def list_async( + self, page: int = 0, per_page: int = 25, include_totals: bool = True, name_filter: str | None = None + ): ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_async(self, id: str) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def list_users_async( + self, + id: str, + page: int = 0, + per_page: int = 25, + include_totals: bool = True, + from_param: str | None = None, + take: int | None = None, + ): ... + async def add_users_async(self, id: str, users: list[str]) -> dict[str, Any]: ... + async def list_permissions_async(self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True): ... + async def remove_permissions_async(self, id: str, permissions: list[dict[str, str]]) -> Any: ... + async def add_permissions_async(self, id: str, permissions: list[dict[str, str]]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/rules.pyi b/stubs/auth0-python/auth0/_asyncified/management/rules.pyi new file mode 100644 index 000000000000..a0d1b9e7a20f --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/rules.pyi @@ -0,0 +1,21 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.rules import Rules + +@type_check_only +class _RulesAsync(Rules): + async def all_async( + self, + stage: str = "login_success", + enabled: bool = True, + fields: list[str] | None = None, + include_fields: bool = True, + page: int | None = None, + per_page: int | None = None, + include_totals: bool = False, + ): ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_async(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/rules_configs.pyi b/stubs/auth0-python/auth0/_asyncified/management/rules_configs.pyi new file mode 100644 index 000000000000..6f5b6122ba3e --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/rules_configs.pyi @@ -0,0 +1,10 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.rules_configs import RulesConfigs + +@type_check_only +class _RulesConfigsAsync(RulesConfigs): + async def all_async(self) -> list[dict[str, Any]]: ... + async def unset_async(self, key: str) -> Any: ... + async def set_async(self, key: str, value: str) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/stats.pyi b/stubs/auth0-python/auth0/_asyncified/management/stats.pyi new file mode 100644 index 000000000000..f66a687d5d9a --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/stats.pyi @@ -0,0 +1,9 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.stats import Stats + +@type_check_only +class _StatsAsync(Stats): + async def active_users_async(self) -> int: ... + async def daily_stats_async(self, from_date: str | None = None, to_date: str | None = None) -> list[dict[str, Any]]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/tenants.pyi b/stubs/auth0-python/auth0/_asyncified/management/tenants.pyi new file mode 100644 index 000000000000..d39cc24cdf3f --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/tenants.pyi @@ -0,0 +1,9 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.tenants import Tenants + +@type_check_only +class _TenantsAsync(Tenants): + async def get_async(self, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Any]: ... + async def update_async(self, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/tickets.pyi b/stubs/auth0-python/auth0/_asyncified/management/tickets.pyi new file mode 100644 index 000000000000..da2556a5725f --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/tickets.pyi @@ -0,0 +1,9 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.tickets import Tickets + +@type_check_only +class _TicketsAsync(Tickets): + async def create_email_verification_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def create_pswd_change_async(self, body: dict[str, Any]) -> dict[str, Any]: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/user_blocks.pyi b/stubs/auth0-python/auth0/_asyncified/management/user_blocks.pyi new file mode 100644 index 000000000000..974526bbf431 --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/user_blocks.pyi @@ -0,0 +1,11 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.user_blocks import UserBlocks + +@type_check_only +class _UserBlocksAsync(UserBlocks): + async def get_by_identifier_async(self, identifier: str) -> dict[str, Any]: ... + async def unblock_by_identifier_async(self, identifier: dict[str, Any]) -> Any: ... + async def get_async(self, id: str) -> dict[str, Any]: ... + async def unblock_async(self, id: str) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/users.pyi b/stubs/auth0-python/auth0/_asyncified/management/users.pyi new file mode 100644 index 000000000000..4c2fc85b2a2f --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/users.pyi @@ -0,0 +1,51 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.users import Users + +@type_check_only +class _UsersAsync(Users): + async def list_async( + self, + page: int = 0, + per_page: int = 25, + sort: str | None = None, + connection: str | None = None, + q: str | None = None, + search_engine: str | None = None, + include_totals: bool = True, + fields: list[str] | None = None, + include_fields: bool = True, + ): ... + async def create_async(self, body: dict[str, Any]) -> dict[str, Any]: ... + async def get_async(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Any]: ... + async def delete_async(self, id: str) -> Any: ... + async def update_async(self, id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def list_organizations_async(self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True): ... + async def list_roles_async(self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True): ... + async def remove_roles_async(self, id: str, roles: list[str]) -> Any: ... + async def add_roles_async(self, id: str, roles: list[str]) -> dict[str, Any]: ... + async def list_permissions_async(self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True): ... + async def remove_permissions_async(self, id: str, permissions: list[str]) -> Any: ... + async def add_permissions_async(self, id: str, permissions: list[str]) -> dict[str, Any]: ... + async def delete_multifactor_async(self, id: str, provider: str) -> Any: ... + async def delete_authenticators_async(self, id: str) -> Any: ... + async def unlink_user_account_async(self, id: str, provider: str, user_id: str) -> Any: ... + async def link_user_account_async(self, user_id: str, body: dict[str, Any]) -> list[dict[str, Any]]: ... + async def regenerate_recovery_code_async(self, user_id: str) -> dict[str, Any]: ... + async def get_guardian_enrollments_async(self, user_id: str) -> dict[str, Any]: ... + async def get_log_events_async( + self, user_id: str, page: int = 0, per_page: int = 50, sort: str | None = None, include_totals: bool = False + ): ... + async def invalidate_remembered_browsers_async(self, user_id: str) -> dict[str, Any]: ... + async def get_authentication_methods_async(self, user_id: str) -> dict[str, Any]: ... + async def get_authentication_method_by_id_async(self, user_id: str, authentication_method_id: str) -> dict[str, Any]: ... + async def create_authentication_method_async(self, user_id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def update_authentication_methods_async(self, user_id: str, body: dict[str, Any]) -> dict[str, Any]: ... + async def update_authentication_method_by_id_async( + self, user_id: str, authentication_method_id: str, body: dict[str, Any] + ) -> dict[str, Any]: ... + async def delete_authentication_methods_async(self, user_id: str) -> Any: ... + async def delete_authentication_method_by_id_async(self, user_id: str, authentication_method_id: str) -> Any: ... + async def list_tokensets_async(self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True): ... + async def delete_tokenset_by_id_async(self, user_id: str, tokenset_id: str) -> Any: ... diff --git a/stubs/auth0-python/auth0/_asyncified/management/users_by_email.pyi b/stubs/auth0-python/auth0/_asyncified/management/users_by_email.pyi new file mode 100644 index 000000000000..bfb0a9576daa --- /dev/null +++ b/stubs/auth0-python/auth0/_asyncified/management/users_by_email.pyi @@ -0,0 +1,10 @@ +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import Any, type_check_only + +from auth0.management.users_by_email import UsersByEmail + +@type_check_only +class _UsersByEmailAsync(UsersByEmail): + async def search_users_by_email_async( + self, email: str, fields: list[str] | None = None, include_fields: bool = True + ) -> list[dict[str, Any]]: ... diff --git a/stubs/auth0-python/auth0/asyncify.pyi b/stubs/auth0-python/auth0/asyncify.pyi index 37c0503bc273..e268b5ec1433 100644 --- a/stubs/auth0-python/auth0/asyncify.pyi +++ b/stubs/auth0-python/auth0/asyncify.pyi @@ -1,6 +1,193 @@ -from auth0.authentication import Users as Users -from auth0.authentication.base import AuthenticationBase as AuthenticationBase -from auth0.rest import RestClientOptions as RestClientOptions -from auth0.rest_async import AsyncRestClient as AsyncRestClient +# AUTOGENERATED BY scripts/sync_auth0_python.py +from typing import TypeVar, overload -def asyncify(cls): ... +from auth0.authentication.back_channel_login import BackChannelLogin as authentication_back_channel_loginBackChannelLogin +from auth0.authentication.base import AuthenticationBase as authentication_baseAuthenticationBase +from auth0.authentication.database import Database as authentication_databaseDatabase +from auth0.authentication.delegated import Delegated as authentication_delegatedDelegated +from auth0.authentication.enterprise import Enterprise as authentication_enterpriseEnterprise +from auth0.authentication.get_token import GetToken as authentication_get_tokenGetToken +from auth0.authentication.passwordless import Passwordless as authentication_passwordlessPasswordless +from auth0.authentication.pushed_authorization_requests import ( + PushedAuthorizationRequests as authentication_pushed_authorization_requestsPushedAuthorizationRequests, +) +from auth0.authentication.revoke_token import RevokeToken as authentication_revoke_tokenRevokeToken +from auth0.authentication.social import Social as authentication_socialSocial +from auth0.authentication.users import Users as authentication_usersUsers +from auth0.management.actions import Actions as management_actionsActions +from auth0.management.attack_protection import AttackProtection as management_attack_protectionAttackProtection +from auth0.management.blacklists import Blacklists as management_blacklistsBlacklists +from auth0.management.branding import Branding as management_brandingBranding +from auth0.management.client_credentials import ClientCredentials as management_client_credentialsClientCredentials +from auth0.management.client_grants import ClientGrants as management_client_grantsClientGrants +from auth0.management.clients import Clients as management_clientsClients +from auth0.management.connections import Connections as management_connectionsConnections +from auth0.management.custom_domains import CustomDomains as management_custom_domainsCustomDomains +from auth0.management.device_credentials import DeviceCredentials as management_device_credentialsDeviceCredentials +from auth0.management.email_templates import EmailTemplates as management_email_templatesEmailTemplates +from auth0.management.emails import Emails as management_emailsEmails +from auth0.management.grants import Grants as management_grantsGrants +from auth0.management.guardian import Guardian as management_guardianGuardian +from auth0.management.hooks import Hooks as management_hooksHooks +from auth0.management.jobs import Jobs as management_jobsJobs +from auth0.management.log_streams import LogStreams as management_log_streamsLogStreams +from auth0.management.logs import Logs as management_logsLogs +from auth0.management.organizations import Organizations as management_organizationsOrganizations +from auth0.management.prompts import Prompts as management_promptsPrompts +from auth0.management.resource_servers import ResourceServers as management_resource_serversResourceServers +from auth0.management.roles import Roles as management_rolesRoles +from auth0.management.rules import Rules as management_rulesRules +from auth0.management.rules_configs import RulesConfigs as management_rules_configsRulesConfigs +from auth0.management.stats import Stats as management_statsStats +from auth0.management.tenants import Tenants as management_tenantsTenants +from auth0.management.tickets import Tickets as management_ticketsTickets +from auth0.management.user_blocks import UserBlocks as management_user_blocksUserBlocks +from auth0.management.users import Users as management_usersUsers +from auth0.management.users_by_email import UsersByEmail as management_users_by_emailUsersByEmail + +from ._asyncified.authentication.back_channel_login import ( + _BackChannelLoginAsync as authentication_back_channel_login_BackChannelLoginAsync, +) +from ._asyncified.authentication.base import _AuthenticationBaseAsync as authentication_base_AuthenticationBaseAsync +from ._asyncified.authentication.database import _DatabaseAsync as authentication_database_DatabaseAsync +from ._asyncified.authentication.delegated import _DelegatedAsync as authentication_delegated_DelegatedAsync +from ._asyncified.authentication.enterprise import _EnterpriseAsync as authentication_enterprise_EnterpriseAsync +from ._asyncified.authentication.get_token import _GetTokenAsync as authentication_get_token_GetTokenAsync +from ._asyncified.authentication.passwordless import _PasswordlessAsync as authentication_passwordless_PasswordlessAsync +from ._asyncified.authentication.pushed_authorization_requests import ( + _PushedAuthorizationRequestsAsync as authentication_pushed_authorization_requests_PushedAuthorizationRequestsAsync, +) +from ._asyncified.authentication.revoke_token import _RevokeTokenAsync as authentication_revoke_token_RevokeTokenAsync +from ._asyncified.authentication.social import _SocialAsync as authentication_social_SocialAsync +from ._asyncified.authentication.users import _UsersAsync as authentication_users_UsersAsync +from ._asyncified.management.actions import _ActionsAsync as management_actions_ActionsAsync +from ._asyncified.management.attack_protection import _AttackProtectionAsync as management_attack_protection_AttackProtectionAsync +from ._asyncified.management.blacklists import _BlacklistsAsync as management_blacklists_BlacklistsAsync +from ._asyncified.management.branding import _BrandingAsync as management_branding_BrandingAsync +from ._asyncified.management.client_credentials import ( + _ClientCredentialsAsync as management_client_credentials_ClientCredentialsAsync, +) +from ._asyncified.management.client_grants import _ClientGrantsAsync as management_client_grants_ClientGrantsAsync +from ._asyncified.management.clients import _ClientsAsync as management_clients_ClientsAsync +from ._asyncified.management.connections import _ConnectionsAsync as management_connections_ConnectionsAsync +from ._asyncified.management.custom_domains import _CustomDomainsAsync as management_custom_domains_CustomDomainsAsync +from ._asyncified.management.device_credentials import ( + _DeviceCredentialsAsync as management_device_credentials_DeviceCredentialsAsync, +) +from ._asyncified.management.email_templates import _EmailTemplatesAsync as management_email_templates_EmailTemplatesAsync +from ._asyncified.management.emails import _EmailsAsync as management_emails_EmailsAsync +from ._asyncified.management.grants import _GrantsAsync as management_grants_GrantsAsync +from ._asyncified.management.guardian import _GuardianAsync as management_guardian_GuardianAsync +from ._asyncified.management.hooks import _HooksAsync as management_hooks_HooksAsync +from ._asyncified.management.jobs import _JobsAsync as management_jobs_JobsAsync +from ._asyncified.management.log_streams import _LogStreamsAsync as management_log_streams_LogStreamsAsync +from ._asyncified.management.logs import _LogsAsync as management_logs_LogsAsync +from ._asyncified.management.organizations import _OrganizationsAsync as management_organizations_OrganizationsAsync +from ._asyncified.management.prompts import _PromptsAsync as management_prompts_PromptsAsync +from ._asyncified.management.resource_servers import _ResourceServersAsync as management_resource_servers_ResourceServersAsync +from ._asyncified.management.roles import _RolesAsync as management_roles_RolesAsync +from ._asyncified.management.rules import _RulesAsync as management_rules_RulesAsync +from ._asyncified.management.rules_configs import _RulesConfigsAsync as management_rules_configs_RulesConfigsAsync +from ._asyncified.management.stats import _StatsAsync as management_stats_StatsAsync +from ._asyncified.management.tenants import _TenantsAsync as management_tenants_TenantsAsync +from ._asyncified.management.tickets import _TicketsAsync as management_tickets_TicketsAsync +from ._asyncified.management.user_blocks import _UserBlocksAsync as management_user_blocks_UserBlocksAsync +from ._asyncified.management.users import _UsersAsync as management_users_UsersAsync +from ._asyncified.management.users_by_email import _UsersByEmailAsync as management_users_by_email_UsersByEmailAsync + +_T = TypeVar("_T") + +@overload +def asyncify( + cls: type[authentication_back_channel_loginBackChannelLogin], +) -> type[authentication_back_channel_login_BackChannelLoginAsync]: ... +@overload +def asyncify(cls: type[authentication_databaseDatabase]) -> type[authentication_database_DatabaseAsync]: ... +@overload +def asyncify(cls: type[authentication_delegatedDelegated]) -> type[authentication_delegated_DelegatedAsync]: ... +@overload +def asyncify(cls: type[authentication_enterpriseEnterprise]) -> type[authentication_enterprise_EnterpriseAsync]: ... +@overload +def asyncify(cls: type[authentication_get_tokenGetToken]) -> type[authentication_get_token_GetTokenAsync]: ... +@overload +def asyncify(cls: type[authentication_passwordlessPasswordless]) -> type[authentication_passwordless_PasswordlessAsync]: ... +@overload +def asyncify( + cls: type[authentication_pushed_authorization_requestsPushedAuthorizationRequests], +) -> type[authentication_pushed_authorization_requests_PushedAuthorizationRequestsAsync]: ... +@overload +def asyncify(cls: type[authentication_revoke_tokenRevokeToken]) -> type[authentication_revoke_token_RevokeTokenAsync]: ... +@overload +def asyncify(cls: type[authentication_socialSocial]) -> type[authentication_social_SocialAsync]: ... +@overload +def asyncify(cls: type[authentication_baseAuthenticationBase]) -> type[authentication_base_AuthenticationBaseAsync]: ... +@overload +def asyncify(cls: type[authentication_usersUsers]) -> type[authentication_users_UsersAsync]: ... +@overload +def asyncify(cls: type[management_actionsActions]) -> type[management_actions_ActionsAsync]: ... +@overload +def asyncify( + cls: type[management_attack_protectionAttackProtection], +) -> type[management_attack_protection_AttackProtectionAsync]: ... +@overload +def asyncify(cls: type[management_blacklistsBlacklists]) -> type[management_blacklists_BlacklistsAsync]: ... +@overload +def asyncify(cls: type[management_brandingBranding]) -> type[management_branding_BrandingAsync]: ... +@overload +def asyncify(cls: type[management_clientsClients]) -> type[management_clients_ClientsAsync]: ... +@overload +def asyncify( + cls: type[management_client_credentialsClientCredentials], +) -> type[management_client_credentials_ClientCredentialsAsync]: ... +@overload +def asyncify(cls: type[management_client_grantsClientGrants]) -> type[management_client_grants_ClientGrantsAsync]: ... +@overload +def asyncify(cls: type[management_connectionsConnections]) -> type[management_connections_ConnectionsAsync]: ... +@overload +def asyncify(cls: type[management_custom_domainsCustomDomains]) -> type[management_custom_domains_CustomDomainsAsync]: ... +@overload +def asyncify( + cls: type[management_device_credentialsDeviceCredentials], +) -> type[management_device_credentials_DeviceCredentialsAsync]: ... +@overload +def asyncify(cls: type[management_emailsEmails]) -> type[management_emails_EmailsAsync]: ... +@overload +def asyncify(cls: type[management_email_templatesEmailTemplates]) -> type[management_email_templates_EmailTemplatesAsync]: ... +@overload +def asyncify(cls: type[management_grantsGrants]) -> type[management_grants_GrantsAsync]: ... +@overload +def asyncify(cls: type[management_guardianGuardian]) -> type[management_guardian_GuardianAsync]: ... +@overload +def asyncify(cls: type[management_hooksHooks]) -> type[management_hooks_HooksAsync]: ... +@overload +def asyncify(cls: type[management_jobsJobs]) -> type[management_jobs_JobsAsync]: ... +@overload +def asyncify(cls: type[management_logsLogs]) -> type[management_logs_LogsAsync]: ... +@overload +def asyncify(cls: type[management_log_streamsLogStreams]) -> type[management_log_streams_LogStreamsAsync]: ... +@overload +def asyncify(cls: type[management_organizationsOrganizations]) -> type[management_organizations_OrganizationsAsync]: ... +@overload +def asyncify(cls: type[management_promptsPrompts]) -> type[management_prompts_PromptsAsync]: ... +@overload +def asyncify(cls: type[management_resource_serversResourceServers]) -> type[management_resource_servers_ResourceServersAsync]: ... +@overload +def asyncify(cls: type[management_rolesRoles]) -> type[management_roles_RolesAsync]: ... +@overload +def asyncify(cls: type[management_rulesRules]) -> type[management_rules_RulesAsync]: ... +@overload +def asyncify(cls: type[management_rules_configsRulesConfigs]) -> type[management_rules_configs_RulesConfigsAsync]: ... +@overload +def asyncify(cls: type[management_statsStats]) -> type[management_stats_StatsAsync]: ... +@overload +def asyncify(cls: type[management_tenantsTenants]) -> type[management_tenants_TenantsAsync]: ... +@overload +def asyncify(cls: type[management_ticketsTickets]) -> type[management_tickets_TicketsAsync]: ... +@overload +def asyncify(cls: type[management_usersUsers]) -> type[management_users_UsersAsync]: ... +@overload +def asyncify(cls: type[management_users_by_emailUsersByEmail]) -> type[management_users_by_email_UsersByEmailAsync]: ... +@overload +def asyncify(cls: type[management_user_blocksUserBlocks]) -> type[management_user_blocks_UserBlocksAsync]: ... +@overload +def asyncify(cls: type[_T]) -> type[_T]: ... diff --git a/stubs/auth0-python/auth0/management/async_auth0.pyi b/stubs/auth0-python/auth0/management/async_auth0.pyi index 6b3f78886ca1..89b171a45374 100644 --- a/stubs/auth0-python/auth0/management/async_auth0.pyi +++ b/stubs/auth0-python/auth0/management/async_auth0.pyi @@ -1,10 +1,39 @@ from types import TracebackType from typing_extensions import Self -from auth0.rest import RestClientOptions as RestClientOptions +from auth0.rest import RestClientOptions -from ..asyncify import asyncify as asyncify -from .auth0 import Auth0 as Auth0 +# ignore: Relative import climbs too many namespaces +from .._asyncified.management.actions import _ActionsAsync # type: ignore[misc] +from .._asyncified.management.attack_protection import _AttackProtectionAsync # type: ignore[misc] +from .._asyncified.management.blacklists import _BlacklistsAsync # type: ignore[misc] +from .._asyncified.management.branding import _BrandingAsync # type: ignore[misc] +from .._asyncified.management.client_credentials import _ClientCredentialsAsync # type: ignore[misc] +from .._asyncified.management.client_grants import _ClientGrantsAsync # type: ignore[misc] +from .._asyncified.management.clients import _ClientsAsync # type: ignore[misc] +from .._asyncified.management.connections import _ConnectionsAsync # type: ignore[misc] +from .._asyncified.management.custom_domains import _CustomDomainsAsync # type: ignore[misc] +from .._asyncified.management.device_credentials import _DeviceCredentialsAsync # type: ignore[misc] +from .._asyncified.management.email_templates import _EmailTemplatesAsync # type: ignore[misc] +from .._asyncified.management.emails import _EmailsAsync # type: ignore[misc] +from .._asyncified.management.grants import _GrantsAsync # type: ignore[misc] +from .._asyncified.management.guardian import _GuardianAsync # type: ignore[misc] +from .._asyncified.management.hooks import _HooksAsync # type: ignore[misc] +from .._asyncified.management.jobs import _JobsAsync # type: ignore[misc] +from .._asyncified.management.log_streams import _LogStreamsAsync # type: ignore[misc] +from .._asyncified.management.logs import _LogsAsync # type: ignore[misc] +from .._asyncified.management.organizations import _OrganizationsAsync # type: ignore[misc] +from .._asyncified.management.prompts import _PromptsAsync # type: ignore[misc] +from .._asyncified.management.resource_servers import _ResourceServersAsync # type: ignore[misc] +from .._asyncified.management.roles import _RolesAsync # type: ignore[misc] +from .._asyncified.management.rules import _RulesAsync # type: ignore[misc] +from .._asyncified.management.rules_configs import _RulesConfigsAsync # type: ignore[misc] +from .._asyncified.management.stats import _StatsAsync # type: ignore[misc] +from .._asyncified.management.tenants import _TenantsAsync # type: ignore[misc] +from .._asyncified.management.tickets import _TicketsAsync # type: ignore[misc] +from .._asyncified.management.user_blocks import _UserBlocksAsync # type: ignore[misc] +from .._asyncified.management.users import _UsersAsync # type: ignore[misc] +from .._asyncified.management.users_by_email import _UsersByEmailAsync # type: ignore[misc] class AsyncAuth0: def __init__(self, domain: str, token: str, rest_options: RestClientOptions | None = None) -> None: ... @@ -13,3 +42,35 @@ class AsyncAuth0: async def __aexit__( self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None ) -> None: ... + + # Same as Auth0, but async + actions: _ActionsAsync + attack_protection: _AttackProtectionAsync + blacklists: _BlacklistsAsync + branding: _BrandingAsync + client_credentials: _ClientCredentialsAsync + client_grants: _ClientGrantsAsync + clients: _ClientsAsync + connections: _ConnectionsAsync + custom_domains: _CustomDomainsAsync + device_credentials: _DeviceCredentialsAsync + email_templates: _EmailTemplatesAsync + emails: _EmailsAsync + grants: _GrantsAsync + guardian: _GuardianAsync + hooks: _HooksAsync + jobs: _JobsAsync + log_streams: _LogStreamsAsync + logs: _LogsAsync + organizations: _OrganizationsAsync + prompts: _PromptsAsync + resource_servers: _ResourceServersAsync + roles: _RolesAsync + rules_configs: _RulesConfigsAsync + rules: _RulesAsync + stats: _StatsAsync + tenants: _TenantsAsync + tickets: _TicketsAsync + user_blocks: _UserBlocksAsync + users_by_email: _UsersByEmailAsync + users: _UsersAsync From 172ee3da9af32fb1de4332b462e841562b11dde1 Mon Sep 17 00:00:00 2001 From: Avasam Date: Mon, 14 Apr 2025 16:29:43 -0400 Subject: [PATCH 2/4] Fix methods to actually follow runtime --- .../@tests/stubtest_allowlist.txt | 13 ++-- .../authentication/async_token_verifier.pyi | 6 ++ .../auth0/authentication/token_verifier.pyi | 2 +- .../auth0-python/auth0/management/actions.pyi | 25 -------- .../auth0/management/attack_protection.pyi | 6 -- .../auth0/management/blacklists.pyi | 2 - .../auth0/management/branding.pyi | 10 ---- .../auth0/management/client_credentials.pyi | 4 -- .../auth0/management/client_grants.pyi | 21 ------- .../auth0-python/auth0/management/clients.pyi | 13 ---- .../auth0/management/connections.pyi | 15 ----- .../auth0/management/custom_domains.pyi | 5 -- .../auth0/management/device_credentials.pyi | 13 ---- .../auth0/management/email_templates.pyi | 3 - .../auth0-python/auth0/management/emails.pyi | 4 -- .../auth0-python/auth0/management/grants.pyi | 8 --- .../auth0/management/guardian.pyi | 11 ---- stubs/auth0-python/auth0/management/hooks.pyi | 17 ------ stubs/auth0-python/auth0/management/jobs.pyi | 12 ---- .../auth0/management/log_streams.pyi | 5 -- stubs/auth0-python/auth0/management/logs.pyi | 13 ---- .../auth0/management/organizations.pyi | 59 ------------------- .../auth0-python/auth0/management/prompts.pyi | 6 -- .../auth0/management/resource_servers.pyi | 5 -- stubs/auth0-python/auth0/management/roles.pyi | 22 ------- stubs/auth0-python/auth0/management/rules.pyi | 14 ----- .../auth0/management/rules_configs.pyi | 3 - stubs/auth0-python/auth0/management/stats.pyi | 4 -- .../auth0-python/auth0/management/tenants.pyi | 2 - .../auth0-python/auth0/management/tickets.pyi | 2 - .../auth0/management/user_blocks.pyi | 4 -- stubs/auth0-python/auth0/management/users.pyi | 52 ---------------- .../auth0/management/users_by_email.pyi | 3 - stubs/auth0-python/auth0/rest_async.pyi | 4 +- 34 files changed, 14 insertions(+), 374 deletions(-) diff --git a/stubs/auth0-python/@tests/stubtest_allowlist.txt b/stubs/auth0-python/@tests/stubtest_allowlist.txt index 8264245ada21..b5b468cd717d 100644 --- a/stubs/auth0-python/@tests/stubtest_allowlist.txt +++ b/stubs/auth0-python/@tests/stubtest_allowlist.txt @@ -1,17 +1,12 @@ # Omit tests auth0\.test.* -# Omit _async functions because they aren't present in the code -auth0\..*_async +# Fake private types that are autogenerated by calling auth0.asyncify.asyncify at runtime +auth0\._asyncified.* # Inconsistently implemented, ommitted -auth0.asyncify.AsyncRestClient.file_post -auth0.authentication.async_token_verifier.AsyncRestClient.file_post -auth0.management.Auth0\..* -auth0.rest_async.AsyncRestClient.file_post -auth0.authentication.async_token_verifier.AsyncTokenVerifier.verify +auth0\.management\.Auth0\..* -# TYPE_CHECKING override makes these show up wrong -auth0.management.async_auth0.RestClientOptions +# TYPE_CHECKING block in the source makes these show up wrong auth0.management.auth0.RestClientOptions auth0.rest.RequestsResponse diff --git a/stubs/auth0-python/auth0/authentication/async_token_verifier.pyi b/stubs/auth0-python/auth0/authentication/async_token_verifier.pyi index 3880c4a6c7e2..f881b8ed5e75 100644 --- a/stubs/auth0-python/auth0/authentication/async_token_verifier.pyi +++ b/stubs/auth0-python/auth0/authentication/async_token_verifier.pyi @@ -1,3 +1,5 @@ +from _typeshed import Incomplete + from .. import TokenValidationError as TokenValidationError from ..rest_async import AsyncRestClient as AsyncRestClient from .token_verifier import ( @@ -9,6 +11,7 @@ from .token_verifier import ( class AsyncAsymmetricSignatureVerifier(AsymmetricSignatureVerifier): def __init__(self, jwks_url: str, algorithm: str = "RS256") -> None: ... def set_session(self, session) -> None: ... + async def verify_signature(self, token) -> dict[str, Incomplete]: ... # type: ignore[override] # Differs from supertype class AsyncJwksFetcher(JwksFetcher): def __init__(self, *args, **kwargs) -> None: ... @@ -23,3 +26,6 @@ class AsyncTokenVerifier(TokenVerifier): self, signature_verifier: AsyncAsymmetricSignatureVerifier, issuer: str, audience: str, leeway: int = 0 ) -> None: ... def set_session(self, session) -> None: ... + async def verify( # type: ignore[override] # Differs from supertype + self, token: str, nonce: str | None = None, max_age: int | None = None, organization: str | None = None + ) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/authentication/token_verifier.pyi b/stubs/auth0-python/auth0/authentication/token_verifier.pyi index 171e55501f9b..ed237d897c30 100644 --- a/stubs/auth0-python/auth0/authentication/token_verifier.pyi +++ b/stubs/auth0-python/auth0/authentication/token_verifier.pyi @@ -6,7 +6,7 @@ from auth0.exceptions import TokenValidationError as TokenValidationError class SignatureVerifier: DISABLE_JWT_CHECKS: ClassVar[dict[str, bool]] def __init__(self, algorithm: str) -> None: ... - async def verify_signature(self, token: str) -> dict[str, Incomplete]: ... + def verify_signature(self, token: str) -> dict[str, Incomplete]: ... class SymmetricSignatureVerifier(SignatureVerifier): def __init__(self, shared_secret: str, algorithm: str = "HS256") -> None: ... diff --git a/stubs/auth0-python/auth0/management/actions.pyi b/stubs/auth0-python/auth0/management/actions.pyi index bce092dff25e..3d9721f82e14 100644 --- a/stubs/auth0-python/auth0/management/actions.pyi +++ b/stubs/auth0-python/auth0/management/actions.pyi @@ -25,40 +25,15 @@ class Actions: page: int | None = None, per_page: int | None = None, ): ... - async def get_actions_async( - self, - trigger_id: str | None = None, - action_name: str | None = None, - deployed: bool | None = None, - installed: bool = False, - page: int | None = None, - per_page: int | None = None, - ): ... def create_action(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_action_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def update_action(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_action_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_action(self, id: str) -> dict[str, Incomplete]: ... - async def get_action_async(self, id: str) -> dict[str, Incomplete]: ... def delete_action(self, id: str, force: bool = False): ... - async def delete_action_async(self, id: str, force: bool = False): ... def get_triggers(self) -> dict[str, Incomplete]: ... - async def get_triggers_async(self) -> dict[str, Incomplete]: ... def get_execution(self, id: str) -> dict[str, Incomplete]: ... - async def get_execution_async(self, id: str) -> dict[str, Incomplete]: ... def get_action_versions(self, id: str, page: int | None = None, per_page: int | None = None) -> dict[str, Incomplete]: ... - async def get_action_versions_async( - self, id: str, page: int | None = None, per_page: int | None = None - ) -> dict[str, Incomplete]: ... def get_trigger_bindings(self, id: str, page: int | None = None, per_page: int | None = None) -> dict[str, Incomplete]: ... - async def get_trigger_bindings_async( - self, id: str, page: int | None = None, per_page: int | None = None - ) -> dict[str, Incomplete]: ... def get_action_version(self, action_id: str, version_id: str) -> dict[str, Incomplete]: ... - async def get_action_version_async(self, action_id: str, version_id: str) -> dict[str, Incomplete]: ... def deploy_action(self, id: str) -> dict[str, Incomplete]: ... - async def deploy_action_async(self, id: str) -> dict[str, Incomplete]: ... def rollback_action_version(self, action_id: str, version_id: str) -> dict[str, Incomplete]: ... - async def rollback_action_version_async(self, action_id: str, version_id: str) -> dict[str, Incomplete]: ... def update_trigger_bindings(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_trigger_bindings_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/attack_protection.pyi b/stubs/auth0-python/auth0/management/attack_protection.pyi index d84ecc180939..3ee9ba26b18f 100644 --- a/stubs/auth0-python/auth0/management/attack_protection.pyi +++ b/stubs/auth0-python/auth0/management/attack_protection.pyi @@ -17,14 +17,8 @@ class AttackProtection: rest_options: RestClientOptions | None = None, ) -> None: ... def get_breached_password_detection(self) -> dict[str, Incomplete]: ... - async def get_breached_password_detection_async(self) -> dict[str, Incomplete]: ... def update_breached_password_detection(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_breached_password_detection_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_brute_force_protection(self) -> dict[str, Incomplete]: ... - async def get_brute_force_protection_async(self) -> dict[str, Incomplete]: ... def update_brute_force_protection(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_brute_force_protection_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_suspicious_ip_throttling(self) -> dict[str, Incomplete]: ... - async def get_suspicious_ip_throttling_async(self) -> dict[str, Incomplete]: ... def update_suspicious_ip_throttling(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_suspicious_ip_throttling_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/blacklists.pyi b/stubs/auth0-python/auth0/management/blacklists.pyi index 9baf22376176..15ee61f7805f 100644 --- a/stubs/auth0-python/auth0/management/blacklists.pyi +++ b/stubs/auth0-python/auth0/management/blacklists.pyi @@ -16,6 +16,4 @@ class Blacklists: rest_options: RestClientOptions | None = None, ) -> None: ... def get(self, aud: str | None = None) -> list[dict[str, str]]: ... - async def get_async(self, aud: str | None = None) -> list[dict[str, str]]: ... def create(self, jti: str, aud: str | None = None) -> dict[str, str]: ... - async def create_async(self, jti: str, aud: str | None = None) -> dict[str, str]: ... diff --git a/stubs/auth0-python/auth0/management/branding.pyi b/stubs/auth0-python/auth0/management/branding.pyi index 71be39cf4b6b..80649c870149 100644 --- a/stubs/auth0-python/auth0/management/branding.pyi +++ b/stubs/auth0-python/auth0/management/branding.pyi @@ -17,22 +17,12 @@ class Branding: rest_options: RestClientOptions | None = None, ) -> None: ... def get(self) -> dict[str, Incomplete]: ... - async def get_async(self) -> dict[str, Incomplete]: ... def update(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_template_universal_login(self) -> dict[str, Incomplete]: ... - async def get_template_universal_login_async(self) -> dict[str, Incomplete]: ... def delete_template_universal_login(self): ... - async def delete_template_universal_login_async(self): ... def update_template_universal_login(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_template_universal_login_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_default_branding_theme(self) -> dict[str, Incomplete]: ... - async def get_default_branding_theme_async(self) -> dict[str, Incomplete]: ... def get_branding_theme(self, theme_id: str) -> dict[str, Incomplete]: ... - async def get_branding_theme_async(self, theme_id: str) -> dict[str, Incomplete]: ... def delete_branding_theme(self, theme_id: str): ... - async def delete_branding_theme_async(self, theme_id: str): ... def update_branding_theme(self, theme_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_branding_theme_async(self, theme_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def create_branding_theme(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_branding_theme_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/client_credentials.pyi b/stubs/auth0-python/auth0/management/client_credentials.pyi index 895f79bcc5ee..571aeb7bd937 100644 --- a/stubs/auth0-python/auth0/management/client_credentials.pyi +++ b/stubs/auth0-python/auth0/management/client_credentials.pyi @@ -17,10 +17,6 @@ class ClientCredentials: rest_options: RestClientOptions | None = None, ) -> None: ... def all(self, client_id: str) -> list[dict[str, Incomplete]]: ... - async def all_async(self, client_id: str) -> list[dict[str, Incomplete]]: ... def get(self, client_id: str, id: str) -> dict[str, Incomplete]: ... - async def get_async(self, client_id: str, id: str) -> dict[str, Incomplete]: ... def create(self, client_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, client_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete(self, client_id: str, id: str) -> dict[str, Incomplete]: ... - async def delete_async(self, client_id: str, id: str) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/client_grants.pyi b/stubs/auth0-python/auth0/management/client_grants.pyi index bae2e974df3c..8b83f7bc9e31 100644 --- a/stubs/auth0-python/auth0/management/client_grants.pyi +++ b/stubs/auth0-python/auth0/management/client_grants.pyi @@ -25,21 +25,9 @@ class ClientGrants: client_id: str | None = None, allow_any_organization: bool | None = None, ) -> dict[str, Incomplete]: ... - async def all_async( - self, - audience: str | None = None, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = False, - client_id: str | None = None, - allow_any_organization: bool | None = None, - ) -> dict[str, Incomplete]: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_organizations( self, id: str, @@ -49,12 +37,3 @@ class ClientGrants: from_param: str | None = None, take: int | None = None, ) -> dict[str, Incomplete]: ... - async def get_organizations_async( - self, - id: str, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = False, - from_param: str | None = None, - take: int | None = None, - ) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/clients.pyi b/stubs/auth0-python/auth0/management/clients.pyi index 1144a33b3dff..13e41cfb03ac 100644 --- a/stubs/auth0-python/auth0/management/clients.pyi +++ b/stubs/auth0-python/auth0/management/clients.pyi @@ -24,21 +24,8 @@ class Clients: per_page: int | None = None, extra_params: dict[str, Incomplete] | None = None, ) -> list[dict[str, Incomplete]]: ... - async def all_async( - self, - fields: list[str] | None = None, - include_fields: bool = True, - page: int | None = None, - per_page: int | None = None, - extra_params: dict[str, Incomplete] | None = None, - ) -> list[dict[str, Incomplete]]: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... - async def get_async(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def rotate_secret(self, id: str) -> dict[str, Incomplete]: ... - async def rotate_secret_async(self, id: str) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/connections.pyi b/stubs/auth0-python/auth0/management/connections.pyi index a7b53124c8e6..2414d4c9b35b 100644 --- a/stubs/auth0-python/auth0/management/connections.pyi +++ b/stubs/auth0-python/auth0/management/connections.pyi @@ -26,23 +26,8 @@ class Connections: extra_params: dict[str, Incomplete] | None = None, name: str | None = None, ) -> list[dict[str, Incomplete]]: ... - async def all_async( - self, - strategy: str | None = None, - fields: list[str] | None = None, - include_fields: bool = True, - page: int | None = None, - per_page: int | None = None, - extra_params: dict[str, Incomplete] | None = None, - name: str | None = None, - ) -> list[dict[str, Incomplete]]: ... def get(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... - async def get_async(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete_user_by_email(self, id: str, email: str): ... - async def delete_user_by_email_async(self, id: str, email: str): ... diff --git a/stubs/auth0-python/auth0/management/custom_domains.pyi b/stubs/auth0-python/auth0/management/custom_domains.pyi index 84b0a1859cb0..45a7ff9cf2af 100644 --- a/stubs/auth0-python/auth0/management/custom_domains.pyi +++ b/stubs/auth0-python/auth0/management/custom_domains.pyi @@ -17,12 +17,7 @@ class CustomDomains: rest_options: RestClientOptions | None = None, ) -> None: ... def all(self) -> list[dict[str, Incomplete]]: ... - async def all_async(self) -> list[dict[str, Incomplete]]: ... def get(self, id: str) -> dict[str, Incomplete]: ... - async def get_async(self, id: str) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def create_new(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_new_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def verify(self, id: str) -> dict[str, Incomplete]: ... - async def verify_async(self, id: str) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/device_credentials.pyi b/stubs/auth0-python/auth0/management/device_credentials.pyi index 3d1f8e4f3a1b..b94d7b43c07d 100644 --- a/stubs/auth0-python/auth0/management/device_credentials.pyi +++ b/stubs/auth0-python/auth0/management/device_credentials.pyi @@ -27,18 +27,5 @@ class DeviceCredentials: per_page: int | None = None, include_totals: bool = False, ): ... - async def get_async( - self, - user_id: str, - client_id: str, - type: str, - fields: list[str] | None = None, - include_fields: bool = True, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = False, - ): ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... diff --git a/stubs/auth0-python/auth0/management/email_templates.pyi b/stubs/auth0-python/auth0/management/email_templates.pyi index 9a4e8919da65..0c6bf2cbc9ab 100644 --- a/stubs/auth0-python/auth0/management/email_templates.pyi +++ b/stubs/auth0-python/auth0/management/email_templates.pyi @@ -17,8 +17,5 @@ class EmailTemplates: rest_options: RestClientOptions | None = None, ) -> None: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get(self, template_name: str) -> dict[str, Incomplete]: ... - async def get_async(self, template_name: str) -> dict[str, Incomplete]: ... def update(self, template_name: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, template_name: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/emails.pyi b/stubs/auth0-python/auth0/management/emails.pyi index f681b1ea9150..9c02e87ec2c4 100644 --- a/stubs/auth0-python/auth0/management/emails.pyi +++ b/stubs/auth0-python/auth0/management/emails.pyi @@ -17,10 +17,6 @@ class Emails: rest_options: RestClientOptions | None = None, ) -> None: ... def get(self, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... - async def get_async(self, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... def config(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def config_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete(self): ... - async def delete_async(self): ... def update(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/grants.pyi b/stubs/auth0-python/auth0/management/grants.pyi index e7946afc5a65..d0e3fefb72ca 100644 --- a/stubs/auth0-python/auth0/management/grants.pyi +++ b/stubs/auth0-python/auth0/management/grants.pyi @@ -23,12 +23,4 @@ class Grants: include_totals: bool = False, extra_params: dict[str, Incomplete] | None = None, ): ... - async def all_async( - self, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = False, - extra_params: dict[str, Incomplete] | None = None, - ): ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... diff --git a/stubs/auth0-python/auth0/management/guardian.pyi b/stubs/auth0-python/auth0/management/guardian.pyi index 19e46a0e238e..6e1d6db8884c 100644 --- a/stubs/auth0-python/auth0/management/guardian.pyi +++ b/stubs/auth0-python/auth0/management/guardian.pyi @@ -17,22 +17,11 @@ class Guardian: rest_options: RestClientOptions | None = None, ) -> None: ... def all_factors(self) -> list[dict[str, Incomplete]]: ... - async def all_factors_async(self) -> list[dict[str, Incomplete]]: ... def update_factor(self, name: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_factor_async(self, name: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def update_templates(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_templates_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_templates(self) -> dict[str, Incomplete]: ... - async def get_templates_async(self) -> dict[str, Incomplete]: ... def get_enrollment(self, id: str) -> dict[str, Incomplete]: ... - async def get_enrollment_async(self, id: str) -> dict[str, Incomplete]: ... def delete_enrollment(self, id: str): ... - async def delete_enrollment_async(self, id: str): ... def create_enrollment_ticket(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_enrollment_ticket_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_factor_providers(self, factor_name: str, name: str) -> dict[str, Incomplete]: ... - async def get_factor_providers_async(self, factor_name: str, name: str) -> dict[str, Incomplete]: ... def update_factor_providers(self, factor_name: str, name: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_factor_providers_async( - self, factor_name: str, name: str, body: dict[str, Incomplete] - ) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/hooks.pyi b/stubs/auth0-python/auth0/management/hooks.pyi index 37ceddff41b6..362eb0d32c1e 100644 --- a/stubs/auth0-python/auth0/management/hooks.pyi +++ b/stubs/auth0-python/auth0/management/hooks.pyi @@ -25,28 +25,11 @@ class Hooks: per_page: int | None = None, include_totals: bool = False, ): ... - async def all_async( - self, - enabled: bool = True, - fields: list[str] | None = None, - include_fields: bool = True, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = False, - ): ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get(self, id: str, fields: list[str] | None = None) -> dict[str, Incomplete]: ... - async def get_async(self, id: str, fields: list[str] | None = None) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_secrets(self, id: str) -> dict[str, Incomplete]: ... - async def get_secrets_async(self, id: str) -> dict[str, Incomplete]: ... def add_secrets(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def add_secrets_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete_secrets(self, id: str, body: list[str]): ... - async def delete_secrets_async(self, id: str, body: list[str]): ... def update_secrets(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_secrets_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/jobs.pyi b/stubs/auth0-python/auth0/management/jobs.pyi index 7ac7699525ba..437daa31f728 100644 --- a/stubs/auth0-python/auth0/management/jobs.pyi +++ b/stubs/auth0-python/auth0/management/jobs.pyi @@ -17,11 +17,8 @@ class Jobs: rest_options: RestClientOptions | None = None, ) -> None: ... def get(self, id: str) -> dict[str, Incomplete]: ... - async def get_async(self, id: str) -> dict[str, Incomplete]: ... def get_failed_job(self, id: str) -> dict[str, Incomplete]: ... - async def get_failed_job_async(self, id: str) -> dict[str, Incomplete]: ... def export_users(self, body: dict[str, Incomplete]): ... - async def export_users_async(self, body: dict[str, Incomplete]): ... def import_users( self, connection_id: str, @@ -30,13 +27,4 @@ class Jobs: send_completion_email: bool = True, external_id: str | None = None, ) -> dict[str, Incomplete]: ... - async def import_users_async( - self, - connection_id: str, - file_obj, - upsert: bool = False, - send_completion_email: bool = True, - external_id: str | None = None, - ) -> dict[str, Incomplete]: ... def send_verification_email(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def send_verification_email_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/log_streams.pyi b/stubs/auth0-python/auth0/management/log_streams.pyi index 85dcd922690a..baf1f4da6329 100644 --- a/stubs/auth0-python/auth0/management/log_streams.pyi +++ b/stubs/auth0-python/auth0/management/log_streams.pyi @@ -18,12 +18,7 @@ class LogStreams: rest_options: RestClientOptions | None = None, ) -> None: ... def list(self) -> _list[dict[str, Incomplete]]: ... - async def list_async(self) -> _list[dict[str, Incomplete]]: ... def get(self, id: str) -> dict[str, Incomplete]: ... - async def get_async(self, id: str) -> dict[str, Incomplete]: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete(self, id: str) -> dict[str, Incomplete]: ... - async def delete_async(self, id: str) -> dict[str, Incomplete]: ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/logs.pyi b/stubs/auth0-python/auth0/management/logs.pyi index a5ac9e4c74b7..1ddde473ba23 100644 --- a/stubs/auth0-python/auth0/management/logs.pyi +++ b/stubs/auth0-python/auth0/management/logs.pyi @@ -28,17 +28,4 @@ class Logs: take: int | None = None, include_fields: bool = True, ) -> dict[str, Incomplete]: ... - async def search_async( - self, - page: int = 0, - per_page: int = 50, - sort: str | None = None, - q: str | None = None, - include_totals: bool = True, - fields: list[str] | None = None, - from_param: str | None = None, - take: int | None = None, - include_fields: bool = True, - ) -> dict[str, Incomplete]: ... def get(self, id: str) -> dict[str, Incomplete]: ... - async def get_async(self, id: str) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/organizations.pyi b/stubs/auth0-python/auth0/management/organizations.pyi index 9dc1205b3e43..8bd2b1c24fd4 100644 --- a/stubs/auth0-python/auth0/management/organizations.pyi +++ b/stubs/auth0-python/auth0/management/organizations.pyi @@ -24,42 +24,20 @@ class Organizations: from_param: str | None = None, take: int | None = None, ) -> dict[str, Incomplete]: ... - async def all_organizations_async( - self, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = True, - from_param: str | None = None, - take: int | None = None, - ) -> dict[str, Incomplete]: ... def get_organization_by_name(self, name: str | None = None) -> dict[str, Incomplete]: ... - async def get_organization_by_name_async(self, name: str | None = None) -> dict[str, Incomplete]: ... def get_organization(self, id: str) -> dict[str, Incomplete]: ... - async def get_organization_async(self, id: str) -> dict[str, Incomplete]: ... def create_organization(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_organization_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def update_organization(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_organization_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete_organization(self, id: str): ... - async def delete_organization_async(self, id: str): ... def all_organization_connections( self, id: str, page: int | None = None, per_page: int | None = None ) -> list[dict[str, Incomplete]]: ... - async def all_organization_connections_async( - self, id: str, page: int | None = None, per_page: int | None = None - ) -> list[dict[str, Incomplete]]: ... def get_organization_connection(self, id: str, connection_id: str) -> dict[str, Incomplete]: ... - async def get_organization_connection_async(self, id: str, connection_id: str) -> dict[str, Incomplete]: ... def create_organization_connection(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_organization_connection_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def update_organization_connection( self, id: str, connection_id: str, body: dict[str, Incomplete] ) -> dict[str, Incomplete]: ... - async def update_organization_connection_async( - self, id: str, connection_id: str, body: dict[str, Incomplete] - ) -> dict[str, Incomplete]: ... def delete_organization_connection(self, id: str, connection_id: str): ... - async def delete_organization_connection_async(self, id: str, connection_id: str): ... def all_organization_members( self, id: str, @@ -71,45 +49,19 @@ class Organizations: fields: list[str] | None = None, include_fields: bool = True, ) -> dict[str, Incomplete]: ... - async def all_organization_members_async( - self, - id: str, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = True, - from_param: str | None = None, - take: int | None = None, - fields: list[str] | None = None, - include_fields: bool = True, - ) -> dict[str, Incomplete]: ... def create_organization_members(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_organization_members_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete_organization_members(self, id: str, body: dict[str, Incomplete]): ... - async def delete_organization_members_async(self, id: str, body: dict[str, Incomplete]): ... def all_organization_member_roles( self, id: str, user_id: str, page: int | None = None, per_page: int | None = None, include_totals: bool = False ) -> list[dict[str, Incomplete]]: ... - async def all_organization_member_roles_async( - self, id: str, user_id: str, page: int | None = None, per_page: int | None = None, include_totals: bool = False - ) -> list[dict[str, Incomplete]]: ... def create_organization_member_roles(self, id: str, user_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_organization_member_roles_async( - self, id: str, user_id: str, body: dict[str, Incomplete] - ) -> dict[str, Incomplete]: ... def delete_organization_member_roles(self, id: str, user_id: str, body: dict[str, Incomplete]): ... - async def delete_organization_member_roles_async(self, id: str, user_id: str, body: dict[str, Incomplete]): ... def all_organization_invitations( self, id: str, page: int | None = None, per_page: int | None = None, include_totals: bool = False ) -> dict[str, Incomplete]: ... - async def all_organization_invitations_async( - self, id: str, page: int | None = None, per_page: int | None = None, include_totals: bool = False - ) -> dict[str, Incomplete]: ... def get_organization_invitation(self, id: str, invitaton_id: str) -> dict[str, Incomplete]: ... - async def get_organization_invitation_async(self, id: str, invitaton_id: str) -> dict[str, Incomplete]: ... def create_organization_invitation(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_organization_invitation_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def delete_organization_invitation(self, id: str, invitation_id: str): ... - async def delete_organization_invitation_async(self, id: str, invitation_id: str): ... def get_client_grants( self, id: str, @@ -119,16 +71,5 @@ class Organizations: per_page: int | None = None, include_totals: bool = False, ) -> dict[str, Incomplete]: ... - async def get_client_grants_async( - self, - id: str, - audience: str | None = None, - client_id: str | None = None, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = False, - ) -> dict[str, Incomplete]: ... def add_client_grant(self, id: str, grant_id: str) -> dict[str, Incomplete]: ... - async def add_client_grant_async(self, id: str, grant_id: str) -> dict[str, Incomplete]: ... def delete_client_grant(self, id: str, grant_id: str) -> dict[str, Incomplete]: ... - async def delete_client_grant_async(self, id: str, grant_id: str) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/prompts.pyi b/stubs/auth0-python/auth0/management/prompts.pyi index 37376d758e3c..c7d864c80561 100644 --- a/stubs/auth0-python/auth0/management/prompts.pyi +++ b/stubs/auth0-python/auth0/management/prompts.pyi @@ -17,12 +17,6 @@ class Prompts: rest_options: RestClientOptions | None = None, ) -> None: ... def get(self) -> dict[str, Incomplete]: ... - async def get_async(self) -> dict[str, Incomplete]: ... def update(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_custom_text(self, prompt: str, language: str): ... - async def get_custom_text_async(self, prompt: str, language: str): ... def update_custom_text(self, prompt: str, language: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_custom_text_async( - self, prompt: str, language: str, body: dict[str, Incomplete] - ) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/resource_servers.pyi b/stubs/auth0-python/auth0/management/resource_servers.pyi index 8e6ca07b0b9d..6ed7fb49d9de 100644 --- a/stubs/auth0-python/auth0/management/resource_servers.pyi +++ b/stubs/auth0-python/auth0/management/resource_servers.pyi @@ -17,12 +17,7 @@ class ResourceServers: rest_options: RestClientOptions | None = None, ) -> None: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get_all(self, page: int | None = None, per_page: int | None = None, include_totals: bool = False): ... - async def get_all_async(self, page: int | None = None, per_page: int | None = None, include_totals: bool = False): ... def get(self, id: str) -> dict[str, Incomplete]: ... - async def get_async(self, id: str) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/roles.pyi b/stubs/auth0-python/auth0/management/roles.pyi index 1cb8b1ff9b34..4eda081bd2d3 100644 --- a/stubs/auth0-python/auth0/management/roles.pyi +++ b/stubs/auth0-python/auth0/management/roles.pyi @@ -20,17 +20,10 @@ class Roles: def list( self, page: int = 0, per_page: int = 25, include_totals: bool = True, name_filter: str | None = None ) -> dict[str, Incomplete]: ... - async def list_async( - self, page: int = 0, per_page: int = 25, include_totals: bool = True, name_filter: str | None = None - ) -> dict[str, Incomplete]: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get(self, id: str) -> dict[str, Incomplete]: ... - async def get_async(self, id: str) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def list_users( self, id: str, @@ -40,24 +33,9 @@ class Roles: from_param: str | None = None, take: int | None = None, ) -> dict[str, Incomplete]: ... - async def list_users_async( - self, - id: str, - page: int = 0, - per_page: int = 25, - include_totals: bool = True, - from_param: str | None = None, - take: int | None = None, - ) -> dict[str, Incomplete]: ... def add_users(self, id: str, users: _list[str]) -> dict[str, Incomplete]: ... - async def add_users_async(self, id: str, users: _list[str]) -> dict[str, Incomplete]: ... def list_permissions( self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True ) -> dict[str, Incomplete]: ... - async def list_permissions_async( - self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True - ) -> dict[str, Incomplete]: ... def remove_permissions(self, id: str, permissions: _list[dict[str, str]]): ... - async def remove_permissions_async(self, id: str, permissions: _list[dict[str, str]]): ... def add_permissions(self, id: str, permissions: _list[dict[str, str]]) -> dict[str, Incomplete]: ... - async def add_permissions_async(self, id: str, permissions: _list[dict[str, str]]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/rules.pyi b/stubs/auth0-python/auth0/management/rules.pyi index 1eac99eb60f7..6d357f3bdb34 100644 --- a/stubs/auth0-python/auth0/management/rules.pyi +++ b/stubs/auth0-python/auth0/management/rules.pyi @@ -26,21 +26,7 @@ class Rules: per_page: int | None = None, include_totals: bool = False, ) -> dict[str, Incomplete]: ... - async def all_async( - self, - stage: str = "login_success", - enabled: bool = True, - fields: list[str] | None = None, - include_fields: bool = True, - page: int | None = None, - per_page: int | None = None, - include_totals: bool = False, - ) -> dict[str, Incomplete]: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... - async def get_async(self, id: str, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/rules_configs.pyi b/stubs/auth0-python/auth0/management/rules_configs.pyi index f276a18d9a36..0915789d7a5d 100644 --- a/stubs/auth0-python/auth0/management/rules_configs.pyi +++ b/stubs/auth0-python/auth0/management/rules_configs.pyi @@ -17,8 +17,5 @@ class RulesConfigs: rest_options: RestClientOptions | None = None, ) -> None: ... def all(self) -> list[dict[str, Incomplete]]: ... - async def all_async(self) -> list[dict[str, Incomplete]]: ... def unset(self, key: str): ... - async def unset_async(self, key: str): ... def set(self, key: str, value: str) -> dict[str, Incomplete]: ... - async def set_async(self, key: str, value: str) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/stats.pyi b/stubs/auth0-python/auth0/management/stats.pyi index f3128be12eaf..1087f5e6801d 100644 --- a/stubs/auth0-python/auth0/management/stats.pyi +++ b/stubs/auth0-python/auth0/management/stats.pyi @@ -17,8 +17,4 @@ class Stats: rest_options: RestClientOptions | None = None, ) -> None: ... def active_users(self) -> int: ... - async def active_users_async(self) -> int: ... def daily_stats(self, from_date: str | None = None, to_date: str | None = None) -> list[dict[str, Incomplete]]: ... - async def daily_stats_async( - self, from_date: str | None = None, to_date: str | None = None - ) -> list[dict[str, Incomplete]]: ... diff --git a/stubs/auth0-python/auth0/management/tenants.pyi b/stubs/auth0-python/auth0/management/tenants.pyi index 12a4df7ad40a..a183ae66b3ab 100644 --- a/stubs/auth0-python/auth0/management/tenants.pyi +++ b/stubs/auth0-python/auth0/management/tenants.pyi @@ -17,6 +17,4 @@ class Tenants: rest_options: RestClientOptions | None = None, ) -> None: ... def get(self, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... - async def get_async(self, fields: list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... def update(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/tickets.pyi b/stubs/auth0-python/auth0/management/tickets.pyi index 236596687f29..534ec9f0036f 100644 --- a/stubs/auth0-python/auth0/management/tickets.pyi +++ b/stubs/auth0-python/auth0/management/tickets.pyi @@ -17,6 +17,4 @@ class Tickets: rest_options: RestClientOptions | None = None, ) -> None: ... def create_email_verification(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_email_verification_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def create_pswd_change(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_pswd_change_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... diff --git a/stubs/auth0-python/auth0/management/user_blocks.pyi b/stubs/auth0-python/auth0/management/user_blocks.pyi index 7417dd514e59..b2956029136d 100644 --- a/stubs/auth0-python/auth0/management/user_blocks.pyi +++ b/stubs/auth0-python/auth0/management/user_blocks.pyi @@ -17,10 +17,6 @@ class UserBlocks: rest_options: RestClientOptions | None = None, ) -> None: ... def get_by_identifier(self, identifier: str) -> dict[str, Incomplete]: ... - async def get_by_identifier_async(self, identifier: str) -> dict[str, Incomplete]: ... def unblock_by_identifier(self, identifier: dict[str, Incomplete]): ... - async def unblock_by_identifier_async(self, identifier: dict[str, Incomplete]): ... def get(self, id: str) -> dict[str, Incomplete]: ... - async def get_async(self, id: str) -> dict[str, Incomplete]: ... def unblock(self, id: str): ... - async def unblock_async(self, id: str): ... diff --git a/stubs/auth0-python/auth0/management/users.pyi b/stubs/auth0-python/auth0/management/users.pyi index e2e159b5755f..ac51a1ee7e46 100644 --- a/stubs/auth0-python/auth0/management/users.pyi +++ b/stubs/auth0-python/auth0/management/users.pyi @@ -29,91 +29,39 @@ class Users: fields: _list[str] | None = None, include_fields: bool = True, ) -> dict[str, Incomplete]: ... - async def list_async( - self, - page: int = 0, - per_page: int = 25, - sort: str | None = None, - connection: str | None = None, - q: str | None = None, - search_engine: str | None = None, - include_totals: bool = True, - fields: _list[str] | None = None, - include_fields: bool = True, - ) -> dict[str, Incomplete]: ... def create(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_async(self, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def get(self, id: str, fields: _list[str] | None = None, include_fields: bool = True) -> dict[str, Incomplete]: ... - async def get_async( - self, id: str, fields: _list[str] | None = None, include_fields: bool = True - ) -> dict[str, Incomplete]: ... def delete(self, id: str): ... - async def delete_async(self, id: str): ... def update(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_async(self, id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def list_organizations( self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True ) -> dict[str, Incomplete]: ... - async def list_organizations_async( - self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True - ) -> dict[str, Incomplete]: ... def list_roles(self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True) -> dict[str, Incomplete]: ... - async def list_roles_async( - self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True - ) -> dict[str, Incomplete]: ... def remove_roles(self, id: str, roles: _list[str]): ... - async def remove_roles_async(self, id: str, roles: _list[str]): ... def add_roles(self, id: str, roles: _list[str]) -> dict[str, Incomplete]: ... - async def add_roles_async(self, id: str, roles: _list[str]) -> dict[str, Incomplete]: ... def list_permissions( self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True ) -> dict[str, Incomplete]: ... - async def list_permissions_async( - self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True - ) -> dict[str, Incomplete]: ... def remove_permissions(self, id: str, permissions: _list[str]): ... - async def remove_permissions_async(self, id: str, permissions: _list[str]): ... def add_permissions(self, id: str, permissions: _list[str]) -> dict[str, Incomplete]: ... - async def add_permissions_async(self, id: str, permissions: _list[str]) -> dict[str, Incomplete]: ... def delete_multifactor(self, id: str, provider: str): ... - async def delete_multifactor_async(self, id: str, provider: str): ... def delete_authenticators(self, id: str): ... - async def delete_authenticators_async(self, id: str): ... def unlink_user_account(self, id: str, provider: str, user_id: str): ... - async def unlink_user_account_async(self, id: str, provider: str, user_id: str): ... def link_user_account(self, user_id: str, body: dict[str, Incomplete]) -> _list[dict[str, Incomplete]]: ... - async def link_user_account_async(self, user_id: str, body: dict[str, Incomplete]) -> _list[dict[str, Incomplete]]: ... def regenerate_recovery_code(self, user_id: str) -> dict[str, Incomplete]: ... - async def regenerate_recovery_code_async(self, user_id: str) -> dict[str, Incomplete]: ... def get_guardian_enrollments(self, user_id: str) -> dict[str, Incomplete]: ... - async def get_guardian_enrollments_async(self, user_id: str) -> dict[str, Incomplete]: ... def get_log_events( self, user_id: str, page: int = 0, per_page: int = 50, sort: str | None = None, include_totals: bool = False ) -> dict[str, Incomplete]: ... - async def get_log_events_async( - self, user_id: str, page: int = 0, per_page: int = 50, sort: str | None = None, include_totals: bool = False - ) -> dict[str, Incomplete]: ... def invalidate_remembered_browsers(self, user_id: str) -> dict[str, Incomplete]: ... - async def invalidate_remembered_browsers_async(self, user_id: str) -> dict[str, Incomplete]: ... def get_authentication_methods(self, user_id: str) -> dict[str, Incomplete]: ... - async def get_authentication_methods_async(self, user_id: str) -> dict[str, Incomplete]: ... def get_authentication_method_by_id(self, user_id: str, authentication_method_id: str) -> dict[str, Incomplete]: ... - async def get_authentication_method_by_id_async( - self, user_id: str, authentication_method_id: str - ) -> dict[str, Incomplete]: ... def create_authentication_method(self, user_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def create_authentication_method_async(self, user_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def update_authentication_methods(self, user_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... - async def update_authentication_methods_async(self, user_id: str, body: dict[str, Incomplete]) -> dict[str, Incomplete]: ... def update_authentication_method_by_id( self, user_id: str, authentication_method_id: str, body: dict[str, Incomplete] ) -> dict[str, Incomplete]: ... - async def update_authentication_method_by_id_async( - self, user_id: str, authentication_method_id: str, body: dict[str, Incomplete] - ) -> dict[str, Incomplete]: ... def delete_authentication_methods(self, user_id: str): ... - async def delete_authentication_methods_async(self, user_id: str): ... def delete_authentication_method_by_id(self, user_id: str, authentication_method_id: str): ... - async def delete_authentication_method_by_id_async(self, user_id: str, authentication_method_id: str): ... def list_tokensets(self, id: str, page: int = 0, per_page: int = 25, include_totals: bool = True): ... def delete_tokenset_by_id(self, user_id: str, tokenset_id: str): ... diff --git a/stubs/auth0-python/auth0/management/users_by_email.pyi b/stubs/auth0-python/auth0/management/users_by_email.pyi index 177fe7b092bf..abed183b65df 100644 --- a/stubs/auth0-python/auth0/management/users_by_email.pyi +++ b/stubs/auth0-python/auth0/management/users_by_email.pyi @@ -19,6 +19,3 @@ class UsersByEmail: def search_users_by_email( self, email: str, fields: list[str] | None = None, include_fields: bool = True ) -> list[dict[str, Incomplete]]: ... - async def search_users_by_email_async( - self, email: str, fields: list[str] | None = None, include_fields: bool = True - ) -> list[dict[str, Incomplete]]: ... diff --git a/stubs/auth0-python/auth0/rest_async.pyi b/stubs/auth0-python/auth0/rest_async.pyi index fec31cd6c515..bd3d104f6fbd 100644 --- a/stubs/auth0-python/auth0/rest_async.pyi +++ b/stubs/auth0-python/auth0/rest_async.pyi @@ -16,7 +16,9 @@ class AsyncRestClient(RestClient): def set_session(self, session) -> None: ... async def get(self, url: str, params: dict[str, Incomplete] | None = None, headers: dict[str, str] | None = None): ... async def post(self, url: str, data: RequestData | None = None, headers: dict[str, str] | None = None): ... - async def file_post(self, *args, **kwargs): ... + async def file_post( # type: ignore[override] # Differs from supertype + self, url: str, data: dict[str, Incomplete], files: dict[str, Incomplete] + ): ... async def patch(self, url: str, data: RequestData | None = None): ... async def put(self, url: str, data: RequestData | None = None): ... async def delete(self, url: str, params: dict[str, Incomplete] | None = None, data: RequestData | None = None): ... From 7b5d92839d97764c327590ff67bb41ffd4eb8039 Mon Sep 17 00:00:00 2001 From: Sebastian Rittau Date: Tue, 15 Apr 2025 14:01:17 +0200 Subject: [PATCH 3/4] Update stubtest_allowlist.txt --- stubs/auth0-python/@tests/stubtest_allowlist.txt | 4 ---- 1 file changed, 4 deletions(-) diff --git a/stubs/auth0-python/@tests/stubtest_allowlist.txt b/stubs/auth0-python/@tests/stubtest_allowlist.txt index b5b468cd717d..a5b89e404e47 100644 --- a/stubs/auth0-python/@tests/stubtest_allowlist.txt +++ b/stubs/auth0-python/@tests/stubtest_allowlist.txt @@ -6,7 +6,3 @@ auth0\._asyncified.* # Inconsistently implemented, ommitted auth0\.management\.Auth0\..* - -# TYPE_CHECKING block in the source makes these show up wrong -auth0.management.auth0.RestClientOptions -auth0.rest.RequestsResponse From d77058130381016a937477153b0ee743e4e0347a Mon Sep 17 00:00:00 2001 From: Avasam Date: Tue, 15 Apr 2025 16:56:45 -0400 Subject: [PATCH 4/4] Update stubs/auth0-python/@tests/stubtest_allowlist.txt --- stubs/auth0-python/@tests/stubtest_allowlist.txt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/stubs/auth0-python/@tests/stubtest_allowlist.txt b/stubs/auth0-python/@tests/stubtest_allowlist.txt index c4da365d63d9..e687aa0bb419 100644 --- a/stubs/auth0-python/@tests/stubtest_allowlist.txt +++ b/stubs/auth0-python/@tests/stubtest_allowlist.txt @@ -4,7 +4,5 @@ auth0\.test.* # Fake private types that are autogenerated by calling auth0.asyncify.asyncify at runtime auth0\._asyncified.* -# Omit _async functions because they aren't present at runtime -# The way these stubs are currently implemented is that we pretend all classes have async methods -# Even though in reality, users need to call `auth0.asyncify.asyncify` to generate async subclasses +# Inconsistently implemented, omitted auth0\.management\.Auth0\..*