from typing import List, Optional, TypedDict class JwtAuthKey(TypedDict): key: str # See https://pyjwt.readthedocs.io/en/latest/algorithms.html for a list # of supported algorithms. algorithms: List[str] class SAMLIdPConfigDict(TypedDict, total=False): entity_id: str url: str slo_url: str attr_user_permanent_id: str attr_first_name: str attr_last_name: str attr_username: str attr_email: str attr_org_membership: str auto_signup: bool display_name: str display_icon: str limit_to_subdomains: List[str] extra_attrs: List[str] x509cert: str x509cert_path: str class OIDCIdPConfigDict(TypedDict, total=False): oidc_url: str display_name: str display_icon: Optional[str] client_id: str secret: Optional[str] auto_signup: bool class SCIMConfigDict(TypedDict): bearer_token: str scim_client_name: str name_formatted_included: bool