New apps Added

This commit is contained in:
2026-07-08 10:43:39 -04:00
parent 3b1f4bbd75
commit fefc2c8b5c
1114 changed files with 406637 additions and 154 deletions
@@ -0,0 +1,36 @@
"""Timer scheduler interface for anticipation triggering.
This interface abstracts timer scheduling operations, allowing the domain
to schedule anticipation triggers without depending on Home Assistant.
"""
from __future__ import annotations
from abc import ABC, abstractmethod
from datetime import datetime
from typing import Any, Callable, Coroutine
class ITimerScheduler(ABC):
"""Interface for scheduling timer-based callbacks.
This contract allows the application layer to schedule callbacks
at specific times without coupling to Home Assistant's event loop.
"""
@abstractmethod
def schedule_timer(
self,
target_time: datetime,
callback: Callable[[], Coroutine[Any, Any, Any]],
) -> Callable[[], None]:
"""Schedule a callback to execute at a specific time.
Args:
target_time: When to execute the callback
callback: Async function to execute at target_time
Returns:
Cancel function that can be called to cancel the timer
"""
pass