{ "module": "jwtlib.models.mongo", "content": { "path": "jwtlib.models.mongo", "docstring": "# Summary\n\nPersistence-layer user model for MongoDB.\n\nThis module defines the internal database representation of a user.\nIt is used exclusively by the repository and persistence layers and\nmust never be exposed directly to consumers.\n\nPublic-facing user data is provided via dedicated projection models.", "objects": { "BaseDocument": { "name": "BaseDocument", "kind": "alias", "path": "jwtlib.models.mongo.BaseDocument", "signature": "", "docstring": null }, "ActiveStateMixin": { "name": "ActiveStateMixin", "kind": "class", "path": "jwtlib.models.mongo.ActiveStateMixin", "signature": "", "docstring": "Mixin for entities with an active status flag.\n\nAttributes:\n is_active (bool):\n Indicates whether the account is active and allowed to\n authenticate.", "members": { "is_active": { "name": "is_active", "kind": "attribute", "path": "jwtlib.models.mongo.ActiveStateMixin.is_active", "signature": "", "docstring": null } } }, "IdentityMixin": { "name": "IdentityMixin", "kind": "class", "path": "jwtlib.models.mongo.IdentityMixin", "signature": "", "docstring": "Mixin for entities with a username and email.\n\nAttributes:\n username (str):\n Unique username used for authentication and display.\n email (Optional[EmailStr]):\n Primary email address associated with the account.", "members": { "username": { "name": "username", "kind": "attribute", "path": "jwtlib.models.mongo.IdentityMixin.username", "signature": "", "docstring": null }, "email": { "name": "email", "kind": "attribute", "path": "jwtlib.models.mongo.IdentityMixin.email", "signature": "", "docstring": null } } }, "User": { "name": "User", "kind": "class", "path": "jwtlib.models.mongo.User", "signature": "", "docstring": "Internal user persistence model.\n\nAttributes:\n hashed_password (str):\n Secure hash of the user's password.\n\nNotes:\n **Responsibilities:**\n\n - Represents a user record as stored in the database. Includes\n sensitive fields and is strictly confined to the persistence\n layer.\n\n **Guarantees:**\n\n - This model MUST NOT be returned from authentication APIs.\n Consumers should use `PublicUser` instead. Password verification\n is handled by the repository layer.", "members": { "hashed_password": { "name": "hashed_password", "kind": "attribute", "path": "jwtlib.models.mongo.User.hashed_password", "signature": null, "docstring": null } } } } } }