from .const import SCOPE_VALUES as SCOPE_VALUES
from _typeshed import Incomplete
from homeassistant.components.application_credentials import AuthImplementation as AuthImplementation, AuthorizationServer as AuthorizationServer, ClientCredential as ClientCredential
from homeassistant.core import HomeAssistant as HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
from typing import Any

class ElectricKiwiLocalOAuth2Implementation(AuthImplementation):
    _name: Incomplete
    def __init__(self, hass: HomeAssistant, domain: str, client_credential: ClientCredential, authorization_server: AuthorizationServer) -> None: ...
    @property
    def extra_authorize_data(self) -> dict[str, Any]: ...
    async def async_resolve_external_data(self, external_data: Any) -> dict: ...
    async def _async_refresh_token(self, token: dict) -> dict: ...
    async def _token_request(self, data: dict) -> dict: ...
