/** * useSchedule Hook * * Manages schedule state and provides schedule operations. * * @since v1.63.0 */ import { type ScheduleCheckRecord, type ScheduleCommand, type ScheduleConfig, type ScheduleState } from '../../core/schedule/index.js'; export interface UseScheduleResult { /** Current schedule configuration */ config: ScheduleConfig; /** Current schedule state */ state: ScheduleState; /** Check history */ history: ScheduleCheckRecord[]; /** Whether schedule is loading */ loading: boolean; /** Error message if any */ error: string | null; /** Whether a check is currently due */ isDue: boolean; /** Whether currently in quiet hours */ isQuietHours: boolean; /** Next scheduled check time */ nextCheck: Date | null; /** * Generated external-scheduler entries (cron/systemd/launchd/schtasks) * reflecting the current config. These are what actually run scheduled * updates — there is no in-app daemon (Phase 4.1). */ schedulerCommands: ScheduleCommand[]; /** Update schedule config (persists via ScheduleService) */ updateConfig: (updates: Partial) => void; /** Toggle schedule enabled */ toggleEnabled: () => void; /** Refresh state from disk */ refresh: () => Promise; /** Clear history */ clearHistory: () => Promise; } export declare function useSchedule(): UseScheduleResult; //# sourceMappingURL=useSchedule.d.ts.map