from ..config.app_config import AppConfig as AppConfig
from ..engine.casbin_engine import PermissionEngine as PermissionEngine
from ..exception.service_exception import PermissionException as PermissionException
from ..logger.logging_ import logging as logging
from _typeshed import Incomplete

class PermissionService:
    engine: Incomplete
    def __init__(self) -> None: ...
    async def initialize(self, permission_rules) -> None: ...
    async def has_role(self, user, role): ...
    def has_permission(self, user, obj, act): ...
    async def add_permission(self, *, role, obj, act) -> None: ...
    async def add_role_for_user(self, *, user, role) -> None: ...
    async def add_role_for_role(self, *, parent_role, child_role) -> None: ...
    async def save_policy(self) -> None: ...
