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;
};
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;
/**
 * 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