export declare const CHECKLIST_ITEM_PENDING: "pending";
export declare const CHECKLIST_ITEM_COMPLETED: "completed";
export declare const CHECKLIST_ITEM_IMPOSSIBLE: "impossible";
export type ChecklistItemStatus = typeof CHECKLIST_ITEM_PENDING | typeof CHECKLIST_ITEM_COMPLETED | typeof CHECKLIST_ITEM_IMPOSSIBLE;
export declare const TERMINAL_CHECKLIST_STATUSES: ReadonlySet<ChecklistItemStatus>;
export type ChecklistItemAddedBy = 'judge' | 'user';
export interface GoalChecklistItem {
    text: string;
    status: ChecklistItemStatus;
    addedBy: ChecklistItemAddedBy;
    addedAt: number;
    completedAt?: number;
    evidence?: string;
}
export declare function checklistCounts(items: GoalChecklistItem[]): {
    total: number;
    completed: number;
    impossible: number;
    pending: number;
};
export declare function allChecklistTerminal(items: GoalChecklistItem[]): boolean;
