import type { AutoSyncMode, CleanupCandidate, CommandContext, NotifyLevel, PiSyncSuiteConfig, SyncPaths } from "../types.js"; export interface NativeSelectOption { label: string; value: string; description?: string; } export interface NativeCommandUi { notify(message: string, level?: NotifyLevel | string): void; setStatus?(key: string, value: string): void; input?(prompt: string, defaultValue?: string): Promise; select?(prompt: string, options: readonly NativeSelectOption[], defaultValue?: string): Promise; confirm?(prompt: string, defaultValue?: boolean): Promise; } export interface NativeCommandContext extends Omit { ui: NativeCommandUi; } export interface StatusDashboardState { configured: boolean; repoDir?: string; autoMode?: AutoSyncMode; configChanged?: boolean; chatExportEnabled?: boolean; pendingCleanupCount?: number; lastConfigSyncAt?: string; lastChatSyncAt?: string; message?: string; } export interface CommandHelpItem { command: string; summary: string; detail?: string; } export interface CleanupPreviewOptions { maxItems?: number; totalBytes?: number; title?: string; } export interface StoreThisTooOptions { prompt?: string; alreadyIncluded?: readonly string[]; allowManualPath?: boolean; } export declare const DEFAULT_COMMAND_HELP: readonly CommandHelpItem[]; export declare function renderStatusDashboard(state: StatusDashboardState): string; export declare function publishStatusDashboard(ctx: NativeCommandContext, state: StatusDashboardState): string; export declare function renderCommandHelp(commands?: readonly CommandHelpItem[]): string; export declare function showCommandHelp(ctx: NativeCommandContext, commands?: readonly CommandHelpItem[]): string; export declare function renderConfigSummary(config: PiSyncSuiteConfig, paths?: Partial): string; export declare function showConfigSummary(ctx: NativeCommandContext, config: PiSyncSuiteConfig, paths?: Partial): string; export declare function renderCleanupPreview(candidates: readonly CleanupCandidate[], options?: CleanupPreviewOptions): string; export declare function confirmCleanupPreview(ctx: NativeCommandContext, candidates: readonly CleanupCandidate[], options?: CleanupPreviewOptions): Promise; export declare function renderStoreThisTooChoices(choices: readonly string[], options?: StoreThisTooOptions): string; export declare function chooseStoreThisToo(ctx: NativeCommandContext, choices: readonly string[], options?: StoreThisTooOptions): Promise;