import { Label } from '@doist/todoist-sdk'; import { Priority } from './priorities.js'; /** * Helper function to get date string in YYYY-MM-DD format */ export declare function getDateString(date?: Date): string; type TaskLike = { id?: string; content?: string; title?: string; dueDate?: string; priority?: Priority; projectName?: string; }; type ProjectLike = { id: string; name: string; color?: string; isFavorite?: boolean; isShared?: boolean; parentId?: string | null; inboxProject?: boolean; viewStyle?: string; isArchived?: boolean; }; type TaskOperationOptions = { context?: string; showDetails?: boolean; }; type BatchOperationParams = { action: string; success: number; total: number; successItems?: string[]; successLabel?: string; failures?: Array<{ item: string; error: string; code?: string; }>; }; /** * Creates concise, actionable summaries for task operations instead of raw JSON */ export declare function summarizeTaskOperation(action: string, tasks: TaskLike[], options?: TaskOperationOptions): string; /** * Creates batch operation summaries with success/failure breakdown */ export declare function summarizeBatch(params: BatchOperationParams): string; /** * Appends a per-item failure block to a success summary. Returns the summary unchanged * when there are no failures. */ export declare function appendFailureSummary(summary: string, failures: Array<{ item: string; error: string; }>): string; /** * Formats a single label into a readable preview line */ export declare function formatLabelPreview(label: Label): string; /** * Formats a single project-like object into a readable preview line */ export declare function formatProjectPreview(project: ProjectLike): string; /** * Creates preview lines for task lists */ export declare function previewTasks(tasks: TaskLike[], limit?: number): string; type SummarizeListParams = { subject: string; count: number; limit?: number; nextCursor?: string; filterHints?: string[]; previewLines?: string; zeroReasonHints?: string[]; nextSteps?: string[]; }; /** * Creates list summaries with counts, filters, and guidance */ export declare function summarizeList({ subject, count, limit, nextCursor, filterHints, previewLines, zeroReasonHints, nextSteps, }: SummarizeListParams): string; /** * Formats next steps array into a consistent "Possible suggested next step(s):" section * If nextCursor is provided, adds cursor instruction to the steps */ export declare function formatNextSteps(nextSteps: string[], nextCursor?: string): string; /** * Helper to generate contextual next steps based on task operations */ export declare function generateTaskNextSteps(operation: 'added' | 'updated' | 'listed' | 'completed' | 'organized', tasks: TaskLike[], context?: { hasToday?: boolean; hasOverdue?: boolean; hasHighPriority?: boolean; projectName?: string; count?: number; timeOfDay?: 'morning' | 'afternoon' | 'evening'; isEmptyResult?: boolean; }): string[]; export {}; //# sourceMappingURL=response-builders.d.ts.map