homeassistant-stubs 2025.2.0b7__py3-none-any.whl → 2025.2.0b9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- homeassistant-stubs/components/backup/__init__.pyi +3 -3
- homeassistant-stubs/components/backup/agent.pyi +1 -7
- homeassistant-stubs/components/backup/backup.pyi +2 -2
- homeassistant-stubs/components/backup/http.pyi +1 -0
- homeassistant-stubs/components/backup/manager.pyi +1 -4
- homeassistant-stubs/components/backup/models.pyi +9 -1
- homeassistant-stubs/components/backup/util.pyi +11 -2
- homeassistant-stubs/components/backup/websocket.pyi +1 -1
- homeassistant-stubs/components/cloud/http_api.pyi +7 -1
- homeassistant-stubs/components/homee/const.pyi +1 -1
- homeassistant-stubs/components/homewizard/config_flow.pyi +1 -1
- homeassistant-stubs/components/onedrive/__init__.pyi +5 -5
- homeassistant-stubs/components/onedrive/api.pyi +5 -11
- homeassistant-stubs/components/onedrive/backup.pyi +6 -8
- homeassistant-stubs/components/onedrive/config_flow.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/backup.pyi +3 -1
- homeassistant-stubs/components/system_health/__init__.pyi +3 -1
- {homeassistant_stubs-2025.2.0b7.dist-info → homeassistant_stubs-2025.2.0b9.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2025.2.0b7.dist-info → homeassistant_stubs-2025.2.0b9.dist-info}/RECORD +21 -21
- {homeassistant_stubs-2025.2.0b7.dist-info → homeassistant_stubs-2025.2.0b9.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.2.0b7.dist-info → homeassistant_stubs-2025.2.0b9.dist-info}/licenses/LICENSE +0 -0
@@ -1,10 +1,10 @@
|
|
1
1
|
from .agent import BackupAgent as BackupAgent, BackupAgentError as BackupAgentError, BackupAgentPlatformProtocol as BackupAgentPlatformProtocol, LocalBackupAgent as LocalBackupAgent
|
2
|
-
from .manager import BackupManager, BackupManagerError as BackupManagerError, BackupPlatformProtocol as BackupPlatformProtocol, BackupReaderWriter as BackupReaderWriter, BackupReaderWriterError as BackupReaderWriterError, CreateBackupEvent as CreateBackupEvent, IdleEvent as IdleEvent, IncorrectPasswordError as IncorrectPasswordError, ManagerBackup as ManagerBackup, NewBackup as NewBackup, RestoreBackupEvent as RestoreBackupEvent, RestoreBackupState as RestoreBackupState, WrittenBackup as WrittenBackup
|
3
|
-
from .models import AddonInfo as AddonInfo, AgentBackup as AgentBackup, Folder as Folder
|
2
|
+
from .manager import BackupManager, BackupManagerError as BackupManagerError, BackupPlatformProtocol as BackupPlatformProtocol, BackupReaderWriter as BackupReaderWriter, BackupReaderWriterError as BackupReaderWriterError, CreateBackupEvent as CreateBackupEvent, CreateBackupStage as CreateBackupStage, CreateBackupState as CreateBackupState, IdleEvent as IdleEvent, IncorrectPasswordError as IncorrectPasswordError, ManagerBackup as ManagerBackup, NewBackup as NewBackup, RestoreBackupEvent as RestoreBackupEvent, RestoreBackupState as RestoreBackupState, WrittenBackup as WrittenBackup
|
3
|
+
from .models import AddonInfo as AddonInfo, AgentBackup as AgentBackup, BackupNotFound as BackupNotFound, Folder as Folder
|
4
4
|
from .util import suggested_filename as suggested_filename, suggested_filename_from_name_date as suggested_filename_from_name_date
|
5
5
|
from homeassistant.core import HomeAssistant, callback
|
6
6
|
|
7
|
-
__all__ = ['AddonInfo', 'AgentBackup', 'BackupAgent', 'BackupAgentError', 'BackupAgentPlatformProtocol', 'BackupManagerError', 'BackupPlatformProtocol', 'BackupReaderWriter', 'BackupReaderWriterError', 'CreateBackupEvent', 'Folder', 'IdleEvent', 'IncorrectPasswordError', 'LocalBackupAgent', 'ManagerBackup', 'NewBackup', 'RestoreBackupEvent', 'RestoreBackupState', 'WrittenBackup', 'async_get_manager', 'suggested_filename', 'suggested_filename_from_name_date']
|
7
|
+
__all__ = ['AddonInfo', 'AgentBackup', 'BackupAgent', 'BackupAgentError', 'BackupAgentPlatformProtocol', 'BackupManagerError', 'BackupNotFound', 'BackupPlatformProtocol', 'BackupReaderWriter', 'BackupReaderWriterError', 'CreateBackupEvent', 'CreateBackupStage', 'CreateBackupState', 'Folder', 'IdleEvent', 'IncorrectPasswordError', 'LocalBackupAgent', 'ManagerBackup', 'NewBackup', 'RestoreBackupEvent', 'RestoreBackupState', 'WrittenBackup', 'async_get_manager', 'suggested_filename', 'suggested_filename_from_name_date']
|
8
8
|
|
9
9
|
@callback
|
10
10
|
def async_get_manager(hass: HomeAssistant) -> BackupManager: ...
|
@@ -1,21 +1,15 @@
|
|
1
1
|
import abc
|
2
|
-
from .models import AgentBackup as AgentBackup,
|
2
|
+
from .models import AgentBackup as AgentBackup, BackupAgentError as BackupAgentError
|
3
3
|
from collections.abc import AsyncIterator, Callable as Callable, Coroutine
|
4
4
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
5
5
|
from pathlib import Path
|
6
6
|
from propcache.api import cached_property
|
7
7
|
from typing import Any, Protocol
|
8
8
|
|
9
|
-
class BackupAgentError(BackupError):
|
10
|
-
error_code: str
|
11
|
-
|
12
9
|
class BackupAgentUnreachableError(BackupAgentError):
|
13
10
|
error_code: str
|
14
11
|
_message: str
|
15
12
|
|
16
|
-
class BackupNotFound(BackupAgentError):
|
17
|
-
error_code: str
|
18
|
-
|
19
13
|
class BackupAgent(abc.ABC, metaclass=abc.ABCMeta):
|
20
14
|
domain: str
|
21
15
|
name: str
|
@@ -1,6 +1,6 @@
|
|
1
|
-
from .agent import BackupAgent as BackupAgent,
|
1
|
+
from .agent import BackupAgent as BackupAgent, LocalBackupAgent as LocalBackupAgent
|
2
2
|
from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
|
3
|
-
from .models import AgentBackup as AgentBackup
|
3
|
+
from .models import AgentBackup as AgentBackup, BackupNotFound as BackupNotFound
|
4
4
|
from .util import read_backup as read_backup, suggested_filename as suggested_filename
|
5
5
|
from _typeshed import Incomplete
|
6
6
|
from collections.abc import AsyncIterator, Callable as Callable, Coroutine
|
@@ -2,6 +2,7 @@ from . import util as util
|
|
2
2
|
from .agent import BackupAgent as BackupAgent
|
3
3
|
from .const import DATA_MANAGER as DATA_MANAGER
|
4
4
|
from .manager import BackupManager as BackupManager
|
5
|
+
from .models import BackupNotFound as BackupNotFound
|
5
6
|
from aiohttp.web import FileResponse, Request as Request, Response, StreamResponse
|
6
7
|
from homeassistant.components.http import HomeAssistantView as HomeAssistantView, KEY_HASS as KEY_HASS, require_admin as require_admin
|
7
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
@@ -4,7 +4,7 @@ import asyncio
|
|
4
4
|
from .agent import BackupAgent as BackupAgent, BackupAgentError as BackupAgentError, BackupAgentPlatformProtocol as BackupAgentPlatformProtocol, LocalBackupAgent as LocalBackupAgent
|
5
5
|
from .config import BackupConfig as BackupConfig, delete_backups_exceeding_configured_count as delete_backups_exceeding_configured_count
|
6
6
|
from .const import BUF_SIZE as BUF_SIZE, DATA_MANAGER as DATA_MANAGER, DOMAIN as DOMAIN, EXCLUDE_DATABASE_FROM_BACKUP as EXCLUDE_DATABASE_FROM_BACKUP, EXCLUDE_FROM_BACKUP as EXCLUDE_FROM_BACKUP, LOGGER as LOGGER
|
7
|
-
from .models import AgentBackup as AgentBackup, BackupError as BackupError, BackupManagerError as BackupManagerError, BaseBackup as BaseBackup, Folder as Folder
|
7
|
+
from .models import AgentBackup as AgentBackup, BackupError as BackupError, BackupManagerError as BackupManagerError, BackupReaderWriterError as BackupReaderWriterError, BaseBackup as BaseBackup, Folder as Folder
|
8
8
|
from .store import BackupStore as BackupStore
|
9
9
|
from .util import AsyncIteratorReader as AsyncIteratorReader, DecryptedBackupStreamer as DecryptedBackupStreamer, EncryptedBackupStreamer as EncryptedBackupStreamer, make_backup_dir as make_backup_dir, read_backup as read_backup, validate_password as validate_password, validate_password_stream as validate_password_stream
|
10
10
|
from _typeshed import Incomplete
|
@@ -130,9 +130,6 @@ class BackupReaderWriter(abc.ABC, metaclass=abc.ABCMeta):
|
|
130
130
|
@abc.abstractmethod
|
131
131
|
async def async_resume_restore_progress_after_restart(self, *, on_progress: Callable[[RestoreBackupEvent | IdleEvent], None]) -> None: ...
|
132
132
|
|
133
|
-
class BackupReaderWriterError(BackupError):
|
134
|
-
error_code: str
|
135
|
-
|
136
133
|
class IncorrectPasswordError(BackupReaderWriterError):
|
137
134
|
error_code: str
|
138
135
|
_message: str
|
@@ -26,7 +26,6 @@ class BaseBackup:
|
|
26
26
|
homeassistant_included: bool
|
27
27
|
homeassistant_version: str | None
|
28
28
|
name: str
|
29
|
-
def as_frontend_json(self) -> dict: ...
|
30
29
|
|
31
30
|
@dataclass(frozen=True, kw_only=True)
|
32
31
|
class AgentBackup(BaseBackup):
|
@@ -39,5 +38,14 @@ class AgentBackup(BaseBackup):
|
|
39
38
|
class BackupError(HomeAssistantError):
|
40
39
|
error_code: str
|
41
40
|
|
41
|
+
class BackupAgentError(BackupError):
|
42
|
+
error_code: str
|
43
|
+
|
42
44
|
class BackupManagerError(BackupError):
|
43
45
|
error_code: str
|
46
|
+
|
47
|
+
class BackupReaderWriterError(BackupError):
|
48
|
+
error_code: str
|
49
|
+
|
50
|
+
class BackupNotFound(BackupAgentError, BackupManagerError):
|
51
|
+
error_code: str
|
@@ -1,16 +1,17 @@
|
|
1
1
|
import aiohttp
|
2
2
|
import asyncio
|
3
3
|
import tarfile
|
4
|
+
import threading
|
4
5
|
from .const import BUF_SIZE as BUF_SIZE, LOGGER as LOGGER
|
5
6
|
from .models import AddonInfo as AddonInfo, AgentBackup as AgentBackup, Folder as Folder
|
6
7
|
from _typeshed import Incomplete
|
7
8
|
from collections.abc import AsyncIterator, Callable as Callable, Coroutine
|
9
|
+
from concurrent.futures import Future
|
8
10
|
from dataclasses import dataclass
|
9
11
|
from homeassistant.backup_restore import password_to_key as password_to_key
|
10
12
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
11
13
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
12
14
|
from homeassistant.util.json import JsonObjectType as JsonObjectType, json_loads_object as json_loads_object
|
13
|
-
from homeassistant.util.thread import ThreadWithException as ThreadWithException
|
14
15
|
from pathlib import Path
|
15
16
|
from typing import Any, IO, Self
|
16
17
|
|
@@ -39,22 +40,28 @@ def suggested_filename(backup: AgentBackup) -> str: ...
|
|
39
40
|
def validate_password(path: Path, password: str | None) -> bool: ...
|
40
41
|
|
41
42
|
class AsyncIteratorReader:
|
43
|
+
_aborted: bool
|
42
44
|
_hass: Incomplete
|
43
45
|
_stream: Incomplete
|
44
46
|
_buffer: bytes | None
|
47
|
+
_next_future: Future[bytes | None] | None
|
45
48
|
_pos: int
|
46
49
|
def __init__(self, hass: HomeAssistant, stream: AsyncIterator[bytes]) -> None: ...
|
47
50
|
async def _next(self) -> bytes | None: ...
|
51
|
+
def abort(self) -> None: ...
|
48
52
|
def read(self, n: int = -1, /) -> bytes: ...
|
49
53
|
def close(self) -> None: ...
|
50
54
|
|
51
55
|
class AsyncIteratorWriter:
|
56
|
+
_aborted: bool
|
52
57
|
_hass: Incomplete
|
53
58
|
_pos: int
|
54
59
|
_queue: asyncio.Queue[bytes | None]
|
60
|
+
_write_future: Future[bytes | None] | None
|
55
61
|
def __init__(self, hass: HomeAssistant) -> None: ...
|
56
62
|
def __aiter__(self) -> Self: ...
|
57
63
|
async def __anext__(self) -> bytes: ...
|
64
|
+
def abort(self) -> None: ...
|
58
65
|
def tell(self) -> int: ...
|
59
66
|
def write(self, s: bytes, /) -> int: ...
|
60
67
|
|
@@ -68,7 +75,9 @@ def _encrypt_backup(input_tar: tarfile.TarFile, output_tar: tarfile.TarFile, pas
|
|
68
75
|
class _CipherWorkerStatus:
|
69
76
|
done: asyncio.Event
|
70
77
|
error: Exception | None = ...
|
71
|
-
|
78
|
+
reader: AsyncIteratorReader
|
79
|
+
thread: threading.Thread
|
80
|
+
writer: AsyncIteratorWriter
|
72
81
|
|
73
82
|
class _CipherBackupStreamer:
|
74
83
|
_cipher_func: Callable[[IO[bytes], IO[bytes], str | None, Callable[[Exception | None], None], int, list[bytes]], None]
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from .config import Day as Day, ScheduleRecurrence as ScheduleRecurrence
|
2
2
|
from .const import DATA_MANAGER as DATA_MANAGER, LOGGER as LOGGER
|
3
3
|
from .manager import DecryptOnDowloadNotSupported as DecryptOnDowloadNotSupported, IncorrectPasswordError as IncorrectPasswordError, ManagerStateEvent as ManagerStateEvent
|
4
|
-
from .models import Folder as Folder
|
4
|
+
from .models import BackupNotFound as BackupNotFound, Folder as Folder
|
5
5
|
from homeassistant.components import websocket_api as websocket_api
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
7
|
from typing import Any
|
@@ -5,7 +5,7 @@ from .google_config import CLOUD_GOOGLE as CLOUD_GOOGLE
|
|
5
5
|
from .repairs import async_manage_legacy_subscription_issue as async_manage_legacy_subscription_issue
|
6
6
|
from .subscription import async_subscription_info as async_subscription_info
|
7
7
|
from _typeshed import Incomplete
|
8
|
-
from aiohttp import web
|
8
|
+
from aiohttp import web
|
9
9
|
from collections.abc import Awaitable, Callable as Callable, Coroutine
|
10
10
|
from hass_nabucasa import Cloud as Cloud, auth
|
11
11
|
from homeassistant.components import websocket_api as websocket_api
|
@@ -76,6 +76,12 @@ class CloudForgotPasswordView(HomeAssistantView):
|
|
76
76
|
@_handle_cloud_errors
|
77
77
|
async def post(self, request: web.Request, data: dict[str, Any]) -> web.Response: ...
|
78
78
|
|
79
|
+
class DownloadSupportPackageView(HomeAssistantView):
|
80
|
+
url: str
|
81
|
+
name: str
|
82
|
+
def _generate_markdown(self, hass_info: dict[str, Any], domains_info: dict[str, dict[str, str]]) -> str: ...
|
83
|
+
async def get(self, request: web.Request) -> web.Response: ...
|
84
|
+
|
79
85
|
@websocket_api.require_admin
|
80
86
|
@websocket_api.async_response
|
81
87
|
async def websocket_cloud_remove_data(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
|
@@ -1,5 +1,5 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
-
from homeassistant.const import LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, REVOLUTIONS_PER_MINUTE as REVOLUTIONS_PER_MINUTE, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfPower as UnitOfPower, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume
|
2
|
+
from homeassistant.const import DEGREE as DEGREE, LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, REVOLUTIONS_PER_MINUTE as REVOLUTIONS_PER_MINUTE, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfPower as UnitOfPower, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume
|
3
3
|
|
4
4
|
DOMAIN: str
|
5
5
|
HOMEE_UNIT_TO_HA_UNIT: Incomplete
|
@@ -29,7 +29,7 @@ class HomeWizardConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
29
29
|
async def async_step_reauth_confirm_update_token(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
30
30
|
async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
31
31
|
|
32
|
-
async def async_try_connect(ip_address: str) -> Device: ...
|
32
|
+
async def async_try_connect(ip_address: str, token: str | None = None) -> Device: ...
|
33
33
|
async def async_request_token(ip_address: str) -> str | None: ...
|
34
34
|
|
35
35
|
class RecoverableError(HomeAssistantError):
|
@@ -1,17 +1,18 @@
|
|
1
1
|
from .api import OneDriveConfigEntryAccessTokenProvider as OneDriveConfigEntryAccessTokenProvider
|
2
|
-
from .const import DATA_BACKUP_AGENT_LISTENERS as DATA_BACKUP_AGENT_LISTENERS, DOMAIN as DOMAIN
|
2
|
+
from .const import DATA_BACKUP_AGENT_LISTENERS as DATA_BACKUP_AGENT_LISTENERS, DOMAIN as DOMAIN
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from dataclasses import dataclass
|
5
5
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
7
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
8
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
8
9
|
from homeassistant.helpers.config_entry_oauth2_flow import OAuth2Session as OAuth2Session, async_get_config_entry_implementation as async_get_config_entry_implementation
|
9
|
-
from
|
10
|
-
from msgraph.generated.drives.item.items.items_request_builder import ItemsRequestBuilder as ItemsRequestBuilder
|
10
|
+
from onedrive_personal_sdk import OneDriveClient
|
11
11
|
|
12
12
|
@dataclass
|
13
13
|
class OneDriveRuntimeData:
|
14
|
-
|
14
|
+
client: OneDriveClient
|
15
|
+
token_provider: OneDriveConfigEntryAccessTokenProvider
|
15
16
|
backup_folder_id: str
|
16
17
|
type OneDriveConfigEntry = ConfigEntry[OneDriveRuntimeData]
|
17
18
|
|
@@ -22,4 +23,3 @@ async def async_unload_entry(hass: HomeAssistant, entry: OneDriveConfigEntry) ->
|
|
22
23
|
def _async_notify_backup_listeners(hass: HomeAssistant) -> None: ...
|
23
24
|
@callback
|
24
25
|
def _async_notify_backup_listeners_soon(hass: HomeAssistant) -> None: ...
|
25
|
-
async def _async_create_folder_if_not_exists(items: ItemsRequestBuilder, base_folder_id: str, folder: str) -> str: ...
|
@@ -1,20 +1,14 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
2
|
from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN
|
3
3
|
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
4
|
-
from
|
5
|
-
from typing import Any
|
4
|
+
from onedrive_personal_sdk import TokenProvider
|
6
5
|
|
7
|
-
class
|
8
|
-
_allowed_hosts_validator: Incomplete
|
9
|
-
def __init__(self) -> None: ...
|
10
|
-
def get_allowed_hosts_validator(self) -> AllowedHostsValidator: ...
|
11
|
-
|
12
|
-
class OneDriveConfigFlowAccessTokenProvider(OneDriveAccessTokenProvider):
|
6
|
+
class OneDriveConfigFlowAccessTokenProvider(TokenProvider):
|
13
7
|
_token: Incomplete
|
14
8
|
def __init__(self, token: str) -> None: ...
|
15
|
-
|
9
|
+
def async_get_access_token(self) -> str: ...
|
16
10
|
|
17
|
-
class OneDriveConfigEntryAccessTokenProvider(
|
11
|
+
class OneDriveConfigEntryAccessTokenProvider(TokenProvider):
|
18
12
|
_oauth_session: Incomplete
|
19
13
|
def __init__(self, oauth_session: config_entry_oauth2_flow.OAuth2Session) -> None: ...
|
20
|
-
|
14
|
+
def async_get_access_token(self) -> str: ...
|
@@ -4,14 +4,13 @@ from _typeshed import Incomplete
|
|
4
4
|
from collections.abc import AsyncIterator, Callable as Callable, Coroutine
|
5
5
|
from homeassistant.components.backup import AgentBackup as AgentBackup, BackupAgent as BackupAgent, BackupAgentError as BackupAgentError, suggested_filename as suggested_filename
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
|
-
from homeassistant.helpers.
|
8
|
-
from
|
9
|
-
from msgraph.generated.models.drive_item import DriveItem
|
7
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
8
|
+
from onedrive_personal_sdk.models.items import File as File, Folder as Folder
|
10
9
|
from typing import Any, Concatenate
|
11
10
|
|
12
11
|
_LOGGER: Incomplete
|
13
12
|
UPLOAD_CHUNK_SIZE: Incomplete
|
14
|
-
|
13
|
+
TIMEOUT: Incomplete
|
15
14
|
|
16
15
|
async def async_get_backup_agents(hass: HomeAssistant) -> list[BackupAgent]: ...
|
17
16
|
@callback
|
@@ -22,7 +21,8 @@ class OneDriveBackupAgent(BackupAgent):
|
|
22
21
|
domain = DOMAIN
|
23
22
|
_hass: Incomplete
|
24
23
|
_entry: Incomplete
|
25
|
-
|
24
|
+
_client: Incomplete
|
25
|
+
_token_provider: Incomplete
|
26
26
|
_folder_id: Incomplete
|
27
27
|
name: Incomplete
|
28
28
|
unique_id: Incomplete
|
@@ -38,6 +38,4 @@ class OneDriveBackupAgent(BackupAgent):
|
|
38
38
|
@handle_backup_errors
|
39
39
|
async def async_get_backup(self, backup_id: str, **kwargs: Any) -> AgentBackup | None: ...
|
40
40
|
def _backup_from_description(self, description: str) -> AgentBackup: ...
|
41
|
-
async def _find_item_by_backup_id(self, backup_id: str) ->
|
42
|
-
def _get_backup_file_item(self, backup_id: str) -> DriveItemItemRequestBuilder: ...
|
43
|
-
async def _upload_file(self, upload_url: str, stream: AsyncIterator[bytes], total_size: int) -> None: ...
|
41
|
+
async def _find_item_by_backup_id(self, backup_id: str) -> File | Folder | None: ...
|
@@ -4,8 +4,8 @@ from .const import DOMAIN as DOMAIN, OAUTH_SCOPES as OAUTH_SCOPES
|
|
4
4
|
from collections.abc import Mapping
|
5
5
|
from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH
|
6
6
|
from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_TOKEN as CONF_TOKEN
|
7
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
7
8
|
from homeassistant.helpers.config_entry_oauth2_flow import AbstractOAuth2FlowHandler as AbstractOAuth2FlowHandler
|
8
|
-
from homeassistant.helpers.httpx_client import get_async_client as get_async_client
|
9
9
|
from typing import Any
|
10
10
|
|
11
11
|
class OneDriveConfigFlow(AbstractOAuth2FlowHandler, domain=DOMAIN):
|
@@ -2,7 +2,7 @@ from .const import CONF_BACKUP_PATH as CONF_BACKUP_PATH, CONF_BACKUP_SHARE as CO
|
|
2
2
|
from .models import SynologyDSMData as SynologyDSMData
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from collections.abc import AsyncIterator, Callable as Callable, Coroutine
|
5
|
-
from homeassistant.components.backup import AgentBackup as AgentBackup, BackupAgent as BackupAgent, BackupAgentError as BackupAgentError
|
5
|
+
from homeassistant.components.backup import AgentBackup as AgentBackup, BackupAgent as BackupAgent, BackupAgentError as BackupAgentError, suggested_filename as suggested_filename
|
6
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
7
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
8
8
|
from homeassistant.helpers.aiohttp_client import ChunkAsyncStreamIterator as ChunkAsyncStreamIterator
|
@@ -13,6 +13,7 @@ from typing import Any
|
|
13
13
|
|
14
14
|
LOGGER: Incomplete
|
15
15
|
|
16
|
+
def suggested_filenames(backup: AgentBackup) -> tuple[str, str]: ...
|
16
17
|
async def async_get_backup_agents(hass: HomeAssistant) -> list[BackupAgent]: ...
|
17
18
|
@callback
|
18
19
|
def async_register_backup_agents_listener(hass: HomeAssistant, *, listener: Callable[[], None], **kwargs: Any) -> Callable[[], None]: ...
|
@@ -26,6 +27,7 @@ class SynologyDSMBackupAgent(BackupAgent):
|
|
26
27
|
def __init__(self, hass: HomeAssistant, entry: ConfigEntry, unique_id: str) -> None: ...
|
27
28
|
@property
|
28
29
|
def _file_station(self) -> SynoFileStation: ...
|
30
|
+
async def _async_suggested_filenames(self, backup_id: str) -> tuple[str, str]: ...
|
29
31
|
async def async_download_backup(self, backup_id: str, **kwargs: Any) -> AsyncIterator[bytes]: ...
|
30
32
|
async def async_upload_backup(self, *, open_stream: Callable[[], Coroutine[Any, Any, AsyncIterator[bytes]]], backup: AgentBackup, **kwargs: Any) -> None: ...
|
31
33
|
async def async_delete_backup(self, backup_id: str, **kwargs: Any) -> None: ...
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import dataclasses
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from collections.abc import Awaitable, Callable as Callable
|
3
|
+
from collections.abc import AsyncGenerator, Awaitable, Callable as Callable
|
4
4
|
from homeassistant.components import websocket_api as websocket_api
|
5
5
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
6
6
|
from homeassistant.helpers import aiohttp_client as aiohttp_client, integration_platform as integration_platform
|
@@ -23,6 +23,8 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
|
23
23
|
@callback
|
24
24
|
def _register_system_health_platform(hass: HomeAssistant, integration_domain: str, platform: SystemHealthProtocol) -> None: ...
|
25
25
|
async def get_integration_info(hass: HomeAssistant, registration: SystemHealthRegistration) -> dict[str, Any]: ...
|
26
|
+
async def _registered_domain_data(hass: HomeAssistant) -> AsyncGenerator[tuple[str, dict[str, Any]]]: ...
|
27
|
+
async def get_info(hass: HomeAssistant) -> dict[str, dict[str, str]]: ...
|
26
28
|
@callback
|
27
29
|
def _format_value(val: Any) -> Any: ...
|
28
30
|
@websocket_api.async_response
|
{homeassistant_stubs-2025.2.0b7.dist-info → homeassistant_stubs-2025.2.0b9.dist-info}/METADATA
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: homeassistant-stubs
|
3
|
-
Version: 2025.2.
|
3
|
+
Version: 2025.2.0b9
|
4
4
|
Summary: PEP 484 typing stubs for Home Assistant Core
|
5
5
|
Project-URL: Homepage, https://github.com/KapJI/homeassistant-stubs
|
6
6
|
Project-URL: Bug Tracker, https://github.com/KapJI/homeassistant-stubs/issues
|
@@ -18,7 +18,7 @@ Classifier: Topic :: Home Automation
|
|
18
18
|
Classifier: Topic :: Software Development
|
19
19
|
Classifier: Typing :: Typed
|
20
20
|
Requires-Python: <3.14,>=3.13
|
21
|
-
Requires-Dist: homeassistant==2025.2.
|
21
|
+
Requires-Dist: homeassistant==2025.2.0b9
|
22
22
|
Description-Content-Type: text/markdown
|
23
23
|
|
24
24
|
[](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml)
|
{homeassistant_stubs-2025.2.0b7.dist-info → homeassistant_stubs-2025.2.0b9.dist-info}/RECORD
RENAMED
@@ -411,17 +411,17 @@ homeassistant-stubs/components/axis/hub/config.pyi,sha256=XdvjJsdRPVG1rx8AXEwsCG
|
|
411
411
|
homeassistant-stubs/components/axis/hub/entity_loader.pyi,sha256=XgpSlOIFJ1kZM4w9d53MqdtK3xgZxnlQRYOw0BIvIwE,971
|
412
412
|
homeassistant-stubs/components/axis/hub/event_source.pyi,sha256=2MWGaVgI5mHf_gEO1ds6qaZYNx5vD5xMINhcjbBJK1o,1182
|
413
413
|
homeassistant-stubs/components/axis/hub/hub.pyi,sha256=mulaCc4i9ZIxA8la7aIObtE4AJtjQBsKzr61mj_CMqU,1544
|
414
|
-
homeassistant-stubs/components/backup/__init__.pyi,sha256=
|
415
|
-
homeassistant-stubs/components/backup/agent.pyi,sha256=
|
416
|
-
homeassistant-stubs/components/backup/backup.pyi,sha256
|
414
|
+
homeassistant-stubs/components/backup/__init__.pyi,sha256=GTSbQNH6d3CGrwtoRytBpt0iyLWKvHDNhnWJtWHL_88,1678
|
415
|
+
homeassistant-stubs/components/backup/agent.pyi,sha256=GbbCb0uzuqZwpnfClAFgkf-QTtNtMTlBd7fHPpnms7A,1797
|
416
|
+
homeassistant-stubs/components/backup/backup.pyi,sha256=--FNKX88MzJ-_cfJsawQlTqbuHhxhJPLOoJbpvkKifE,1737
|
417
417
|
homeassistant-stubs/components/backup/config.pyi,sha256=OK8m9EmG0RnlevvU0ADEPE3HTWgbwDafzQQ5wvNBnuM,5418
|
418
418
|
homeassistant-stubs/components/backup/const.pyi,sha256=N3Hb5USpEK0tHJxtqdrgroGNitCuldDGckqVOVk2yX8,308
|
419
|
-
homeassistant-stubs/components/backup/http.pyi,sha256=
|
420
|
-
homeassistant-stubs/components/backup/manager.pyi,sha256=
|
421
|
-
homeassistant-stubs/components/backup/models.pyi,sha256=
|
419
|
+
homeassistant-stubs/components/backup/http.pyi,sha256=4BMeB5O1IBqpG5XY02XdfE5K1uFhB6Ob6Aa_YSMwbfY,1613
|
420
|
+
homeassistant-stubs/components/backup/manager.pyi,sha256=v_eSGe_JeZBtuB2wOOfDNw1mfM7xTPuI2cjs6SxLTnQ,13768
|
421
|
+
homeassistant-stubs/components/backup/models.pyi,sha256=mFvNpBmNQ3vOZ4ep4y-1TYDzll8QeQNCx3aYaX36lLg,1212
|
422
422
|
homeassistant-stubs/components/backup/store.pyi,sha256=CTgV9bZqdqSFYc6xrwrWizFVQYOaraG9ZHWAIMnBKi8,1174
|
423
|
-
homeassistant-stubs/components/backup/util.pyi,sha256=
|
424
|
-
homeassistant-stubs/components/backup/websocket.pyi,sha256=
|
423
|
+
homeassistant-stubs/components/backup/util.pyi,sha256=0_yUHocSWTk3jPM-GFI-OTikYMCvtiYQzM-9b-pfG3k,4400
|
424
|
+
homeassistant-stubs/components/backup/websocket.pyi,sha256=kSJcnu97O7HxDiyp6lWBinuhrV93nyGusELOcPeuJ1k,3045
|
425
425
|
homeassistant-stubs/components/baf/__init__.pyi,sha256=Ylh2xJjcBgDaMmOK4Jf2dc6oFmekClLSl0IgZljcRVQ,670
|
426
426
|
homeassistant-stubs/components/baf/binary_sensor.pyi,sha256=EqurXjaTV7WQ5Wnkco7bPu1jSm-ZY4N_mmARtoxhFNE,1165
|
427
427
|
homeassistant-stubs/components/baf/climate.pyi,sha256=rMtRwfJU5EgzEBlP5P5cdYwgmW3g3mu-8QO0ZNUJ90U,1276
|
@@ -616,7 +616,7 @@ homeassistant-stubs/components/cloud/client.pyi,sha256=rjc7j2n3jZMu_sPoxE81pOJzD
|
|
616
616
|
homeassistant-stubs/components/cloud/config_flow.pyi,sha256=vm2mv28c3EqTWnBZ44h9BsVeFA6HkwcGRrkH-BDe9dA,336
|
617
617
|
homeassistant-stubs/components/cloud/const.pyi,sha256=dMeRRe8RmVq2LDTeIoqZb4gKYseg4-FQPrR4bOITrww,1796
|
618
618
|
homeassistant-stubs/components/cloud/google_config.pyi,sha256=WPDIF_sx4OQkoqTkFWSVQdQ3ms4IQV3Zpii2IiKH9Ak,4345
|
619
|
-
homeassistant-stubs/components/cloud/http_api.pyi,sha256=
|
619
|
+
homeassistant-stubs/components/cloud/http_api.pyi,sha256=KmYBFuvZRB7yAPaSJOD0Gp_L6wyQUaPGlf-r6nFyIIg,8123
|
620
620
|
homeassistant-stubs/components/cloud/prefs.pyi,sha256=Dq9VToqLyzSIavEhJSmm-e8WlTYYl7bJhfAnvY2Zudw,5312
|
621
621
|
homeassistant-stubs/components/cloud/repairs.pyi,sha256=xm6_byWtgSq4WcJUdR_r2VV4Pb4lSr48-T2TslA_Zno,1378
|
622
622
|
homeassistant-stubs/components/cloud/stt.pyi,sha256=VtiHFCgdzaJJEDbc4mQkGP-A0CNZLk7Npi0ptCy9mAs,2062
|
@@ -1431,7 +1431,7 @@ homeassistant-stubs/components/homeassistant_yellow/const.pyi,sha256=7X2X_4ADaYb
|
|
1431
1431
|
homeassistant-stubs/components/homeassistant_yellow/hardware.pyi,sha256=F0vW0HKbmTiUbCAYKK8j0nzSgOxlqC7Ja6h7WlE9qiA,518
|
1432
1432
|
homeassistant-stubs/components/homee/__init__.pyi,sha256=rogh-qriORRnR58yqrv4p4o-qpjPsYgLnXm03NR5OGQ,708
|
1433
1433
|
homeassistant-stubs/components/homee/config_flow.pyi,sha256=nkoWO86BrlvdMuhjymK3prZnmYP6_QpsBtJAnt_s11Y,574
|
1434
|
-
homeassistant-stubs/components/homee/const.pyi,sha256=
|
1434
|
+
homeassistant-stubs/components/homee/const.pyi,sha256=5KEv844zroIKbs0-bQXUQHXPJIcja6klelp0WotpxGA,629
|
1435
1435
|
homeassistant-stubs/components/homee/cover.pyi,sha256=6jsaHsVw05Jf6ftcwRPXu92IurLAP1GeHlCxcaBpLWg,2261
|
1436
1436
|
homeassistant-stubs/components/homee/entity.pyi,sha256=qyDTCBsSS744ZwCWVPJuJNkA82YVFKFwM-xmPXwFmn8,1856
|
1437
1437
|
homeassistant-stubs/components/homee/helpers.pyi,sha256=UbrbjMWJKHCmDOqc_OJ3oUonExbkQ1UhYOdtmAO3pzM,160
|
@@ -1471,7 +1471,7 @@ homeassistant-stubs/components/homekit_controller/storage.pyi,sha256=WXANNCtoCm6
|
|
1471
1471
|
homeassistant-stubs/components/homekit_controller/utils.pyi,sha256=Lb054G3_bRhkHSHmz_fi-iLHD-2cht34BIBjrUROLXU,664
|
1472
1472
|
homeassistant-stubs/components/homewizard/__init__.pyi,sha256=nJ6ln9Ot3VCZSyQ9PMibVvO5Esi7e2xyPgO8gO5fdzM,1150
|
1473
1473
|
homeassistant-stubs/components/homewizard/button.pyi,sha256=aBZB727defdZWpkgcw-KdYMvJarx22HoUMbzn0YmusQ,1146
|
1474
|
-
homeassistant-stubs/components/homewizard/config_flow.pyi,sha256=
|
1474
|
+
homeassistant-stubs/components/homewizard/config_flow.pyi,sha256=_jKAvwHHh6lEMuMqF8efhlB53E2Ri_q6VYO2SYNFh50,2477
|
1475
1475
|
homeassistant-stubs/components/homewizard/const.pyi,sha256=yLgz59VQEwQfqMoTLZ1v8yzYp2a17D-sWSM9RWL9CSM,231
|
1476
1476
|
homeassistant-stubs/components/homewizard/coordinator.pyi,sha256=B8eiSlbhmpmsUTTT0qAljN55ASj0y8ar3EgH0kAh0BQ,940
|
1477
1477
|
homeassistant-stubs/components/homewizard/diagnostics.pyi,sha256=UCrL38haQiv_lC-qmJL2ZOl10iacZUFpP5er6Oecopc,477
|
@@ -2393,11 +2393,11 @@ homeassistant-stubs/components/oncue/const.pyi,sha256=4EdfjkoGOjFyxQQnpGXMvvi-E5
|
|
2393
2393
|
homeassistant-stubs/components/oncue/entity.pyi,sha256=TZJvQio7AWzk_dLywz3eSiHJJJQsMeVOqjA69LfZ5xc,1181
|
2394
2394
|
homeassistant-stubs/components/oncue/sensor.pyi,sha256=9gLVq1feftHBrtw02Be1vpbB6Gus0lAv2JBxniW-g_8,1612
|
2395
2395
|
homeassistant-stubs/components/oncue/types.pyi,sha256=KqG_536UpHzCPPb-qCPZA6bUmXVTiPqmIZKwz8NabMs,285
|
2396
|
-
homeassistant-stubs/components/onedrive/__init__.pyi,sha256=
|
2397
|
-
homeassistant-stubs/components/onedrive/api.pyi,sha256=
|
2396
|
+
homeassistant-stubs/components/onedrive/__init__.pyi,sha256=s7GqsIlxkutUnLcvxneg7agtA9vjsxx9SNp0IB2NQ7o,1427
|
2397
|
+
homeassistant-stubs/components/onedrive/api.pyi,sha256=jBHSZx_30q-CO1JcPAiL6fAROzAgrQpQG9NTrh4LfXE,653
|
2398
2398
|
homeassistant-stubs/components/onedrive/application_credentials.pyi,sha256=gC5LevrYVBmGRf6YJuwIR4rPyphIk0ro8IvjoPQVjiI,343
|
2399
|
-
homeassistant-stubs/components/onedrive/backup.pyi,sha256=
|
2400
|
-
homeassistant-stubs/components/onedrive/config_flow.pyi,sha256=
|
2399
|
+
homeassistant-stubs/components/onedrive/backup.pyi,sha256=XjQFK73v1QgmGdpF1jfuR8JMBuAhMm9kjuePEa39sIo,2370
|
2400
|
+
homeassistant-stubs/components/onedrive/config_flow.pyi,sha256=KWv8ztIW3WB5yByJ4SuPlGKkFqqHk5MhOn-nZADl_4g,1175
|
2401
2401
|
homeassistant-stubs/components/onedrive/const.pyi,sha256=evMrmc2zcW6JonKLyshgaphWE_14cDyc9PQphaM_jGY,336
|
2402
2402
|
homeassistant-stubs/components/onewire/__init__.pyi,sha256=wMDZKMHzaTbanOaeZ95Qi4krp8DV-HxY9toO5lC0PEo,878
|
2403
2403
|
homeassistant-stubs/components/onewire/binary_sensor.pyi,sha256=3f8tg405qoYG9GCwHm-1CsAQw4VdpfgZK4B3NCt7qeE,1942
|
@@ -3289,7 +3289,7 @@ homeassistant-stubs/components/switcher_kis/sensor.pyi,sha256=t4X85IOslTTPDgENiv
|
|
3289
3289
|
homeassistant-stubs/components/switcher_kis/switch.pyi,sha256=BwVvRHWVOAUsLg9IjBSsO2pj5xbPoiQA4Z_C9p7y30A,3638
|
3290
3290
|
homeassistant-stubs/components/switcher_kis/utils.pyi,sha256=QZXY_c_fOdFbh0YleuleZP4Pz1HH7rI1LzE52VLI1gA,534
|
3291
3291
|
homeassistant-stubs/components/synology_dsm/__init__.pyi,sha256=CUNt03jAwjqnQcFDIJaTouI7DrpRjiS6rlWCZUS5sb4,1972
|
3292
|
-
homeassistant-stubs/components/synology_dsm/backup.pyi,sha256=
|
3292
|
+
homeassistant-stubs/components/synology_dsm/backup.pyi,sha256=Tuz2awVnD-cFW9vR1ejb7aHD6Lfm-ebUyaknMG0Tf04,2369
|
3293
3293
|
homeassistant-stubs/components/synology_dsm/binary_sensor.pyi,sha256=3YyuXnYz_W_JB_kB16t4KazdGmXKngoUgmbqs80p4m4,2333
|
3294
3294
|
homeassistant-stubs/components/synology_dsm/button.pyi,sha256=JGWnJRnJO7Jy_HwEGA7GwyvEJiwAcpDQJqh8o1geYd8,1509
|
3295
3295
|
homeassistant-stubs/components/synology_dsm/camera.pyi,sha256=VfhIvOpet19evEXFoyB9o1CRkXXnwDB1Xk7Jr94v_Gc,2554
|
@@ -3305,7 +3305,7 @@ homeassistant-stubs/components/synology_dsm/sensor.pyi,sha256=BkDpmeOlKBGimcbXDI
|
|
3305
3305
|
homeassistant-stubs/components/synology_dsm/service.pyi,sha256=h0qhMzwZO2z_nq_I0T1WbE5ViCtRCZy0eN0SIa-x2TE,422
|
3306
3306
|
homeassistant-stubs/components/synology_dsm/switch.pyi,sha256=NODzRkhspxDeAAe_g36sbRwrl2RqHmr5KCZ-dnj0tJM,1861
|
3307
3307
|
homeassistant-stubs/components/synology_dsm/update.pyi,sha256=66Zp6UYN4Wahixw1KtOWPH8qVIy8ECZ8IW7ljZ9pnYU,1556
|
3308
|
-
homeassistant-stubs/components/system_health/__init__.pyi,sha256=
|
3308
|
+
homeassistant-stubs/components/system_health/__init__.pyi,sha256=k7rT00IU17tciY1-4SVGfTnIfqv8kpsB7D4MRDfLEpA,2128
|
3309
3309
|
homeassistant-stubs/components/system_log/__init__.pyi,sha256=pVTkbedAmQntjF0_Jo3cV4Wy5vCbJ7mRNJIZ8aZzCoI,2361
|
3310
3310
|
homeassistant-stubs/components/systemmonitor/__init__.pyi,sha256=0QTWNhx4XDnf6nhR86afbx0g9mzIbdnvMAm9xFWXp58,1042
|
3311
3311
|
homeassistant-stubs/components/systemmonitor/binary_sensor.pyi,sha256=h9SXOAb1XMtlgTlqPfappyuPzsYglqWxYPt0eQRnreE,2535
|
@@ -4019,7 +4019,7 @@ homeassistant-stubs/util/yaml/dumper.pyi,sha256=uQjW0KuME-gXVWgYJLNLoRDwDzVhhhgg
|
|
4019
4019
|
homeassistant-stubs/util/yaml/input.pyi,sha256=wuxpKYTXZL4MujFhqjHnRLv4VPYY6QPYd-Zji-Lz9Mo,383
|
4020
4020
|
homeassistant-stubs/util/yaml/loader.pyi,sha256=9MJS3AZNCemqAEU41KVJox1f16OceP64SNXE1-Z37kU,4117
|
4021
4021
|
homeassistant-stubs/util/yaml/objects.pyi,sha256=EmJiT8WnVUHa5dkbYzXtWzu5mhO1YG5bBnEAIF0XLAU,665
|
4022
|
-
homeassistant_stubs-2025.2.
|
4023
|
-
homeassistant_stubs-2025.2.
|
4024
|
-
homeassistant_stubs-2025.2.
|
4025
|
-
homeassistant_stubs-2025.2.
|
4022
|
+
homeassistant_stubs-2025.2.0b9.dist-info/METADATA,sha256=gQ8Z3i5LCOHSX8GwS77qNeQDqiMCJY8pWDE1I0-d-rs,2956
|
4023
|
+
homeassistant_stubs-2025.2.0b9.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
4024
|
+
homeassistant_stubs-2025.2.0b9.dist-info/licenses/LICENSE,sha256=_kHFjg-MAmJ-lXc7HiEjUzD3vZutVYKUVZZpAWcIuqo,1075
|
4025
|
+
homeassistant_stubs-2025.2.0b9.dist-info/RECORD,,
|
File without changes
|
File without changes
|